openstreetmap-website/config/initializers/i18n.rb
Tom Hughes 10033fded1 Switch to i18n version 0.5.0 but keep old style interpolation
It's impossible to stop rails 2 loading a newer i18n gem if it is
installed, so go with the flow and use the latest one but override
the interpolation pattern for now.
2011-04-06 20:39:20 +01:00

47 lines
1.3 KiB
Ruby

module I18n
original_verbosity = $VERBOSE
$VERBOSE = nil
INTERPOLATION_PATTERN = /\{\{(\w+)\}\}/
$VERBOSE = original_verbosity
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)