This commit is contained in:
2020-02-05 19:43:41 +00:00
parent 04699a3e19
commit 9430d06fd1
6 changed files with 89 additions and 5 deletions

View File

@@ -785,7 +785,8 @@ export default function initialize() {
shortDate: "YYYY-MM-DD",
shortTime: "hh:mm:ss A",
shortDateAndTime: "YYYY-MM-DD hh:mm:ss A",
timeZoneOffset: res.data.timeZoneOffset
timeZoneOffset: res.data.timeZoneOffset,
tag: res.data.tag || "en-US"
});
resolve();

View File

@@ -190,5 +190,55 @@ export default {
ret = ret.replace(foundMatch, newValue);
}
return ret;
},
////////////////////////////////////////////////////////
// attempt to determine user's preferred first browser language setting
// https://stackoverflow.com/a/46514247/8939
//
//
getFirstBrowserLanguage() {
var nav = window.navigator,
browserLanguagePropertyKeys = [
"language",
"browserLanguage",
"systemLanguage",
"userLanguage"
],
i,
language,
len,
shortLanguage = null;
// support for HTML 5.1 "navigator.languages"
if (Array.isArray(nav.languages)) {
for (i = 0; i < nav.languages.length; i++) {
language = nav.languages[i];
len = language.length;
if (!shortLanguage && len) {
shortLanguage = language;
}
if (language && len > 2) {
return language;
}
}
}
// support for other well known properties in browsers
for (i = 0; i < browserLanguagePropertyKeys.length; i++) {
language = nav[browserLanguagePropertyKeys[i]];
//skip this loop iteration if property is null/undefined. IE11 fix.
if (language == null) {
continue;
}
len = language.length;
if (!shortLanguage && len) {
shortLanguage = language;
}
if (language && len > 2) {
return language;
}
}
return shortLanguage;
}
};