X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/cd6572b61af2165133468d2562d04dffdca8fca8..1c859e94e03d0407daf55ade43ced245f208f971:/app/Http/Controllers/Auth/ForgotPasswordController.php diff --git a/app/Http/Controllers/Auth/ForgotPasswordController.php b/app/Http/Controllers/Auth/ForgotPasswordController.php index d1fbddc50..5e73b232c 100644 --- a/app/Http/Controllers/Auth/ForgotPasswordController.php +++ b/app/Http/Controllers/Auth/ForgotPasswordController.php @@ -2,10 +2,11 @@ namespace BookStack\Http\Controllers\Auth; +use BookStack\Actions\ActivityType; use BookStack\Http\Controllers\Controller; use Illuminate\Foundation\Auth\SendsPasswordResetEmails; use Illuminate\Http\Request; -use Password; +use Illuminate\Support\Facades\Password; class ForgotPasswordController extends Controller { @@ -30,19 +31,21 @@ class ForgotPasswordController extends Controller public function __construct() { $this->middleware('guest'); - parent::__construct(); + $this->middleware('guard:standard'); } - /** * Send a reset link to the given user. * - * @param \Illuminate\Http\Request $request + * @param \Illuminate\Http\Request $request + * * @return \Illuminate\Http\RedirectResponse */ public function sendResetLinkEmail(Request $request) { - $this->validate($request, ['email' => 'required|email']); + $this->validate($request, [ + 'email' => ['required', 'email'], + ]); // 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 @@ -52,8 +55,13 @@ class ForgotPasswordController extends Controller ); if ($response === Password::RESET_LINK_SENT) { - $message = trans('auth.reset_password_sent_success', ['email' => $request->get('email')]); - session()->flash('success', $message); + $this->logActivity(ActivityType::AUTH_PASSWORD_RESET, $request->get('email')); + } + + if (in_array($response, [Password::RESET_LINK_SENT, Password::INVALID_USER, Password::RESET_THROTTLED])) { + $message = trans('auth.reset_password_sent', ['email' => $request->get('email')]); + $this->showSuccessNotification($message); + return back()->with('status', trans($response)); } @@ -64,5 +72,4 @@ class ForgotPasswordController extends Controller ['email' => trans($response)] ); } - -} \ No newline at end of file +}