public function remove($object) { if (!$object) { return false; } return parent::remove($object); }
/** * Delete role using string name */ public function actionDelete($id) { $role = $this->findRole($id); /* @var $systemAlert Alert */ $systemAlert = Yii::$app->systemAlert; try { $this->authManager->remove($role); $systemAlert->setMessage(Alert::SUCCESS, Yii::t('user', 'Role successfully deleted')); } catch (Exception $ex) { $systemAlert->setMessage(Alert::DANGER, Yii::t('app', 'System error: {message}', ['message' => $ex->getMessage()])); } return $this->redirect(['index']); }
/** * Удаляет роль, привилегию или правило из системы * @param $type * @param $name * @return int * @throws ErrorException */ public function actionDelete($type, $name) { $item = null; switch ($type) { case self::TYPE_ROLE: $item = $this->authManager->getRole($name); break; case self::TYPE_PERMISSION: $item = $this->authManager->getPermission($name); break; case self::TYPE_RULE: $item = $this->authManager->getRule($name); break; default: throw new InvalidParamException(self::invalidTypeMessage()); break; } if (is_null($item)) { throw new ErrorException("{$type} '{$name}' не найдена."); } $this->authManager->remove($item); return Controller::EXIT_CODE_NORMAL; }
public function remove($object) { if ($object->name == 'superuser') { return new Exception('Суперпользователя удалить невозможно!'); } return parent::remove($object); }
public function afterDelete() { $rbac = new DbManager(); $rbac->init(); $role = $rbac->createRole($this->name); $role->description = $this->title; $rbac->remove($role); $rbac->removeChildren($role); return parent::afterDelete(); }