Beispiel #1
0
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = Role::find()->where(['type' => Role::TYPE]);
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     if (!($this->load($params) && $this->validate())) {
         return $dataProvider;
     }
     $query->andFilterWhere(['like', 'name', $this->name])->andFilterWhere(['like', 'description', $this->description]);
     return $dataProvider;
 }
Beispiel #2
0
 /**
  * @return array
  */
 public static function getRbacItems()
 {
     /**
      * @var $role Role
      * @var $permission Permission
      */
     $roles = [];
     $permissions = [];
     foreach (Role::find()->where(['type' => Role::TYPE])->all() as $role) {
         $roles = ArrayHelper::merge($roles, [$role->name => $role->name]);
     }
     foreach (Permission::find()->where(['type' => Permission::TYPE])->all() as $permission) {
         $permissions = ArrayHelper::merge($permissions, [$permission->name => $permission->name]);
     }
     return ['roles' => $roles, 'permissions' => $permissions];
 }
Beispiel #3
0
 /**
  * Finds the Role model based on its primary key value.
  * If the model is not found, a 404 HTTP exception will be thrown.
  * @param string $name
  * @return Role the loaded model
  * @throws NotFoundHttpException if the model cannot be found
  */
 protected function findModel($name)
 {
     $model = new Role();
     $role = $model->authManager->getRole($name);
     if (!($role === null)) {
         $model->name = $role->name;
         $model->description = $role->description;
         $model->setIsNewRecord(false);
         return $model;
     } else {
         throw new NotFoundHttpException('The requested page does not exist.');
     }
 }
Beispiel #4
0
 /**
  * @return array
  */
 public function getRoles()
 {
     /* @var $model Role */
     $roles = [];
     $models = Role::find()->where(['type' => Role::TYPE])->all();
     foreach ($models as $model) {
         if (!($this->name == $model->name)) {
             $roles = ArrayHelper::merge($roles, [$model->name => $model->name]);
         }
     }
     return $roles;
 }