route('dashboard'); } return view('auth.login'); } public function login(Request $request) { $credentials = $request->validate([ 'email' => ['required', 'email'], 'password' => ['required', 'string'], ], [], [ 'email' => 'emel', 'password' => 'kata laluan', ]); $remember = $request->boolean('remember'); if (! Auth::attempt($credentials, $remember)) { activity('auth')->withProperties(['email' => $request->email])->log('Cubaan log masuk gagal'); throw ValidationException::withMessages([ 'email' => 'Emel atau kata laluan tidak sah.', ]); } $user = Auth::user(); if (! $user->is_active) { Auth::logout(); throw ValidationException::withMessages([ 'email' => 'Akaun anda telah dinyahaktifkan. Sila hubungi pentadbir.', ]); } $request->session()->regenerate(); activity('auth')->causedBy($user)->log('Pengguna log masuk'); return redirect()->intended(route('dashboard')); } public function logout(Request $request) { $user = Auth::user(); activity('auth')->causedBy($user)->log('Pengguna log keluar'); Auth::logout(); $request->session()->invalidate(); $request->session()->regenerateToken(); return redirect()->route('login'); } }