This commit is contained in:
2025-11-26 21:59:49 +01:00
parent 1cf4553163
commit a6bd3361fb
6 changed files with 15 additions and 19 deletions

View File

@@ -115,17 +115,21 @@ if (empty($availableLangs)) {
} }
// Falls Sprache ungültig oder nicht in available: // Falls Sprache ungültig oder nicht in available:
// 1) Wenn 'en' existiert → nimm 'en' // 1) Wenn 'de' existiert → nimm 'de'
// 2) Sonst: erste verfügbare Sprache // 2) sonst, wenn 'en' existiert → nimm 'en'
// 3) sonst: erste verfügbare Sprache
if (!$lang || !isset($availableLangs[$lang])) { if (!$lang || !isset($availableLangs[$lang])) {
if (isset($availableLangs['de'])) { if (isset($availableLangs['de'])) {
$lang = 'de'; $lang = 'de';
} elseif (isset($availableLangs['en'])) {
$lang = 'en';
} else { } else {
$keys = array_keys($availableLangs); $keys = array_keys($availableLangs);
$lang = $keys[0] ?? 'de'; $lang = $keys[0] ?? 'en';
} }
} }
// ----------------------------------------------------------- // -----------------------------------------------------------
// 3) Aktive Sprachdatei laden // 3) Aktive Sprachdatei laden
// ----------------------------------------------------------- // -----------------------------------------------------------
@@ -163,6 +167,7 @@ $GLOBALS['i18n'] = [
'fallback' => $fallbackLangData, 'fallback' => $fallbackLangData,
]; ];
$lang = $GLOBALS['lang'] ?? 'de';
// ----------------------------------------------------------- // -----------------------------------------------------------
// 6) Rest des Systems laden // 6) Rest des Systems laden
// ----------------------------------------------------------- // -----------------------------------------------------------

View File

@@ -137,13 +137,17 @@ function build_lang_url(string $code, string $path, array $query): string
class="hidden absolute right-0 mt-2 w-32 rounded-xl bg-brand-surface border border-brand-border shadow-lg py-1 text-xs z-40"> class="hidden absolute right-0 mt-2 w-32 rounded-xl bg-brand-surface border border-brand-border shadow-lg py-1 text-xs z-40">
<?php foreach ($availableLangs as $code => $info): ?> <?php foreach ($availableLangs as $code => $info): ?>
<?php <?php
$isActive = ($code === $currentLang); // 👉 aktuelle Sprache NICHT noch einmal im Menü anzeigen
if ($code === $currentLang) {
continue;
}
$flag = $info['flag'] ?? '🏳️'; $flag = $info['flag'] ?? '🏳️';
$label = strtoupper($info['code'] ?? $code); $label = strtoupper($info['code'] ?? $code);
$url = build_lang_url($code, $currentPath, $currentQuery); $url = build_lang_url($code, $currentPath, $currentQuery);
?> ?>
<a href="<?= htmlspecialchars($url) ?>" <a href="<?= htmlspecialchars($url) ?>"
class="lang-pill flex items-center gap-2 w-full text-left px-3 py-1.5 uppercase tracking-[0.18em] text-brand-muted hover:text-brand-primary hover:bg-brand-bg/60 <?= $isActive ? 'bg-brand-bg/60' : '' ?>"> class="lang-pill flex items-center gap-2 w-full text-left px-3 py-1.5 uppercase tracking-[0.18em] text-brand-muted hover:text-brand-primary hover:bg-brand-bg/60">
<span class="text-base"><?= htmlspecialchars($flag) ?></span> <span class="text-base"><?= htmlspecialchars($flag) ?></span>
<span><?= htmlspecialchars($label) ?></span> <span><?= htmlspecialchars($label) ?></span>
</a> </a>

View File

@@ -3,10 +3,6 @@ $pageKey = 'landing';
require_once dirname(__DIR__) . '/config/fileload.php'; require_once dirname(__DIR__) . '/config/fileload.php';
// Sprachlogik:
$lang = $_GET['lang'] ?? 'en';
$lang = in_array($lang, ['de','en','it','fr']) ? $lang : 'en';
// User-Dummy (später über Login ersetzen) // User-Dummy (später über Login ersetzen)
$userInitials = null; $userInitials = null;

View File

@@ -4,9 +4,6 @@ $pageKey = 'dashboard';
require_once dirname(__DIR__) . '/config/fileload.php'; require_once dirname(__DIR__) . '/config/fileload.php';
// Sprachlogik
$lang = $_GET['lang'] ?? 'de';
$lang = in_array($lang, ['de','en','it','fr'], true) ? $lang : 'de';
// User aus Session holen // User aus Session holen
$currentUser = $_SESSION['user'] ?? null; $currentUser = $_SESSION['user'] ?? null;

View File

@@ -5,9 +5,6 @@ require_once dirname(__DIR__) . '/config/fileload.php';
// public/fakecheck/index.php // public/fakecheck/index.php
// Sprachlogik wie auf der Startseite
$lang = $_GET['lang'] ?? 'en';
$lang = in_array($lang, ['de','en','it','fr']) ? $lang : 'en';
// User-Dummy (später über Login ersetzen) // User-Dummy (später über Login ersetzen)
$userInitials = null; $userInitials = null;

View File

@@ -3,9 +3,6 @@ $pageKey = 'login';
require_once __DIR__ . '/../../../config/fileload.php'; require_once __DIR__ . '/../../../config/fileload.php';
tpl_add_script('/assets/js/auth.js', 'footer', true, false, '', 'auth-1'); tpl_add_script('/assets/js/auth.js', 'footer', true, false, '', 'auth-1');
// Sprachlogik:
$lang = $_GET['lang'] ?? 'en';
$lang = in_array($lang, ['de','en','it','fr']) ? $lang : 'en';
// später: echte Session // später: echte Session
$userInitials = null; $userInitials = null;