/**
  * 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('*')));
 }
示例#2
0
 /**
  * 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));
    }