fix: SetLocale tolerant to early-pipeline missing session
This commit is contained in:
@@ -25,9 +25,12 @@ class SetLocale
|
||||
|
||||
private function resolve(Request $request): string
|
||||
{
|
||||
$session = $request->session()->get('locale');
|
||||
if ($session && in_array($session, self::SUPPORTED, true)) {
|
||||
return $session;
|
||||
// Session may not be started yet on early-stage middleware paths.
|
||||
if ($request->hasSession()) {
|
||||
$session = $request->session()->get('locale');
|
||||
if ($session && in_array($session, self::SUPPORTED, true)) {
|
||||
return $session;
|
||||
}
|
||||
}
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
@@ -61,10 +61,10 @@ class TenantPanelProvider extends PanelProvider
|
||||
// unauthenticated → endless redirect to /app/login.
|
||||
ResolveTenant::class,
|
||||
CheckTenantStatus::class,
|
||||
\App\Http\Middleware\SetLocale::class,
|
||||
EncryptCookies::class,
|
||||
AddQueuedCookiesToResponse::class,
|
||||
StartSession::class,
|
||||
\App\Http\Middleware\SetLocale::class,
|
||||
AuthenticateSession::class,
|
||||
ShareErrorsFromSession::class,
|
||||
VerifyCsrfToken::class,
|
||||
|
||||
Reference in New Issue
Block a user