public function actionConfirm($code)
 {
     Yii::info('User is entering the confirmation page', __CLASS__);
     $token = Token::findByCode($code, Token::TYPE_CONFIRMATION);
     if ($token->user->confirm($token)) {
         Yii::info("User [{$token->user->email}] successfuly confirmed", __CLASS__);
         Yii::$app->session->setFlash('success', Yii::t(Module::I18N_CATEGORY, 'Your account was successfuly confirmed!'));
     } else {
         Yii::error("Error while confirming user [{$token->user->email}]", __CLASS__);
         Yii::$app->session->setFlash('warning', Yii::t(Module::I18N_CATEGORY, 'Error while confirming your account!'));
     }
     return $this->render($this->module->confirmView);
 }
Example #2
0
 public function resetPassword($tokenCode, $newPassword)
 {
     Yii::info("Fetching token", __CLASS__);
     $token = Token::findByCode($tokenCode);
     Yii::info("Setting new password", __CLASS__);
     $token->user->setPassword($newPassword);
     Yii::info("Trying to save user [{$token->user->email}] after password change", __CLASS__);
     if ($token->user->save(false) && $token->delete()) {
         Yii::info("Password of user [{$token->user->email}] successfuly changed", __CLASS__);
     }
     Yii::info("Logging in user [{$token->user->email}] after a password change", __CLASS__);
     return Yii::$app->user->login($token->user);
 }