diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2011-01-10 18:25:12 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2011-01-10 18:25:12 +0000 |
commit | 88727bf070ed11b73c75a2510143c15c685254a0 (patch) | |
tree | 157c808c98e09c9eb27a9d1e9198c5fe65c9952f | |
parent | bebde1596cf51be7064f9d4a569f54b0cdc1c7cf (diff) | |
download | redmine-88727bf070ed11b73c75a2510143c15c685254a0.tar.gz redmine-88727bf070ed11b73c75a2510143c15c685254a0.zip |
Adds fallback to 'en' locale for untranslated strings (#5518).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4679 e93f8b46-1217-0410-a6f0-8f06a7374b81
-rw-r--r-- | config/initializers/30-redmine.rb | 2 | ||||
-rw-r--r-- | test/unit/lib/redmine/i18n_test.rb | 14 |
2 files changed, 16 insertions, 0 deletions
diff --git a/config/initializers/30-redmine.rb b/config/initializers/30-redmine.rb index cd5b20b70..708dcd655 100644 --- a/config/initializers/30-redmine.rb +++ b/config/initializers/30-redmine.rb @@ -1,3 +1,5 @@ I18n.default_locale = 'en' +# Adds fallback to default locale for untranslated strings +I18n::Backend::Simple.send(:include, I18n::Backend::Fallbacks) require 'redmine' diff --git a/test/unit/lib/redmine/i18n_test.rb b/test/unit/lib/redmine/i18n_test.rb index 80e0b509f..5bb69c9a5 100644 --- a/test/unit/lib/redmine/i18n_test.rb +++ b/test/unit/lib/redmine/i18n_test.rb @@ -109,4 +109,18 @@ class Redmine::I18nTest < ActiveSupport::TestCase to_test.each {|lang, expected| assert_equal expected, find_language(lang)} end + + def test_fallback + ::I18n.backend.store_translations(:en, {:untranslated => "Untranslated string"}) + ::I18n.locale = 'en' + assert_equal "Untranslated string", l(:untranslated) + ::I18n.locale = 'fr' + assert_equal "Untranslated string", l(:untranslated) + + ::I18n.backend.store_translations(:fr, {:untranslated => "Pas de traduction"}) + ::I18n.locale = 'en' + assert_equal "Untranslated string", l(:untranslated) + ::I18n.locale = 'fr' + assert_equal "Pas de traduction", l(:untranslated) + end end |