middleware('guest')->except('logout'); } protected function guard() { return Auth::guard('customer'); } public function showLoginForm() { return view('Shop.auth.login'); } public function login(Request $request) { $credentials = $request->validate([ 'email' => 'required|email', 'password' => 'required|min:8', ]); if ($this->guard()->attempt($credentials, $request->get('remember'))) { $request->session()->regenerate(); return (back()->getTargetUrl() == route('Shop.login')) ? redirect()->intended(route('home')) : back(); } return back()->withInput($request->only('email', 'remember')); } public function logout(Request $request) { $sessionKey = $this->guard()->getName(); $this->guard()->logout(); $request->session()->forget($sessionKey); return redirect()->route('home'); } public function username() { return 'email'; } }