This commit is contained in:
2025-11-19 01:52:14 +01:00
parent f35f4a5dd6
commit 8c0532eaf1
2 changed files with 48 additions and 20 deletions

View File

@@ -517,6 +517,34 @@
}
};
const langMeta = {
de: { label: 'DE', flag: '🇩🇪' },
en: { label: 'EN', flag: '🇬🇧' }, // oder 🇺🇸 Geschmackssache
it: { label: 'IT', flag: '🇮🇹' },
fr: { label: 'FR', flag: '🇫🇷' }
};
function updateLangCurrentLabel(lang) {
const meta = langMeta[lang] || { label: lang.toUpperCase(), flag: '' };
const labelNode =
document.getElementById('langCurrentLabel') ||
document.getElementById('langCurrent');
if (!labelNode) return;
if (meta.flag) {
labelNode.innerHTML =
'<span class="mr-1.5">' +
meta.flag +
'</span><span>' +
meta.label +
'</span>';
} else {
labelNode.textContent = meta.label;
}
}
function getInitialLang() {
const urlParams = new URLSearchParams(window.location.search);
const paramLang = urlParams.get('lang');
@@ -563,11 +591,8 @@
localStorage.setItem('usbcheck_lang', lang);
applyTranslations(lang);
// Button-Label im Header aktualisieren
const currentLabel = document.getElementById('langCurrentLabel') || document.getElementById('langCurrent');
if (currentLabel) {
currentLabel.textContent = lang.toUpperCase();
}
// Button-Label im Header (Flagge + Kürzel) aktualisieren
updateLangCurrentLabel(lang);
// Optional: URL-Parameter aktualisieren (ohne Reload)
const url = new URL(window.location.href);
@@ -575,6 +600,7 @@
window.history.replaceState({}, '', url.toString());
}
document.addEventListener('DOMContentLoaded', function () {
const initialLang = getInitialLang();
applyTranslations(initialLang);
@@ -584,12 +610,9 @@
const langCurrentLabel = document.getElementById('langCurrentLabel');
const langMenu = document.getElementById('langMenu');
// aktuelles Label für den Header-Button setzen
if (langCurrentLabel) {
langCurrentLabel.textContent = initialLang.toUpperCase();
} else if (langCurrent) {
langCurrent.textContent = initialLang.toUpperCase();
}
// aktuelles Label (Flagge + Kürzel) für den Header-Button setzen
updateLangCurrentLabel(initialLang);
// Dropdown-Logik für Sprachauswahl
if (langCurrent && langMenu) {