Пример #1
0
 /**
  * If a user is being added to a role, raise two events signaling a potential change in
  * Rights/Policies for this user.
  * @see Permitable::afterSave()
  */
 protected function afterSave()
 {
     if ((isset($this->originalAttributeValues['role']) || $this->isNewModel) && $this->role != null && $this->role->id > 0) {
         AllPermissionsOptimizationUtil::userAddedToRole($this);
         ReadPermissionsSubscriptionUtil::userAddedToRole();
         $this->onChangeRights();
         $this->onChangePolicies();
     }
     if ($this->isNewModel) {
         ReadPermissionsSubscriptionUtil::userCreated();
     }
     if (isset($this->originalAttributeValues['role']) && $this->originalAttributeValues['role'][1] > 0) {
         ReadPermissionsSubscriptionUtil::userBeingRemovedFromRole();
     }
     if (isset($this->originalAttributeValues['language']) && Yii::app()->user->userModel != null && Yii::app()->user->userModel == $this) {
         Yii::app()->languageHelper->setActive($this->language);
     }
     parent::afterSave();
 }