middleware('guest:contact', ['except' => ['logout']]); } public function showLoginForm() { return $this->render('auth.login'); } public function login(Request $request) { Auth::shouldUse('contact'); $this->validateLogin($request); // If the class is using the ThrottlesLogins trait, we can automatically throttle // the login attempts for this application. We'll key this by the username and // the IP address of the client making these requests into this application. if (method_exists($this, 'hasTooManyLoginAttempts') && $this->hasTooManyLoginAttempts($request)) { $this->fireLockoutEvent($request); return $this->sendLockoutResponse($request); } if ($this->attemptLogin($request)) { return $this->sendLoginResponse($request); } // If the login attempt was unsuccessful we will increment the number of attempts // to login and redirect the user back to the login form. Of course, when this // user surpasses their maximum number of attempts they will get locked out. $this->incrementLoginAttempts($request); return $this->sendFailedLoginResponse($request); } public function authenticated(Request $request, ClientContact $client) { Auth::guard('contact')->login($client, true); event(new ContactLoggedIn($client, $client->company)); if (session()->get('url.intended')) { return redirect(session()->get('url.intended')); } return redirect(route('client.dashboard')); } public function logout() { Auth::guard('contact')->logout(); return redirect('/client/login'); } }