diff options
-rw-r--r-- | config/initializers/fast_gettext.rb | 5 | ||||
-rw-r--r-- | lib/alaveteli_localization.rb | 8 | ||||
-rw-r--r-- | spec/integration/localisation_spec.rb | 11 | ||||
-rw-r--r-- | spec/spec_helper.rb | 3 |
4 files changed, 14 insertions, 13 deletions
diff --git a/config/initializers/fast_gettext.rb b/config/initializers/fast_gettext.rb index 752448a41..b00524993 100644 --- a/config/initializers/fast_gettext.rb +++ b/config/initializers/fast_gettext.rb @@ -1,6 +1,5 @@ -FastGettext.add_text_domain 'app', :path => File.join(Rails.root, 'locale'), :type => :po -FastGettext.default_text_domain = 'app' +AlaveteliLocalization.set_default_text_domain('app', File.join(Rails.root, 'locale')) I18n::Backend::Simple.send(:include, I18n::Backend::Fallbacks) -RoutingFilter::Locale.include_default_locale = AlaveteliConfiguration::include_default_locale_in_urls +AlaveteliLocalization.set_default_locale_urls(AlaveteliConfiguration::include_default_locale_in_urls) diff --git a/lib/alaveteli_localization.rb b/lib/alaveteli_localization.rb index 25de002c4..6daab124a 100644 --- a/lib/alaveteli_localization.rb +++ b/lib/alaveteli_localization.rb @@ -9,5 +9,13 @@ class AlaveteliLocalization I18n.default_locale = default_locale end + def set_default_text_domain(name, path) + FastGettext.add_text_domain name, :path => path, :type => :po + FastGettext.default_text_domain = name + end + + def set_default_locale_urls(include_default_locale_in_urls) + RoutingFilter::Locale.include_default_locale = include_default_locale_in_urls + end end end diff --git a/spec/integration/localisation_spec.rb b/spec/integration/localisation_spec.rb index 64d39f0af..4f6b61ae1 100644 --- a/spec/integration/localisation_spec.rb +++ b/spec/integration/localisation_spec.rb @@ -53,15 +53,10 @@ describe "when generating urls" do @old_include_default_locale_in_urls = AlaveteliConfiguration::include_default_locale_in_urls end - def set_default_locale_in_urls(value) - AlaveteliConfiguration.stub!(:include_default_locale_in_urls).and_return(value) - load Rails.root.join("config/initializers/fast_gettext.rb") - end - describe 'when the config value INCLUDE_DEFAULT_LOCALE_IN_URLS is false' do before do - set_default_locale_in_urls(false) + AlaveteliLocalization.set_default_locale_urls(false) end it 'should generate URLs without a locale prepended' do @@ -78,13 +73,13 @@ describe "when generating urls" do it 'should generate URLs with a locale prepended when the config value INCLUDE_DEFAULT_LOCALE_IN_URLS is true' do - set_default_locale_in_urls(true) + AlaveteliLocalization.set_default_locale_urls(true) get '/' response.body.should match /#{@default_lang_home_link}/ end after do - set_default_locale_in_urls(@old_include_default_locale_in_urls) + AlaveteliLocalization.set_default_locale_urls(@old_include_default_locale_in_urls) end end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 7e3df4f39..86ca5150a 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -31,8 +31,7 @@ Spork.prefork do Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f} # Use test-specific translations - FastGettext.add_text_domain 'app', :path => File.join(File.dirname(__FILE__), 'fixtures', 'locale'), :type => :po - FastGettext.default_text_domain = 'app' + AlaveteliLocalization.set_default_text_domain('app', File.join(File.dirname(__FILE__), 'fixtures', 'locale')) RSpec.configure do |config| # ## Mock Framework |