64 lines
2.8 KiB
JavaScript
64 lines
2.8 KiB
JavaScript
/* Internationalization dictionary
|
|
*
|
|
* Each key maps to an array of translations indexed by language code.
|
|
* To add a new language, add an entry with the language code as the key
|
|
* and translations for each existing key.
|
|
*
|
|
* Example:
|
|
* TRANSLATIONS.title = { de: 'Titel', en: 'Title' };
|
|
*
|
|
* The current language is taken from window.CONFIG.language.
|
|
*/
|
|
|
|
window.TRANSLATIONS = {
|
|
'Aufgang': { de: 'Aufgang', en: 'Sunrise' },
|
|
'Untergang': { de: 'Untergang', en: 'Sunset' },
|
|
'Zenit Sonne': { de: 'Zenit Sonne', en: 'Sun Zenith' },
|
|
'Mondphase': { de: 'Mondphase', en: 'Moon Phase' },
|
|
'Mond auf': { de: 'Mond auf', en: 'Moonrise' },
|
|
'Mond unter': { de: 'Mond unter', en: 'Moonset' },
|
|
|
|
'heute': { de: 'heute', en: 'today' },
|
|
'morgen': { de: 'morgen', en: 'tomorrow' },
|
|
|
|
'Neumond': { de: 'Neumond', en: 'New Moon' },
|
|
'Zunehm. Sichel': { de: 'Zunehm. Sichel', en: 'Waxing Crescent' },
|
|
'Erstes Viertel': { de: 'Erstes Viertel', en: 'First Quarter' },
|
|
'Zunehm. Gibbous': { de: 'Zunehm. Gibbous', en: 'Waxing Gibbous' },
|
|
'Vollmond': { de: 'Vollmond', en: 'Full Moon' },
|
|
'Abnehm. Gibbous': { de: 'Abnehm. Gibbous', en: 'Waning Gibbous' },
|
|
'Letztes Viertel': { de: 'Letztes Viertel', en: 'Last Quarter' },
|
|
'Abnehm. Sichel': { de: 'Abnehm. Sichel', en: 'Waning Crescent' },
|
|
|
|
'Mo.': { de: 'Mo.', en: 'Mo.' },
|
|
'Di.': { de: 'Di.', en: 'Tu.' },
|
|
'Mi.': { de: 'Mi.', en: 'We.' },
|
|
'Do.': { de: 'Do.', en: 'Th.' },
|
|
'Fr.': { de: 'Fr.', en: 'Fr.' },
|
|
'Sa.': { de: 'Sa.', en: 'Sa.' },
|
|
'So.': { de: 'So.', en: 'Su.' },
|
|
|
|
'Feuchte': { de: 'Feuchte', en: 'Humidity' },
|
|
'Wind': { de: 'Wind', en: 'Wind' },
|
|
|
|
// 2-letter time-of-day labels
|
|
'Morgen': { de: 'Mo', en: 'Mo' },
|
|
'Mittag': { de: 'Mi', en: 'No' },
|
|
'Abend': { de: 'Ab', en: 'Ev' },
|
|
'Nacht': { de: 'Na', en: 'Ni' }
|
|
};
|
|
|
|
window.getTranslation = function(key) {
|
|
var lang = (window.CONFIG && window.CONFIG.language) || 'en';
|
|
var entry = window.TRANSLATIONS[key];
|
|
if (!entry) return key;
|
|
// Fallback chain: requested language → 'en' → first available → key
|
|
if (entry[lang]) return entry[lang];
|
|
if (entry.en) return entry.en;
|
|
for (var k in entry) {
|
|
if (entry.hasOwnProperty(k) && entry[k]) return entry[k];
|
|
}
|
|
return key;
|
|
};
|
|
|
|
window.t = window.getTranslation; |