mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
FEATURE: Localization fallbacks (server-side)
The FallbackLocaleList object tells I18n::Backend::Fallbacks what order the languages should be attempted in. Because of the translate_accelerator patch, the SiteSetting.default_locale is *not* guaranteed to be fully loaded after the server starts, so a call to ensure_loaded! is added after the locale is set for the current user. The declarations of config.i18n.fallbacks = true in the environment files were actually garbage, because the I18n.default_locale was SiteSetting.default_locale, so there was nothing to fall back to. *derp*
This commit is contained in:
@@ -59,6 +59,11 @@ module I18n
|
||||
end
|
||||
end
|
||||
|
||||
def ensure_loaded!(locale)
|
||||
@loaded_locales ||= []
|
||||
load_locale locale unless @loaded_locales.include?(locale)
|
||||
end
|
||||
|
||||
def translate(key, *args)
|
||||
load_locale(config.locale) unless @loaded_locales.include?(config.locale)
|
||||
return translate_no_cache(key, *args) if args.length > 0
|
||||
|
||||
Reference in New Issue
Block a user