Esempio n. 1
0
 /**
  *
  * @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);
         });
     }
 }