about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--app/helpers/settings_helper.rb13
-rw-r--r--app/views/settings/preferences/show.html.haml2
2 files changed, 14 insertions, 1 deletions
diff --git a/app/helpers/settings_helper.rb b/app/helpers/settings_helper.rb
new file mode 100644
index 000000000..66ecc56c6
--- /dev/null
+++ b/app/helpers/settings_helper.rb
@@ -0,0 +1,13 @@
+# frozen_string_literal: true
+
+module SettingsHelper
+  HUMAN_LOCALES = {
+    en: 'English',
+    de: 'Deutsch',
+    es: 'Español',
+  }.freeze
+
+  def human_locale(locale)
+    HUMAN_LOCALES[locale]
+  end
+end
diff --git a/app/views/settings/preferences/show.html.haml b/app/views/settings/preferences/show.html.haml
index 60608136f..693702ff7 100644
--- a/app/views/settings/preferences/show.html.haml
+++ b/app/views/settings/preferences/show.html.haml
@@ -4,7 +4,7 @@
 = simple_form_for current_user, url: settings_preferences_path, html: { method: :put } do |f|
   = render 'shared/error_messages', object: current_user
 
-  = f.input :locale, collection: I18n.available_locales, wrapper: :with_label, include_blank: false
+  = f.input :locale, collection: I18n.available_locales, wrapper: :with_label, include_blank: false, label_method: lambda { |locale| human_locale(locale) }
 
   = f.simple_fields_for :notification_emails, current_user.settings(:notification_emails) do |ff|
     = ff.input :follow, as: :boolean, wrapper: :with_label