From bb9e33d9934c5830b40d4dbbd0405d273c54e9ea Mon Sep 17 00:00:00 2001 From: Ahmad Farhat Date: Thu, 3 Jun 2021 17:48:19 -0400 Subject: [PATCH] Upgraded i18n mapping gem (#2756) * Upgraded i18n mapping gem * Rubocop --- Gemfile | 2 +- Gemfile.lock | 4 ++-- app/helpers/users_helper.rb | 8 ++++++-- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/Gemfile b/Gemfile index 7bef8d15..10ea0e46 100644 --- a/Gemfile +++ b/Gemfile @@ -19,7 +19,7 @@ gem 'coveralls', '~> 0.8.23', require: false gem 'font-awesome-sass', '~> 5.9.0' gem 'google-cloud-storage', '~> 1.30.0' gem 'http_accept_language', '~> 2.1.1' -gem 'i18n-language-mapping', '~> 0.1.1' +gem 'i18n-language-mapping', '~> 0.1.3.1' gem 'jbuilder', '~> 2.11.2' gem 'jquery-rails', '~> 4.4.0' gem 'jquery-ui-rails', '~> 6.0.1' diff --git a/Gemfile.lock b/Gemfile.lock index a77a0bfb..364ada3b 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -186,7 +186,7 @@ GEM httpclient (2.8.3) i18n (1.8.10) concurrent-ruby (~> 1.0) - i18n-language-mapping (0.1.2) + i18n-language-mapping (0.1.3.1) jbuilder (2.11.2) activesupport (>= 5.0.0) jmespath (1.4.0) @@ -479,7 +479,7 @@ DEPENDENCIES google-cloud-storage (~> 1.30.0) hiredis (~> 0.6.3) http_accept_language (~> 2.1.1) - i18n-language-mapping (~> 0.1.1) + i18n-language-mapping (~> 0.1.3.1) jbuilder (~> 2.11.2) jquery-rails (~> 4.4.0) jquery-ui-rails (~> 6.0.1) diff --git a/app/helpers/users_helper.rb b/app/helpers/users_helper.rb index 7cc01984..30b1640e 100644 --- a/app/helpers/users_helper.rb +++ b/app/helpers/users_helper.rb @@ -44,12 +44,16 @@ module UsersHelper # Returns language selection options for user edit def language_options locales = I18n.available_locales - language_opts = [["<<<< #{t('language_default')} >>>>", "default"]] + languages = [["<<<< #{t('language_default')} >>>>", "default"]] + language_opts = [] + locales.each do |locale| language_mapping = I18n::Language::Mapping.language_mapping_list[locale.to_s.gsub("_", "-")] language_opts.push([language_mapping["nativeName"], locale.to_s]) end - language_opts.sort + language_opts.sort_by!(&:last) + + languages + language_opts end # Returns a list of roles that the user can have