asdasd
This commit is contained in:
@@ -37,17 +37,12 @@ if (is_string($lang)) {
|
|||||||
} else {
|
} else {
|
||||||
$lang = null;
|
$lang = null;
|
||||||
}
|
}
|
||||||
$lang = strtolower($lang);
|
|
||||||
|
|
||||||
if (!preg_match('/^[a-z]{2}$/', $lang)) {
|
|
||||||
$lang = null;
|
|
||||||
}
|
|
||||||
|
|
||||||
// -----------------------------------------------------------
|
// -----------------------------------------------------------
|
||||||
// 2) Verfügbare JSON-Sprachen erkennen
|
// 2) Verfügbare JSON-Sprachen erkennen
|
||||||
// -----------------------------------------------------------
|
// -----------------------------------------------------------
|
||||||
$i18nDir = __DIR__ . '/../public/assets/i18n';
|
$i18nDir = __DIR__ . '/../public/assets/i18n';
|
||||||
$langFiles = glob($i18nDir . '/*.json') ?: [];
|
$langFiles = glob($i18nDir . '/*.json') ?: [];
|
||||||
|
|
||||||
$availableLangs = [];
|
$availableLangs = [];
|
||||||
|
|
||||||
@@ -65,7 +60,7 @@ foreach ($langFiles as $file) {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
// Falls Sprache ungültig → erste verfügbare Sprache wählen
|
// Falls Sprache ungültig oder nicht vorhanden → erste verfügbare Sprache wählen
|
||||||
if (!$lang || !isset($availableLangs[$lang])) {
|
if (!$lang || !isset($availableLangs[$lang])) {
|
||||||
$lang = array_key_first($availableLangs) ?: 'en';
|
$lang = array_key_first($availableLangs) ?: 'en';
|
||||||
}
|
}
|
||||||
@@ -87,7 +82,7 @@ if (is_readable($activeLangFile)) {
|
|||||||
// 4) Fallback-Sprache (EN)
|
// 4) Fallback-Sprache (EN)
|
||||||
// -----------------------------------------------------------
|
// -----------------------------------------------------------
|
||||||
$fallbackLangData = [];
|
$fallbackLangData = [];
|
||||||
$fallbackFile = $i18nDir . '/en.json';
|
$fallbackFile = $i18nDir . '/en.json';
|
||||||
|
|
||||||
if ($lang !== 'en' && is_readable($fallbackFile)) {
|
if ($lang !== 'en' && is_readable($fallbackFile)) {
|
||||||
$json = json_decode(file_get_contents($fallbackFile), true);
|
$json = json_decode(file_get_contents($fallbackFile), true);
|
||||||
@@ -99,7 +94,7 @@ if ($lang !== 'en' && is_readable($fallbackFile)) {
|
|||||||
// -----------------------------------------------------------
|
// -----------------------------------------------------------
|
||||||
// 5) Globale i18n-Struktur bereitstellen
|
// 5) Globale i18n-Struktur bereitstellen
|
||||||
// -----------------------------------------------------------
|
// -----------------------------------------------------------
|
||||||
$GLOBALS['lang'] = $lang;
|
$GLOBALS['lang'] = $lang;
|
||||||
$GLOBALS['availableLangs'] = $availableLangs;
|
$GLOBALS['availableLangs'] = $availableLangs;
|
||||||
|
|
||||||
$GLOBALS['i18n'] = [
|
$GLOBALS['i18n'] = [
|
||||||
|
|||||||
Reference in New Issue
Block a user