app\models\forms\PasswordResetRequestForm::sendEmail PHP Method

sendEmail() public method

Sends an email with a link, for resetting the password.
public sendEmail ( ) : boolean
return boolean whether the email was send
    public function sendEmail()
    {
        /** @var User $user */
        $user = User::find()->canLogin()->email($this->email)->one();
        if ($user && $user->generatePasswordResetToken(true)) {
            $params = Yii::$app->params;
            return Yii::$app->mailer->compose('passwordResetToken', ['user' => $user])->setFrom([$params['support.email'] => $params['support.name']])->setTo($this->email)->setSubject('Password reset for ' . Yii::$app->name)->send();
        }
        return false;
    }

Usage Example

コード例 #1
0
 /**
  * Sends password reset email to user.
  * @return mixed
  */
 public function actionRequestPasswordReset()
 {
     $model = new PasswordResetRequestForm();
     if ($model->load(Yii::$app->request->post()) && $model->validate()) {
         if ($model->sendEmail()) {
             Yii::$app->getSession()->setFlash('success', 'Check your email for further instructions.');
             return $this->goHome();
         } else {
             Yii::$app->getSession()->setFlash('danger', 'Sorry, we are unable to reset password for email provided.');
         }
     }
     return $this->render('requestPasswordResetToken', ['model' => $model]);
 }
All Usage Examples Of app\models\forms\PasswordResetRequestForm::sendEmail
PasswordResetRequestForm