1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

Make sure fallback culture is always available

Fixes #134
This commit is contained in:
Vasily 2019-02-13 18:34:30 +03:00 committed by Bond-009
parent fccf42274a
commit c6116c2766

View file

@ -1,5 +1,6 @@
define(['connectionManager', 'userSettings', 'events'], function (connectionManager, userSettings, events) {
'use strict';
var fallbackCulture = 'en-us';
var allTranslations = {};
var currentCulture;
@ -29,7 +30,7 @@ define(['connectionManager', 'userSettings', 'events'], function (connectionMana
return navigator.languages[0];
}
return 'en-us';
return fallbackCulture;
}
function updateCurrentCulture() {
@ -62,6 +63,11 @@ define(['connectionManager', 'userSettings', 'events'], function (connectionMana
for (var i in allTranslations) {
ensureTranslation(allTranslations[i], culture);
}
if (culture !== fallbackCulture) {
for (var i in allTranslations) {
ensureTranslation(allTranslations[i], fallbackCulture);
}
}
}
function ensureTranslation(translationInfo, culture) {
@ -138,7 +144,7 @@ define(['connectionManager', 'userSettings', 'events'], function (connectionMana
if (!filtered.length) {
filtered = translations.filter(function (t) {
return normalizeLocaleName(t.lang) === 'en-us';
return normalizeLocaleName(t.lang) === fallbackCulture;
});
}
@ -186,7 +192,7 @@ define(['connectionManager', 'userSettings', 'events'], function (connectionMana
function translateKeyFromModule(key, module) {
var dictionary = getDictionary(module, getCurrentLocale());
if (!dictionary || !dictionary[key]) {
dictionary = getDictionary(module, 'en-us');
dictionary = getDictionary(module, fallbackCulture);
}
if (!dictionary) {
return key;