123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- <?php
- namespace common\modules\rbac\models\searchs;
- use common\modules\rbac\components\RouteRule;
- use common\modules\rbac\models\BizRule as MBizRule;
- use Yii;
- use yii\base\Model;
- use yii\data\ArrayDataProvider;
- /**
- * Description of BizRule.
- *
- * @author Misbahul D Munir <misbahuldmunir@gmail.com>
- *
- * @since 1.0
- */
- class BizRule extends Model
- {
- /**
- * @var string name of the rule
- */
- public $name;
- public function rules()
- {
- return [
- [['name'], 'safe'],
- ];
- }
- /**
- * {@inheritdoc}
- */
- public function attributeLabels()
- {
- return [
- 'name' => Yii::t('rbac', 'Name'),
- 'className' => Yii::t('rbac', 'className'),
- ];
- }
- /**
- * Search BizRule.
- *
- * @param array $params
- *
- * @return \yii\data\ActiveDataProvider|\yii\data\ArrayDataProvider
- */
- public function search($params)
- {
- /* @var \yii\rbac\Manager $authManager */
- $authManager = Yii::$app->authManager;
- $models = [];
- $included = !($this->load($params) && $this->validate() && trim($this->name) !== '');
- foreach ($authManager->getRules() as $name => $item) {
- if ($name != RouteRule::RULE_NAME && ($included || stripos($item->name, $this->name) !== false)) {
- $models[$name] = new MBizRule($item);
- }
- }
- return new ArrayDataProvider([
- 'allModels' => $models,
- ]);
- }
- }
|