Monkey patch rails to work around stupid I18n bug where it looks up
time.formats in the locale and then looks for the requested format in that hash, thereby not doing fallback correctly. To make things worse it then defaults to just using the requested format name as the format...
This commit is contained in:
parent
32326df602
commit
07172166da
1 changed files with 23 additions and 0 deletions
|
@ -2,3 +2,26 @@ require 'globalize/i18n/missing_translations_log_handler'
|
|||
|
||||
I18n.missing_translations_logger = Logger.new("#{RAILS_ROOT}/log/missing_translations.log")
|
||||
I18n.exception_handler = :missing_translations_log_handler
|
||||
|
||||
module I18n
|
||||
module Backend
|
||||
class Simple
|
||||
protected
|
||||
alias_method :old_init_translations, :init_translations
|
||||
|
||||
def init_translations
|
||||
old_init_translations
|
||||
|
||||
friendly = translate('en', 'time.formats.friendly')
|
||||
|
||||
available_locales.each do |locale|
|
||||
time_formats = I18n.t('time.formats', :locale => locale)
|
||||
|
||||
unless time_formats.has_key?(:friendly)
|
||||
store_translations(locale, :time => { :formats => { :friendly => friendly } })
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue