diff --git a/app/Http/Middleware/CheckPrivateModeMiddleware.php b/app/Http/Middleware/CheckPrivateModeMiddleware.php index 8d3bce4ee1c02b5ee4a24ea371c830217dd537ba..7cf814038d6d7cc8d3516ce8e2c0f69652ecd3b1 100644 --- a/app/Http/Middleware/CheckPrivateModeMiddleware.php +++ b/app/Http/Middleware/CheckPrivateModeMiddleware.php @@ -14,9 +14,15 @@ public function handle(Request $request, Closure $next) $userSecretInput = $request->input('secret'); $secretIsUsable = ! empty($privateModeSecret) && $privateModeSecret === $userSecretInput; - if ($privateModeEnabled && ! $secretIsUsable) { - return redirect()->route('maintenance'); - } elseif (! $privateModeEnabled && $request->is('maintenance')) { + if ($privateModeEnabled) { + if (! $secretIsUsable && ! auth()->check()) { + if (! $request->is('maintenance')) { + return redirect()->route('maintenance'); + } + } + } + + if (! $privateModeEnabled && $request->is('maintenance') && ! auth()->check()) { return redirect()->route('index'); }