middleware('guest:contact'); } /** * Show the reset email form. * * @return Factory|View */ public function showLinkRequestForm(Request $request) { $account_id = $request->get('account_id'); $account = Account::find($account_id); return $this->render('auth.passwords.request', [ 'title' => 'Client Password Reset', 'passwordEmailRoute' => 'client.password.email', 'account' => $account ]); } protected function guard() { return Auth::guard('contact'); } public function broker() { return Password::broker('contacts'); } public function sendResetLinkEmail(ContactPasswordResetRequest $request) { $user = MultiDB::hasContact($request->input('email')); $this->validateEmail($request); // We will send the password reset link to this user. Once we have attempted // to send the link, we will examine the response then see the message we // need to show to the user. Finally, we'll send out a proper response. $response = $this->broker()->sendResetLink( $this->credentials($request) ); if ($request->ajax()) { if($response == Password::RESET_THROTTLED) return response()->json(['message' => ctrans('passwords.throttled'), 'status' => false], 429); return $response == Password::RESET_LINK_SENT ? response()->json(['message' => 'Reset link sent to your email.', 'status' => true], 201) : response()->json(['message' => 'Email not found', 'status' => false], 401); } return $response == Password::RESET_LINK_SENT ? $this->sendResetLinkResponse($request, $response) : $this->sendResetLinkFailedResponse($request, $response); } }