diff options
-rw-r--r-- | web/app.js | 31 | ||||
-rw-r--r-- | web/app/store/Languages.js | 2 | ||||
-rw-r--r-- | web/debug.html | 1 | ||||
-rw-r--r-- | web/locale.js | 44 | ||||
-rw-r--r-- | web/release.html | 3 |
5 files changed, 48 insertions, 33 deletions
diff --git a/web/app.js b/web/app.js index c1fe8b0a6..597cce492 100644 --- a/web/app.js +++ b/web/app.js @@ -14,37 +14,6 @@ * limitations under the License. */ -Ext.Loader.setConfig({ - disableCaching: false -}); - -{ - var availableLanguages = { - 'de': 'Deutsch', - 'en': 'English', - 'es': 'Español', - 'fr': 'Français', - 'pl': 'Polski', - 'pt': 'Português', - 'ru': 'Русский', - 'th': 'ไทย', - 'zh': '中文' - }; - - var language = Ext.Object.fromQueryString(window.location.search.substring(1)).locale; - if (language === undefined) { - language = window.navigator.userLanguage || window.navigator.language; - language = language.substr(0, 2); - } - - if (!(language in availableLanguages)) { - language = 'en'; // default - } - - Ext.Loader.loadScript('/l10n/' + language + '.js'); - Ext.Loader.loadScript('http://cdn.sencha.com/ext/gpl/5.1.0/build/packages/ext-locale/build/ext-locale-' + language + '.js'); -} - Ext.application({ name: 'Traccar', extend: 'Traccar.Application' diff --git a/web/app/store/Languages.js b/web/app/store/Languages.js index 8d1a98552..97a581805 100644 --- a/web/app/store/Languages.js +++ b/web/app/store/Languages.js @@ -23,7 +23,7 @@ Ext.define('Traccar.store.Languages', { if (availableLanguages.hasOwnProperty(code)) { data.push({ 'code': code, - 'name': availableLanguages[code] + 'name': availableLanguages[code].name }); } } diff --git a/web/debug.html b/web/debug.html index 2f3aaf7b8..94e3a29ba 100644 --- a/web/debug.html +++ b/web/debug.html @@ -9,6 +9,7 @@ <script src="//cdnjs.cloudflare.com/ajax/libs/extjs/6.0.0/ext-all-debug.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/extjs/6.0.0/classic/theme-neptune/theme-neptune.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/ol3/3.7.0/ol-debug.js"></script> +<script src="locale.js"></script> <script src="app.js"></script> </head> <body> diff --git a/web/locale.js b/web/locale.js new file mode 100644 index 000000000..55ff461fb --- /dev/null +++ b/web/locale.js @@ -0,0 +1,44 @@ +/* + * Copyright 2015 Anton Tananaev (anton.tananaev@gmail.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +Ext.Loader.setConfig({ + disableCaching: false +}); + +var availableLanguages = { + 'de': { name: 'Deutsch', code: 'de' }, + 'en': { name: 'English', code: 'en' }, + 'es': { name: 'Español', code: 'es' }, + 'fr': { name: 'Français', code: 'fr' }, + 'pl': { name: 'Polski', code: 'pl' }, + 'pt': { name: 'Português', code: 'pt' }, + 'ru': { name: 'Русский', code: 'ru' }, + 'th': { name: 'ไทย', code: 'th' }, + 'zh': { name: '中文', code: 'zh_CN' } +}; + +var language = Ext.Object.fromQueryString(window.location.search.substring(1)).locale; +if (language === undefined) { + language = window.navigator.userLanguage || window.navigator.language; + language = language.substr(0, 2); +} + +if (!(language in availableLanguages)) { + language = 'en'; // default +} + +Ext.Loader.loadScript('/l10n/' + language + '.js'); +Ext.Loader.loadScript('http://cdnjs.cloudflare.com/ajax/libs/extjs/6.0.0/classic/locale/locale-' + availableLanguages[language].code + '.js'); diff --git a/web/release.html b/web/release.html index 29e74433f..520cad4a4 100644 --- a/web/release.html +++ b/web/release.html @@ -9,7 +9,8 @@ <script src="//cdnjs.cloudflare.com/ajax/libs/extjs/6.0.0/ext-all.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/extjs/6.0.0/classic/theme-neptune/theme-neptune.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/ol3/3.7.0/ol.min.js"></script> -<script src="app.js"></script> +<script src="locale.js"></script> +<script type="text/javascript">Ext.Loader.loadScript('app.min.js');</script> </head> <body> <div style="position: fixed; bottom: 10px; right: 15px; font-size: x-small;">Powered by <a href="https://www.traccar.org/">Traccar GPS Tracking System</a></div> |