/** * Renders the widget. */ public function run() { // Get all module $modules = AuthActionList::getModules(); $models = []; foreach ($modules as $module) { $modelsInModule = AuthActionList::getModelsInModule('', $module); if (count($modelsInModule) > 0) { $models[$module] = $modelsInModule; } } if (!isset($this->options['class']) or empty($this->options['class'])) { $this->options['class'] = 'form-control'; } echo Html::activeDropDownList($this->model, $this->attribute, $models, $this->options); }
public function actionFixpermission() { $auth = Yii::$app->authManager; $itemPermission = $auth->getPermissions(); $actionList = AuthActionList::find()->all(); $actionList = \app\helpers\ArrayHelper::map($actionList, '_id', 'is_permission'); if ($itemPermission) { foreach ($itemPermission as $item) { $updatePermission = AuthActionList::findOne($item->name); if ($updatePermission and $updatePermission->is_permission !== "1") { $updatePermission->is_permission = "1"; $updatePermission->save(); } } } $this->redirect(['/account/rbac/actionlist']); }
public function actionCreatepermission() { $ids = Yii::$app->request->get('selection', []); $messages = ['success' => [], 'error' => [], 'exist' => []]; foreach ($ids as $id) { $auth = Yii::$app->authManager; $model = AuthActionList::findOne($id); if (!$auth->checkItemExist($id) and $model) { $createPermission = $auth->createPermission($id); // $createPost->description = 'Create a post'; if ($auth->add($createPermission)) { $model->is_permission = 1; $model->save(); $messages['success'][] = $id; } else { $messages['error'][] = $id; } } else { $messages['exist'][] = $id; } } echo json_encode($messages); }