/** * @inheritdoc */ public function init() { parent::init(); // set upload config $this->uploadConfig = [$this->crudModelsClass['main'] => []]; $this->on(self::EVENT_DELETE, function ($event) { foreach ($event->extraData['models'] as $model) { CmsMenuSimpleService::refreshMenu($model->cms_simple_menu_group_id); } }); $this->on(self::EVENT_SAVE_EDIT, function ($event) { CmsMenuSimpleService::refreshMenu($event->extraData['models']['main']->cms_simple_menu_group_id); }); $this->on(self::EVENT_SAVE_TRANSLATE, function ($event) { $listId = []; foreach ($event->extraData['models'] as $model) { if (!in_array($model->cms_simple_menu_id, $listId)) { $listId[] = $model->cms_simple_menu_id; } } $cmsSimpleMenus = CmsSimpleMenu::find()->select('cms_simple_menu_group_id')->where(['id' => $listId])->asArray()->all(); foreach ($cmsSimpleMenus as $cmsSimpleMenu) { CmsMenuSimpleService::refreshMenu($cmsSimpleMenu['cms_simple_menu_group_id']); } }); }
/** * @inheritdoc */ public function init() { if ($this->menuGroupId === null) { throw new \yii\base\InvalidParamException(); } $this->models = CmsSimpleMenu::getDb()->cache(function ($db) { return CmsSimpleMenu::find()->innerJoinWith(['cmsSimpleMenuI18ns' => function ($query) { $query->where(['i18n_id' => Yii::$app->language]); }])->where(['cms_simple_menu_group_id' => $this->menuGroupId])->orderBy('position')->asArray()->all(); }, 0, new TagDependency(['tags' => [CmsMenuSimpleService::getCacheTag(), CmsMenuSimpleService::getCacheTag($this->menuGroupId)]])); }
/** * @inheritdoc */ public function init() { parent::init(); // set upload config $this->uploadConfig = [$this->crudModelsClass['main'] => []]; $this->on(self::EVENT_DELETE, function ($event) { foreach ($event->extraData['models'] as $model) { CmsMenuSimpleService::refreshMenu($model->id); } }); }