Example #1
0
 /**
  * Carrega a hierarquia de roles
  */
 public function init()
 {
     $return = parent::init();
     $oUsuario = Usuario::model()->findByPk(Yii::app()->user->getId());
     $role = $this->createRole($oUsuario->tipoUsuario->titulo);
     if (empty($_SESSION[base64_encode(Yii::app()->params['projeto'] . '_PermissoesAcesso')][base64_encode('PermissoesAcessoUsuario')])) {
         $_aPermissoes = Yii::app()->user->getState('__' . base64_encode(Yii::app()->params['projeto'] . '_PermissoesAcessoUsuario'));
         if (!empty($_aPermissoes)) {
             $aPermissoes = $_aPermissoes[base64_encode(Yii::app()->params['projeto'] . '_PermissoesAcesso')][base64_encode('PermissoesAcessoUsuario')];
         }
     } else {
         $aPermissoes = $_SESSION[base64_encode(Yii::app()->params['projeto'] . '_PermissoesAcesso')][base64_encode('PermissoesAcessoUsuario')];
     }
     $this->createOperation('site/logout');
     $role->addChild('site/logout');
     $this->createOperation('site/index');
     $role->addChild('site/index');
     $this->createOperation('site/semPermissao');
     $role->addChild('site/semPermissao');
     if (!empty($aPermissoes)) {
         foreach ($aPermissoes as $controller => $actions) {
             foreach ($actions[base64_encode('actions')] as $action) {
                 $dController = base64_decode($controller);
                 $dAction = base64_decode($action);
                 $this->createOperation($dController . '/' . $dAction);
                 $role->addChild($dController . '/' . $dAction);
             }
         }
     }
     return $return;
 }
 public function init()
 {
     if ($this->authFile === null) {
         $this->authFile = Yii::getPathOfAlias('application.config.auth') . '.php';
     }
     parent::init();
     if (!Yii::app()->user->isGuest) {
         $this->assign(Yii::app()->user->role, Yii::app()->user->id);
     }
 }
Example #3
0
 public function init()
 {
     parent::init();
     $webUser = Yii::app()->getUser();
     // Связываем роли заданные в БД если пользователь не гость и не заблокирован
     if (!$webUser->getIsGuest()) {
         // Связываем роль, заданную в БД с идентификатором пользователя,
         // возвращаемым UserIdentity::getId().
         $this->assign($webUser->getRole(), $webUser->getId());
     }
 }
Example #4
0
 public function init()
 {
     if ($this->authFile === null) {
         $this->authFile = Yii::getPathOfAlias('application.modules.users.config.auth') . '.php';
     }
     parent::init();
     if (!Yii::app()->user->isGuest && ($user = User::model()->findByPk(Yii::app()->user->id))) {
         $role = $user->getRoleName();
         $this->assign($role, Yii::app()->user->id);
         $this->assign('owner', Yii::app()->user->id);
     }
 }
Example #5
0
 public function init()
 {
     // Roles description will put in file auth.php in config folder of application
     if ($this->authFile === NULL) {
         $this->authFile = Yii::getPathOfAlias('application.config.auth') . '.php';
     }
     parent::init();
     // assign user role id with role description from auth.php
     if (!Yii::app()->user->isGuest) {
         $this->assign(self::getRoleName(Yii::app()->user->getRole()), Yii::app()->user->id);
     }
 }
 public function init()
 {
     // Иерархию ролей расположим в файле auth.php в директории config приложения
     if ($this->authFile === null) {
         $this->authFile = Yii::getPathOfAlias('application.config.auth') . '.php';
     }
     parent::init();
     // Для гостей и так роль по умолчанию guest.
     if (!Yii::app()->user->isGuest) {
         // Связываем роль, заданную в БД с идентификатором пользователя
         $this->assign(Yii::app()->user->role, Yii::app()->user->id);
     }
 }
Example #7
0
    public function init(){
        // Включим наш roles.php
        if($this->authFile===null){
            $this->authFile=Yii::getPathOfAlias('application.config.roles').'.php';
        }

        parent::init();

        // Для гостей роль по умолчанию guest.
        if(!Yii::app()->user->isGuest){
            // Связываем роль, заданную в БД с идентификатором пользователя,
            // возвращаемым UserIdentity.getId().
            $this->assign(Yii::app()->user->role, Yii::app()->user->id);
        }
    }
    public function init()
    {
        // Иерархию ролей расположим в файле auth.php в директории config приложения
        if($this->authFile===null){
            $this->authFile=Yii::getPathOfAlias('application.config.auth').'.php';
        }
 
        parent::init();
 
        // Для гостей у нас и так роль по умолчанию guest.
        if(!Y::isGuest()){
            // Связываем роль, заданную в БД с идентификатором пользователя,
            // возвращаемым UserIdentity.getId().
            $this->assign(Y::user()->role, Y::userId());
        }
    }
Example #9
0
 public function init()
 {
     // Иерархию ролей расположим в файле auth.php в директории config приложения
     if ($this->authFile === null) {
         $this->authFile = Yii::getPathOfAlias('application.config.auth') . '.php';
     }
     parent::init();
     // Для гостей у нас и так роль по умолчанию guest.
     if (!Yii::app()->user->isGuest) {
         // Связываем роль, заданную в БД с идентификатором пользователя,
         // возвращаемым UserIdentity.getId().
         $roles = explode(',', Yii::app()->user->getRole());
         foreach ($roles as $role) {
             $this->assign(trim($role), Yii::app()->user->id);
         }
     }
 }
Example #10
0
 public function init()
 {
     // Иерархию ролей расположим в файле auth.php в директории config приложения
     if ($this->authFile === null) {
         $this->authFile = Yii::getPathOfAlias('application.modules.rbac.config.auth') . '.php';
     }
     parent::init();
     // Для гостей у нас и так роль по умолчанию guest.
     if (!Yii::app()->user->isGuest) {
         // Связываем роль, заданную в БД с идентификатором пользователя,
         // возвращаемым UserIdentity.getId().
         if (!$this->isAssigned(Yii::app()->user->role, Yii::app()->user->id)) {
             if ($this->assign(Yii::app()->user->role, Yii::app()->user->id)) {
                 //Yii::app()->authManager->save();
             }
         }
         //$this->assign(Yii::app()->user->role, Yii::app()->user->id);
     }
 }
 /**
  * Override parent class to prevent the call to clearAll()
  *
  * @return void
  */
 public function load()
 {
     $this->_loading = true;
     parent::load();
     $this->_loading = false;
 }
Example #12
0
 public function init()
 {
     parent::init();
     $this->load();
 }