/** * * @param \yii\base\ActionEvent $event */ public function onSetLeftNav($event) { $group = \Yii::$app->getRequest()->get("menu-group", null); if ($group == null) { return \Yii::$app->getResponse()->redirect(Url::to(["/{$this->id}/default/controlpanel", "menu-group" => ModuleGroupEnmu::SYSTEM])); } else { $parameters = Hook::trigger(static::EVENT_SYSTEM_GROUPNAV)->parameters; $navs = $parameters->get($group, []); $groupParams = ["menu-group" => $group]; // 根据控制器重定向导航第一个页面 if (\Yii::$app->controller->getRoute() == ltrim(\Yii::$app->defaultRoute, "/")) { $nav = Util::getFirstNav($navs); if ($nav) { return \Yii::$app->getResponse()->redirect(Url::to(array_merge($nav["url"], $groupParams))); } } Hook::on(\hass\backend\Module::EVENT_ADMIN_LEFTNAV, function ($event) use($navs) { $event->parameters->fromArray($navs); }); } }