Module: Undercarriage::Controllers::LocaleConcern
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/undercarriage/controllers/locale_concern.rb
Overview
Identify locale for translations
Identify locale based on HTTP_ACCEPT_LANGUAGE. Browser preferred language is passed with the request as
en-US, en;q=0.9 where en-US (English with US dialect) is the preferred language with en (generic English) as
an acceptable language.
When preferred language cannot be identified or no translation is available, fall back to I18n.default_locale
(typically en).
Instance Method Summary collapse
-
#html_dir ⇒ String
Text direction.
-
#html_lang ⇒ String
Lang.
Instance Method Details
#html_dir ⇒ String
Text direction
Helper for Views to return text direction based on locale. Display text left-to-right for all languages but a
few languages which should display as right-to-left. Returns rtl for the following languages:
- Arabic
- Aramaic
- Azeri
- Divehi
- Hebrew
- Persian/Farsi
- Urdu
62 63 64 65 66 |
# File 'lib/undercarriage/controllers/locale_concern.rb', line 62 def html_dir rtl_languages = %w[am ar az dv fa he ur] html_lang.start_with?(*rtl_languages) ? "rtl" : "ltr" end |
#html_lang ⇒ String
Lang
Helper for Views to return the identified language.
39 40 41 |
# File 'lib/undercarriage/controllers/locale_concern.rb', line 39 def html_lang I18n.locale.to_s end |