middleware('guest')->except('logout'); } /** * Menampilkan form login */ public function showLoginForm() { return view('auth.login'); } /** * Proses login */ public function login(Request $request) { $credentials = $request->validate([ 'email' => 'required|email', 'password' => 'required', ]); if (Auth::attempt($credentials)) { $request->session()->regenerate(); // Redirect berdasarkan role if (Auth::user()->is_admin) { return redirect()->intended('admin/dashboard'); } return redirect()->intended('/'); } return back()->withErrors([ 'email' => 'Kredensial yang Anda berikan tidak cocok dengan data kami.', ])->withInput($request->only('email')); } /** * Proses logout */ public function logout(Request $request) { Auth::logout(); $request->session()->invalidate(); $request->session()->regenerateToken(); return redirect('/'); } }