Ejemplo n.º 1
0
 /**
  * 查询子节点数据
  * @param type $params
  * array(rootID => 上级ID
  *       scope  => 查询范围
  * )
  * @return boolean
  */
 public static function getChild($params)
 {
     $menuArr = array();
     if ($params["rootID"] && $params["scope"]) {
         //获取菜单模型
         $menuModel = FrontMenu::model();
         $scope = $params["scope"];
         //获取参数
         $model = $menuModel->{$scope}()->parent($params["rootID"])->findAll();
         //获取查询范围
         $scopes = $menuModel->scopes();
         $columns = explode(",", $scopes[$scope]["select"]);
         //赋值
         foreach ($model as $key => $m) {
             if (isset($params["role"]) && !in_array($m->ID, explode(',', $params["role"])) && $m->Name != "工作台") {
                 continue;
             }
             //工作台菜单如果没有菜单图标则表示不显示
             if ($scope == "stage" && !$m->MenuIcon) {
                 continue;
             }
             foreach ($columns as $column) {
                 $menuArr[$key][lcfirst($column)] = $m->{$column};
             }
             //获取子菜单
             if ($scope == "sliderbar" || $scope == 'nav') {
                 $pamArr = array("rootID" => $m->ID, "scope" => $scope);
                 if (isset($params["role"])) {
                     $pamArr["role"] = $params["role"];
                 }
                 $menuArr[$key]["children"] = FrontMenu::getChild($pamArr);
             }
         }
     }
     return $menuArr;
 }
Ejemplo n.º 2
0
 public function getFootMenu()
 {
     return FrontMenu::getChild(array("rootID" => 73, "scope" => "sliderbar"));
 }