Mercurial > gemma
changeset 1526:4f62e2610740
Translation: improve language detection code and correct language name
* Improve the language detection code to use major variant if not not precise match
* correct the typing fehler for one language name
author | Fadi Abbud <fadi.abbud@intevation.de> |
---|---|
date | Fri, 07 Dec 2018 11:20:44 +0100 |
parents | a0a16577261a |
children | 3cc3b7390805 |
files | client/src/main.js |
diffstat | 1 files changed, 9 insertions(+), 34 deletions(-) [+] |
line wrap: on
line diff
--- a/client/src/main.js Fri Dec 07 10:08:31 2018 +0100 +++ b/client/src/main.js Fri Dec 07 11:20:44 2018 +0100 @@ -135,50 +135,25 @@ let browserLanguage = locale2; -// planned also SK, HU, HR, RS, BiH, BG, RO, UA +// planned also RS, BiH, UA const supportedLanguages = { en_GB: "British English", de_AT: "Deutsch", sk_SK: "slovenčina", - hu_HU: "Magyat", + hu_HU: "Magyar", hr_HR: "Hrvatska", bg_BG: "български", ro_RO: "Română" }; -if ( - browserLanguage === "de-DE" || - browserLanguage === "de-LI" || - browserLanguage === "de-LU" || - browserLanguage === "de-CH" || - browserLanguage === "de" -) { - browserLanguage = "de-AT"; // map german,liechtenstein,luxenburg and switzerland to austrian variant for now -} - -if (browserLanguage === "sk") { - browserLanguage = "sk_SK"; -} +const isAvailableLanguage = Object.keys(supportedLanguages).filter(language => { + return browserLanguage === language + ? language + : browserLanguage.substr(0, 2) === language.substr(0, 2); +}); -if (browserLanguage === "hu") { - browserLanguage = "hu_HU"; -} - -if (browserLanguage === "hr") { - browserLanguage = "hr_HR"; -} - -if (browserLanguage === "bg") { - browserLanguage = "bg_BG"; -} - -if (browserLanguage === "ro") { - browserLanguage = "ro_RO"; -} - -const language = browserLanguage.replace("-", "_"); -const isLanguageAvailable = supportedLanguages[language]; -let defaultLanguage = isLanguageAvailable ? language : "en_GB"; +let defaultLanguage = + isAvailableLanguage.length > 0 ? isAvailableLanguage[0] : "en_GB"; Vue.use(GetTextPlugin, { translations: translations,