openstreetmap-website/config/initializers/i18n.rb
Tom Hughes 2cac555019 Force an I18n reload to work around ordering problem
Unfortunately the rails-i18n-updater plugin adds the rails translations
to the load path after rails has already loaded the translations, so we
have to force a reload to get the translated versions.
2011-11-14 09:42:57 +00:00

46 lines
1.2 KiB
Ruby

module I18n
module Backend
class Simple
module Implementation
protected
alias_method :old_init_translations, :init_translations
def init_translations
old_init_translations
store_translations(:nb, translations[:no])
translations[:no] = translations[:nb]
friendly = translate('en', 'time.formats.friendly')
available_locales.each do |locale|
unless lookup(locale, 'time.formats.friendly')
store_translations(locale, :time => { :formats => { :friendly => friendly } })
end
end
@skip_syntax_deprecation = true
end
end
end
module PluralizationFallback
def pluralize(locale, entry, count)
super
rescue InvalidPluralizationData => ex
raise ex unless ex.entry.has_key?(:other)
ex.entry[:other]
end
end
end
end
I18n::Backend::Simple.send(:include, I18n::Backend::Pluralization)
I18n::Backend::Simple.send(:include, I18n::Backend::PluralizationFallback)
I18n.load_path << "#{Rails.root}/config/pluralizers.rb"
I18n::Backend::Simple.send(:include, I18n::Backend::Fallbacks)
Rails.configuration.after_initialize do
I18n.reload!
end