check()) { return redirect()->route('admin.dashboard'); } return view('admin.auth.login'); } /** * Procesar login */ public function login(LoginRequest $request): RedirectResponse { $credentials = $request->only('email', 'password'); // Buscar usuario por email $adminUser = AdminUser::where('email', $credentials['email'])->first(); if (! $adminUser) { return back()->withErrors([ 'email' => 'Las credenciales no son válidas.', ])->withInput($request->except('password')); } // Verificar password if (! $adminUser->validatePassword($credentials['password'])) { return back()->withErrors([ 'email' => 'Las credenciales no son válidas.', ])->withInput($request->except('password')); } // Login manual Auth::guard('admin')->login($adminUser); $request->session()->regenerate(); return redirect()->intended(route('admin.dashboard'))->with('success', 'Bienvenido al panel de administración.'); } /** * Cerrar sesión */ public function logout(): RedirectResponse { Auth::guard('admin')->logout(); request()->session()->invalidate(); request()->session()->regenerateToken(); return redirect()->route('admin.login')->with('success', 'Sesión cerrada correctamente.'); } }