diff --git a/public/assets/js/lang.js b/public/assets/js/lang.js index 858e63b..cf32d60 100644 --- a/public/assets/js/lang.js +++ b/public/assets/js/lang.js @@ -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 = + '' + + meta.flag + + '' + + meta.label + + ''; + } 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) { diff --git a/public/partials/header.php b/public/partials/header.php index 9a75f81..9e1f75c 100644 --- a/public/partials/header.php +++ b/public/partials/header.php @@ -42,26 +42,31 @@