thingsboard-developers

Changes

Details

diff --git a/ui/src/app/app.config.js b/ui/src/app/app.config.js
index 102c41a..b520c1a 100644
--- a/ui/src/app/app.config.js
+++ b/ui/src/app/app.config.js
@@ -47,8 +47,6 @@ export default function AppConfig($provide,
     storeProvider.setCaching(false);
 
     $translateProvider.useSanitizeValueStrategy(null);
-    $translateProvider.preferredLanguage('en_US');
-    $translateProvider.useLocalStorage();
     $translateProvider.useMissingTranslationHandler('tbMissingTranslationHandler');
     $translateProvider.addInterpolation('$translateMessageFormatInterpolation');
 
@@ -57,8 +55,12 @@ export default function AppConfig($provide,
     addLocaleRussian(locales);
     addLocaleSpanish(locales);
 
-    var $window = angular.injector(['ng']).get('$window');
-    var lang = $window.navigator.language || $window.navigator.userLanguage;
+    for (var langKey in locales) {
+        var translationTable = locales[langKey];
+        $translateProvider.translations(langKey, translationTable);
+    }
+
+    var lang = $translateProvider.resolveClientLocale();
     if (lang) {
         lang = lang.toLowerCase();
         if (lang.startsWith('ko')) {
@@ -69,12 +71,11 @@ export default function AppConfig($provide,
             $translateProvider.preferredLanguage('es_ES');
         } else if (lang.startsWith('ru')) {
             $translateProvider.preferredLanguage('ru_RU');
+        } else {
+            $translateProvider.preferredLanguage('en_US');
         }
-    }
-
-    for (var langKey in locales) {
-        var translationTable = locales[langKey];
-        $translateProvider.translations(langKey, translationTable);
+    } else {
+        $translateProvider.preferredLanguage('en_US');
     }
 
     $httpProvider.interceptors.push('globalInterceptor');