nicht nutzbarer stand, header menü ist nicht intertia initialisiert. aber schick. codex änderungen noch enthalten.

This commit is contained in:
Codex Agent
2025-10-06 13:46:29 +02:00
parent d70faf7a9d
commit 5ee510b05d
29 changed files with 493 additions and 784 deletions

View File

@@ -17,27 +17,19 @@ class SetLocale
*/
public function handle(Request $request, Closure $next): Response
{
$locale = $request->segment(1); // Erste URL-Segment als Locale (z.B. /de/packages -> 'de')
// Unterstützte Sprachen
$supportedLocales = ['de', 'en'];
$sessionLocale = Session::get('locale', 'de');
if (in_array($locale, $supportedLocales)) {
// Locale setzen
App::setLocale($locale);
Session::put('locale', $locale);
} else {
// Fallback zu 'de'
$defaultLocale = 'de';
App::setLocale($defaultLocale);
Session::put('locale', $defaultLocale);
// Redirect zu default Locale, wenn keine Locale in URL
if (!$locale) {
return redirect("/{$defaultLocale}" . $request->getRequestUri());
}
// Fallback to Accept-Language header if no session
if (!in_array($sessionLocale, $supportedLocales)) {
$acceptLanguage = $request->header('Accept-Language', 'de');
$localeFromHeader = substr($acceptLanguage, 0, 2);
$sessionLocale = in_array($localeFromHeader, $supportedLocales) ? $localeFromHeader : 'de';
}
App::setLocale($sessionLocale);
Session::put('locale', $sessionLocale);
return $next($request);
}
}