From eb5089cffdf6a3ed5e29fcce1b525b223ce5fe05 Mon Sep 17 00:00:00 2001 From: Rafael Guterres Date: Wed, 21 Dec 2016 01:23:01 -0200 Subject: Added support to array "window.navigator.languages" to use rank of browser languages. Definition of "locale.language" changed to make more tests. --- web/load.js | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'web') diff --git a/web/load.js b/web/load.js index 0fe7ce5..03b8543 100644 --- a/web/load.js +++ b/web/load.js @@ -77,13 +77,19 @@ localeParameter = window.location.search.match(/locale=([^&#]+)/); locale.language = localeParameter && localeParameter[1]; - if (locale.language === undefined) { - locale.language = window.navigator.userLanguage || window.navigator.language; - locale.language = locale.language.substr(0, 2); - } - if (!(locale.language in locale.languages)) { - locale.language = 'en'; // default + var languages = window.navigator.languages !== undefined ? window.navigator.languages.slice() : []; + var language = window.navigator.userLanguage || window.navigator.language; + languages.push(language); + languages.push(language.substr(0,2)); + languages.push("en"); //default + for (var i = 0; i < languages.length; i ++) { + var language = languages[i].replace("-", "_"); + if (language in locale.languages) { + locale.language = language; + break; + } + } } window.addEventListener('load', function (event) { -- cgit v1.2.3