Example #1
0
 /**
  * Process forgot password
  */
 private function processForgotPassword()
 {
     $loginId = Input::get('login_id');
     $user = User::findByLoginId($loginId);
     if (empty($user)) {
         return Redirect::route('forgotpw')->withInput()->withErrors(array("forgotpw" => array(trans('message.user.error.invalid_login_id'))));
     }
     // Create hash string
     $forgotPasswordHash = $user->createForgotPasswordHash();
     // Send email to user
     $url = URL::route('resetpw', array('id' => $user->id, 'hash' => $forgotPasswordHash));
     $mailBody = 'Reset password email.<br>Below is reset password link.<br>' . $url;
     $mailConfigData = Config::get('mail');
     Mail::send('emails.email_template', array('data' => array('body' => $mailBody)), function ($message) use($mailConfigData, $user) {
         $message->from($mailConfigData['from']['address'], $mailConfigData['from']['name']);
         $message->to($user->login_id);
         $message->subject('Reset password email');
     });
     Session::flash('mail-sent', trans('message.user.success.forgot_pw_email_sent'));
     return Redirect::route('forgotpw');
 }