Ejemplo n.º 1
0
 /**
  * Resending the account activation link.
  * @return string|\yii\web\Response
  */
 public function actionReactivate()
 {
     $model = new ReForm();
     if ($model->load(Yii::$app->request->post())) {
         if ($model->reactivate()) {
             $email = Content::find()->where(['name' => 'email-react'])->one();
             if ($email) {
                 $topic = $email->topic;
                 $content = $email->content;
             } else {
                 $topic = Content::REACT_TITLE;
                 $content = Content::REACT_BODY;
             }
             $forum = Config::getInstance()->get('name');
             if (Email::queue($model->getUser()->email, str_replace('{forum}', $forum, $topic), str_replace('{forum}', $forum, str_replace('{link}', Html::a(Url::to(['account/activate', 'token' => $model->getUser()->activation_token], true), Url::to(['account/activate', 'token' => $model->getUser()->activation_token], true)), $content)), !empty($model->getUser()->id) ? $model->getUser()->id : null)) {
                 Log::info('Reactivation link queued', !empty($model->getUser()->id) ? $model->getUser()->id : '', __METHOD__);
                 $this->success('The account activation link has been sent to your e-mail address.');
             } else {
                 Log::error('Error while queuing reactivation link', !empty($model->getUser()->id) ? $model->getUser()->id : '', __METHOD__);
                 $this->error('Sorry! There was some error while sending you the account activation link. Contact administrator about this problem.');
             }
             return $this->module->goPodium();
         } else {
             $this->error('Sorry! We can not find the account with that user name or e-mail address.');
         }
     }
     return $this->render('reactivate', ['model' => $model]);
 }
Ejemplo n.º 2
0
 /**
  * Resending the account activation link.
  * @return string|\yii\web\Response
  */
 public function actionReactivate()
 {
     if (PodiumModule::getInstance()->userComponent == PodiumModule::USER_INHERIT) {
         $this->info(Yii::t('podium/flash', 'Please contact the administrator to reactivate your account.'));
         return $this->module->goPodium();
     }
     $model = new ReForm();
     if ($model->load(Yii::$app->request->post())) {
         if ($model->reactivate()) {
             $email = Content::find()->where(['name' => 'email-react'])->limit(1)->one();
             if ($email) {
                 $topic = $email->topic;
                 $content = $email->content;
             } else {
                 $topic = Messages::EMAIL_REACT_TITLE;
                 $content = Messages::EMAIL_REACT_BODY;
             }
             $forum = Config::getInstance()->get('name');
             if (!empty($model->user->email)) {
                 if (Email::queue($model->user->email, str_replace('{forum}', $forum, $topic), str_replace('{forum}', $forum, str_replace('{link}', Html::a(Url::to(['account/activate', 'token' => $model->user->activation_token], true), Url::to(['account/activate', 'token' => $model->user->activation_token], true)), $content)), !empty($model->user->id) ? $model->user->id : null)) {
                     Log::info('Reactivation link queued', $model->user->id, __METHOD__);
                     $this->success(Yii::t('podium/flash', 'The account activation link has been sent to your e-mail address.'));
                 } else {
                     Log::error('Error while queuing reactivation link', $model->user->id, __METHOD__);
                     $this->error(Yii::t('podium/flash', 'Sorry! There was some error while sending you the account activation link. Contact administrator about this problem.'));
                 }
             } else {
                 Log::error('Error while queuing reactivation link - no email set', $model->user->id, __METHOD__);
                 $this->error(Yii::t('podium/flash', 'Sorry! There is no e-mail address saved with your account. Contact administrator about reactivating.'));
             }
             return $this->module->goPodium();
         } else {
             $this->error(Yii::t('podium/flash', 'Sorry! We can not find the account with that user name or e-mail address.'));
         }
     }
     return $this->render('reactivate', ['model' => $model]);
 }
 /**
  * Resending the account activation link.
  * @return string|\yii\web\Response
  */
 public function actionReactivate()
 {
     if (PodiumModule::getInstance()->userComponent == PodiumModule::USER_INHERIT) {
         $this->info(Yii::t('podium/flash', 'Please contact the administrator to reactivate your account.'));
         return $this->module->goPodium();
     }
     $model = new ReForm();
     if ($model->load(Yii::$app->request->post())) {
         if ($model->reactivate()) {
             $email = Content::find()->where(['name' => 'email-react'])->limit(1)->one();
             if ($email) {
                 $topic = $email->topic;
                 $content = $email->content;
             } else {
                 $topic = '{forum} account reactivation';
                 $content = '<p>{forum} Account Activation</p><p>You are receiving this e-mail because someone has started the process of activating the account at {forum}.<br>If this person is you open the following link in your Internet browser and follow the instructions on screen.</p><p>{link}</p><p>If it was not you just ignore this e-mail.</p><p>Thank you!<br>{forum}</p>';
             }
             $forum = Config::getInstance()->get('name');
             if (!empty($model->user->email)) {
                 if (Email::queue($model->user->email, str_replace('{forum}', $forum, $topic), str_replace('{forum}', $forum, str_replace('{link}', Html::a(Url::to(['account/activate', 'token' => $model->user->activation_token], true), Url::to(['account/activate', 'token' => $model->user->activation_token], true)), $content)), !empty($model->user->id) ? $model->user->id : null)) {
                     Log::info('Reactivation link queued', $model->user->id, __METHOD__);
                     $this->success(Yii::t('podium/flash', 'The account activation link has been sent to your e-mail address.'));
                 } else {
                     Log::error('Error while queuing reactivation link', $model->user->id, __METHOD__);
                     $this->error(Yii::t('podium/flash', 'Sorry! There was some error while sending you the account activation link. Contact administrator about this problem.'));
                 }
             } else {
                 Log::error('Error while queuing reactivation link - no email set', $model->user->id, __METHOD__);
                 $this->error(Yii::t('podium/flash', 'Sorry! There is no e-mail address saved with your account. Contact administrator about reactivating.'));
             }
             return $this->module->goPodium();
         } else {
             $this->error(Yii::t('podium/flash', 'Sorry! We can not find the account with that user name or e-mail address.'));
         }
     }
     return $this->render('reactivate', ['model' => $model]);
 }