Commit a71a97c843d6f444c5fc1773bf5544766173fa3d
1 parent
c0bf3e72
UI: Improve client language detection.
Showing
1 changed file
with
10 additions
and
9 deletions
... | ... | @@ -47,8 +47,6 @@ export default function AppConfig($provide, |
47 | 47 | storeProvider.setCaching(false); |
48 | 48 | |
49 | 49 | $translateProvider.useSanitizeValueStrategy(null); |
50 | - $translateProvider.preferredLanguage('en_US'); | |
51 | - $translateProvider.useLocalStorage(); | |
52 | 50 | $translateProvider.useMissingTranslationHandler('tbMissingTranslationHandler'); |
53 | 51 | $translateProvider.addInterpolation('$translateMessageFormatInterpolation'); |
54 | 52 | |
... | ... | @@ -57,8 +55,12 @@ export default function AppConfig($provide, |
57 | 55 | addLocaleRussian(locales); |
58 | 56 | addLocaleSpanish(locales); |
59 | 57 | |
60 | - var $window = angular.injector(['ng']).get('$window'); | |
61 | - var lang = $window.navigator.language || $window.navigator.userLanguage; | |
58 | + for (var langKey in locales) { | |
59 | + var translationTable = locales[langKey]; | |
60 | + $translateProvider.translations(langKey, translationTable); | |
61 | + } | |
62 | + | |
63 | + var lang = $translateProvider.resolveClientLocale(); | |
62 | 64 | if (lang) { |
63 | 65 | lang = lang.toLowerCase(); |
64 | 66 | if (lang.startsWith('ko')) { |
... | ... | @@ -69,12 +71,11 @@ export default function AppConfig($provide, |
69 | 71 | $translateProvider.preferredLanguage('es_ES'); |
70 | 72 | } else if (lang.startsWith('ru')) { |
71 | 73 | $translateProvider.preferredLanguage('ru_RU'); |
74 | + } else { | |
75 | + $translateProvider.preferredLanguage('en_US'); | |
72 | 76 | } |
73 | - } | |
74 | - | |
75 | - for (var langKey in locales) { | |
76 | - var translationTable = locales[langKey]; | |
77 | - $translateProvider.translations(langKey, translationTable); | |
77 | + } else { | |
78 | + $translateProvider.preferredLanguage('en_US'); | |
78 | 79 | } |
79 | 80 | |
80 | 81 | $httpProvider.interceptors.push('globalInterceptor'); | ... | ... |