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); }
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); }