Gentics Portal.Node PHP API
 All Classes Namespaces Functions Variables Pages
UserProfileEditWidget.php
1 <?php
2 
4 {
5  /**
6  * Shows a particular model.
7  *
8  * @return void
9  */
10  public function run()
11  {
12  if(Yii::app()->request->getParam('approveEmail', false)){
13  $email = Yii::app()->request->getParam('email');
14  $key = Yii::app()->request->getParam('key');
15  if (!User::model()->exists("email=:email", array(':email' => $email))) {
16  $user = User::model()->findByAttributes(array('activkey' => $key));
17  if ($user) {
18  $user->email = $email;
19  if ($user->save()) {
20  Yii::app()->user->setFlash('approveState', UserModule::t("Email {email} was succesfully approved.", array('{email}'=>$email)));
21  }
22  }
23  } else {
24  Yii::app()->user->setFlash('approveState', UserModule::t("Email {email} was not approved. Maybe it already exists.", array('{email}'=>$email)));
25  }
26  }
27 
28  if (Yii::app()->user->id) {
29  $User = RegistrationForm::model()->findByPk(Yii::app()->user->id);
30  $Profile = $User->profile;
31  foreach (array('User', 'Profile') as $modelName) {
32  if (($modelData = Yii::app()->user->getState($modelName)) != null) {
33  ${$modelName}->attributes = $modelData['attributes'];
34  foreach ($modelData['errors'] as $attribute => $errors) {
35  foreach ($errors as $e) {
36  ${$modelName}->addError($attribute, $e);
37  }
38  }
39  Yii::app()->user->setState($modelName, null);
40  }
41  }
42 
43  $this->render('UserProfileEditWidget', array('model' => $User, 'profile' => $Profile));
44  }
45  }
46 }