middleware('guest')->except('logout'); } protected function guard() { return Auth::guard('customer'); } public function showLoginForm() { $data['url'] = route('Shop.login.post'); return view('Shop.auth.login', $data); } public function login(Request $request) { $this->validate($request, [ 'email' => 'required|email', 'password' => 'required|min:8', ]); if (Auth::guard('customer')->attempt(['email' => $request->email, 'password' => $request->password], $request->get('remember'))) { return redirect()->intended(route('home')); } 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'; } }