diff options
Diffstat (limited to 'webapp/action_creators')
-rw-r--r-- | webapp/action_creators/global_actions.jsx | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/webapp/action_creators/global_actions.jsx b/webapp/action_creators/global_actions.jsx index 6bb0c1732..1c2e5ed36 100644 --- a/webapp/action_creators/global_actions.jsx +++ b/webapp/action_creators/global_actions.jsx @@ -390,8 +390,10 @@ export function newLocalizationSelected(locale) { translations: en }); } else { + const localeInfo = I18n.getLanguageInfo(locale) || I18n.getLanguageInfo(global.window.mm_config.DefaultClientLocale); + Client.getTranslations( - I18n.getLanguageInfo(locale).url, + localeInfo.url, (data) => { AppDispatcher.handleServerAction({ type: ActionTypes.RECEIVED_LOCALE, @@ -406,10 +408,11 @@ export function newLocalizationSelected(locale) { } } -export function loadBrowserLocale() { - let locale = (navigator.languages && navigator.languages.length > 0 ? navigator.languages[0] : - (navigator.language || navigator.userLanguage)).split('-')[0]; - if (!I18n.getLanguages()[locale]) { +export function loadDefaultLocale() { + const defaultLocale = global.window.mm_config.DefaultClientLocale; + let locale = global.window.mm_user ? global.window.mm_user.locale || defaultLocale : defaultLocale; + + if (!I18n.getLanguageInfo(locale)) { locale = 'en'; } return newLocalizationSelected(locale); |