Fix language detection for country codes (#1426)

* Fix language detection for country codes

navigator.languages = ["de-DE"],  navigator.languages = "de-DE" was detected as en before

* Use for each

* Use for of
This commit is contained in:
c727 2018-07-09 14:43:36 +02:00 committed by GitHub
parent e51177b3c2
commit b89ad9b217
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -36,24 +36,24 @@ export function getActiveTranslation() {
if (translation) { if (translation) {
return translation; return translation;
} }
} else if (navigator.languages) { }
for (let i = 0; i < navigator.languages.length; i++) { if (navigator.languages) {
translation = languageGetTranslation(navigator.languages[i]); for (const locale of navigator.languages) {
translation = languageGetTranslation(locale);
if (translation) { if (translation) {
return translation; return translation;
} }
} }
} else { }
translation = languageGetTranslation(navigator.language); translation = languageGetTranslation(navigator.language);
if (translation) {
return translation;
}
if (navigator.language.includes('-')) {
translation = languageGetTranslation(navigator.language.split('-')[0]);
if (translation) { if (translation) {
return translation; return translation;
} }
if (navigator.language.includes('-')) {
translation = languageGetTranslation(navigator.language.split('-')[0]);
if (translation) {
return translation;
}
}
} }
// Final fallback // Final fallback