summaryrefslogtreecommitdiff
path: root/app/Http/Controllers/Auth/ForgotPasswordController.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/Http/Controllers/Auth/ForgotPasswordController.php')
-rw-r--r--app/Http/Controllers/Auth/ForgotPasswordController.php130
1 files changed, 67 insertions, 63 deletions
diff --git a/app/Http/Controllers/Auth/ForgotPasswordController.php b/app/Http/Controllers/Auth/ForgotPasswordController.php
index 9fd1e7e060..b41542311d 100644
--- a/app/Http/Controllers/Auth/ForgotPasswordController.php
+++ b/app/Http/Controllers/Auth/ForgotPasswordController.php
@@ -31,81 +31,85 @@ use Symfony\Component\HttpFoundation\Response;
/**
* Controller for requesting password resets.
*/
-class ForgotPasswordController extends AbstractBaseController {
- /**
- * Show a password reset page.
- *
- * @param Request $request
- *
- * @return Response
- */
- public function forgotPasswordPage(Request $request): Response {
- $title = I18N::translate('Request a new password');
+class ForgotPasswordController extends AbstractBaseController
+{
+ /**
+ * Show a password reset page.
+ *
+ * @param Request $request
+ *
+ * @return Response
+ */
+ public function forgotPasswordPage(Request $request): Response
+ {
+ $title = I18N::translate('Request a new password');
- return $this->viewResponse('forgot-password-page', [
- 'title' => $title,
- ]);
- }
+ return $this->viewResponse('forgot-password-page', [
+ 'title' => $title,
+ ]);
+ }
- /**
- * Send a password reset email.
- *
- * @param Request $request
- *
- * @return RedirectResponse
- */
- public function forgotPasswordAction(Request $request): RedirectResponse {
- /** @var Tree $tree */
- $tree = $request->attributes->get('tree');
+ /**
+ * Send a password reset email.
+ *
+ * @param Request $request
+ *
+ * @return RedirectResponse
+ */
+ public function forgotPasswordAction(Request $request): RedirectResponse
+ {
+ /** @var Tree $tree */
+ $tree = $request->attributes->get('tree');
- $identifier = $request->get('identifier');
+ $identifier = $request->get('identifier');
- $user = User::findByIdentifier($identifier);
+ $user = User::findByIdentifier($identifier);
- if ($user !== null) {
- $password = $this->createNewPassword();
- $user->setPassword($password);
+ if ($user !== null) {
+ $password = $this->createNewPassword();
+ $user->setPassword($password);
- Log::addAuthenticationLog('Password request was sent to user: ' . $user->getUserName());
+ Log::addAuthenticationLog('Password request was sent to user: ' . $user->getUserName());
- $sender = new User((object) [
- 'user_id' => null,
- 'user_name' => '',
- 'real_name' => $tree->getTitle(),
- 'email' => $tree->getPreference('WEBTREES_EMAIL'),
- ]);
+ $sender = new User((object)[
+ 'user_id' => null,
+ 'user_name' => '',
+ 'real_name' => $tree->getTitle(),
+ 'email' => $tree->getPreference('WEBTREES_EMAIL'),
+ ]);
- Mail::send($sender, $user, $sender, I18N::translate('Lost password request'), view('emails/password-reset-text', [
- 'user' => $user,
- 'new_password' => $password,
- ]), view('emails/password-reset-html', [
- 'user' => $user,
- 'new_password' => $password,
- ]));
+ Mail::send($sender, $user, $sender, I18N::translate('Lost password request'), view('emails/password-reset-text', [
+ 'user' => $user,
+ 'new_password' => $password,
+ ]), view('emails/password-reset-html', [
+ 'user' => $user,
+ 'new_password' => $password,
+ ]));
- FlashMessages::addMessage(I18N::translate('A new password has been created and emailed to %s. You can change this password after you sign in.', e($identifier)), 'success');
+ FlashMessages::addMessage(I18N::translate('A new password has been created and emailed to %s. You can change this password after you sign in.', e($identifier)), 'success');
- return new RedirectResponse(route('login', ['username' => $user->getUserName()]));
- } else {
- FlashMessages::addMessage(I18N::translate('There is no account with the username or email ā€œ%sā€.', e($identifier)), 'danger');
+ return new RedirectResponse(route('login', ['username' => $user->getUserName()]));
+ } else {
+ FlashMessages::addMessage(I18N::translate('There is no account with the username or email ā€œ%sā€.', e($identifier)), 'danger');
- return new RedirectResponse(route('forgot-password'));
- }
- }
+ return new RedirectResponse(route('forgot-password'));
+ }
+ }
- /**
- * @return string
- */
- private function createNewPassword(): string {
- $passchars = 'abcdefghijklmnopqrstuvqxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
- $password = '';
- $max = strlen($passchars) - 1;
+ /**
+ * @return string
+ */
+ private function createNewPassword(): string
+ {
+ $passchars = 'abcdefghijklmnopqrstuvqxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
+ $password = '';
+ $max = strlen($passchars) - 1;
- for ($i = 0; $i < 8; $i++) {
- $index = rand(0, $max);
- $password .= $passchars{$index};
- }
+ for ($i = 0; $i < 8; $i++) {
+ $index = rand(0, $max);
+ $password .= $passchars{$index};
+ }
- return $password;
- }
+ return $password;
+ }
}