Gentics Portal.Node PHP API
 All Classes Namespaces Functions Variables Pages
ActivationController.php
1 <?php
2 
4 {
5  public $defaultAction = 'activation';
6 
7 
8  /**
9  * Activation user account
10  *
11  * @return void
12  */
13  public function actionActivation()
14  {
15 
16  $email = $_GET['email'];
17  $activkey = $_GET['activkey'];
18  if ($email && $activkey) {
19  $find = User::model()->notsafe()->findByAttributes(array('email' => $email));
20  if (isset($find) && $find->status) {
21  if (!isset($_GET['return_url'])) {
22  $this->render('/user/message', array('title' => UserModule::t("User activation"), 'content' => UserModule::t("Your account is active.")));
23  }
24  Yii::app()->user->setFlash('registration', UserModule::t("Your account is active."));
25  } elseif (isset($find->activkey) && ($find->activkey == $activkey)) {
26  $find->activkey = UserModule::encrypting(microtime());
27  $find->status = 1;
28  $find->save();
29  if (!isset($_GET['return_url'])) {
30  $this->render('/user/message', array('title' => UserModule::t("User activation"), 'content' => UserModule::t("Your account is activated.")));
31 
32  }
33  Yii::app()->user->setFlash(Yii::app()->getModule('user')->userLoginWidgetFlashSuccess, UserModule::t('Your account is activated. Now you can log in.'));
34  $this->redirect($this->module->loginUrl);
35  } else {
36  if (!isset($_GET['return_url'])) {
37  $this->render('/user/message', array('title' => UserModule::t("User activation"), 'content' => UserModule::t("Incorrect activation URL.")));
38  }
39  Yii::app()->user->setFlash('registration', UserModule::t("Incorrect activation URL."));
40  }
41  } else {
42  if (!isset($_GET['return_url'])) {
43  $this->render('/user/message', array('title' => UserModule::t("User activation"), 'content' => UserModule::t("Incorrect activation URL.")));
44  }
45  Yii::app()->user->setFlash('registration', UserModule::t("Incorrect activation URL."));
46  }
47  $cleanUrl = AppHelper::removeParamsFromUrl($_GET['return_url'], array('email', 'activkey'));
48  $this->redirect($cleanUrl);
49  }
50 
51 }