summaryrefslogtreecommitdiffstats
path: root/webapp/actions/global_actions.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'webapp/actions/global_actions.jsx')
-rw-r--r--webapp/actions/global_actions.jsx17
1 files changed, 10 insertions, 7 deletions
diff --git a/webapp/actions/global_actions.jsx b/webapp/actions/global_actions.jsx
index 0b264a9b3..91b51a9c2 100644
--- a/webapp/actions/global_actions.jsx
+++ b/webapp/actions/global_actions.jsx
@@ -392,10 +392,8 @@ export function newLocalizationSelected(locale) {
translations: en
});
} else {
- const localeInfo = I18n.getLanguageInfo(locale) || I18n.getLanguageInfo(global.window.mm_config.DefaultClientLocale);
-
Client.getTranslations(
- localeInfo.url,
+ I18n.getLanguageInfo(locale).url,
(data, res) => {
let translations = data;
if (!data && res.text) {
@@ -414,11 +412,16 @@ export function newLocalizationSelected(locale) {
}
}
-export function loadDefaultLocale() {
- const defaultLocale = global.window.mm_config.DefaultClientLocale;
- let locale = global.window.mm_user ? global.window.mm_user.locale || defaultLocale : defaultLocale;
+export function loadBrowserLocale() {
+ let locale = (navigator.languages && navigator.languages.length > 0 ? navigator.languages[0] :
+ (navigator.language || navigator.userLanguage)).split('-')[0];
+
+ const user = UserStore.getCurrentUser();
+ if (user) {
+ locale = user.locale || locale;
+ }
- if (!I18n.getLanguageInfo(locale)) {
+ if (!I18n.getLanguages()[locale]) {
locale = 'en';
}
return newLocalizationSelected(locale);