Merge pull request #6461 from betagouv/main

2021-09-08-02
This commit is contained in:
Paul Chavard 2021-09-08 14:25:57 +02:00 committed by GitHub
commit b5e13f454c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 18 additions and 2 deletions

View file

@ -2,7 +2,7 @@ class API::PaysController < ApplicationController
before_action :authenticate_logged_user!
def index
countries = I18nData.countries('FR').zip(I18nData.countries(I18n.locale))
countries = CountriesService.get('FR').zip(CountriesService.get(I18n.locale))
countries = countries.map do |(code, value_fr), (localized_code, localized_value)|
if code != localized_code
raise "Countries lists mismatch. It means i18n_data gem has some internal inconsistencies."

View file

@ -20,7 +20,7 @@
class Champs::PaysChamp < Champs::TextChamp
def localized_value
if external_id
I18nData.countries(I18n.locale)[external_id].to_s
CountriesService.get(I18n.locale)[external_id].to_s
else
value.present? ? value.to_s : ''
end

View file

@ -0,0 +1,16 @@
class CountriesService
def self.get(locale)
I18nData.countries(locale).merge(get_localized_additional_countries(locale))
end
def self.get_localized_additional_countries(locale)
additional_countries[locale.to_s.upcase] || {}
end
def self.additional_countries
{
'FR' => { 'XK' => 'Kosovo' },
'EN' => { 'XK' => 'Kosovo' }
}
end
end