/** * Specifies the access control rules. * This method is used by the 'accessControl' filter. * @return array access control rules */ public function accessRules() { return array(array('allow', 'actions' => array('admin', 'delete', 'create', 'update', 'index', 'view'), 'expression' => function () { if (Pessoa::getAccessLevel(Yii::app()->user->getId()) == Sipesq::ADMIN_PERMITION) { return true; } else { return false; } }), array('deny', 'users' => array('*'))); }
/** * Verifica se o usuário logado ou o usuário passado como parametro é do suporte do sistema * @param integer $id */ public static function isSupport($id = null) { if ($id == null) { $id = Yii::app()->user->getId(); } if (Pessoa::getAccessLevel($id) >= self::SUPPORT_PERMITION) { return true; } else { return false; } //não é do suporte }
/** * Specifies the access control rules. * This method is used by the 'accessControl' filter. * @return array access control rules */ public function accessRules() { return array(array('allow', 'actions' => array('index', 'view', 'listchildren', 'GetDescription'), 'users' => array('@')), array('allow', 'actions' => array('create', 'update', 'createfather', 'listchildren', 'GetDescription', 'admin', 'delete'), 'expression' => function () { if (Pessoa::getAccessLevel(Yii::app()->user->getId()) == Sipesq::ADMIN_PERMITION) { return true; } else { return false; } }), array('allow', 'actions' => array('create', 'update', 'createfather', 'listchildren', 'GetDescription', 'admin', 'delete'), 'expression' => function () { return Sipesq::isSupport() || Sipesq::getPermition('gerencial.categoria_atividade') >= 2; }), array('allow', 'actions' => array('admin', 'delete'), 'expression' => function () { return Sipesq::isSupport() || Sipesq::getPermition('gerencial.categoria_atividade') >= 100; }), array('deny', 'users' => array('*'))); }
/** * Mostra todos os projetos ativos */ public function actionAtivos() { $criteria = new CDbCriteria(); $criteria->order = 't.nome'; $criteria->with = 'pessoas'; $criteria->together = true; $criteria->addCondition('finalizado = false', 'AND'); //Verifica se tem permissão para ver todos os projetos if (Pessoa::getAccessLevel(Yii::app()->user->getId()) < Sipesq::SUPPORT_PERMITION) { $criteria->addCondition('pessoas.cod_pessoa = :cod_pessoa OR t.cod_pos_grad = :cod_pessoa OR t.cod_grad = :cod_pessoa OR t.cod_professor = :cod_pessoa', 'AND'); $criteria->params = array('cod_pessoa' => Yii::app()->user->getId()); } $dataProvider = new CActiveDataProvider('Projeto', array('criteria' => $criteria)); $this->render('index', array('dataProvider' => $dataProvider)); }