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...
27 lines
768 B
Ruby
27 lines
768 B
Ruby
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
|