Example #1
0
 public function showSidebar($allowed_routes)
 {
     $module_array = App\Module::orderBy('order', 'DESC')->get();
     $menu = "";
     foreach ($module_array as $key => $value) {
         $number = 0;
         $ul = "";
         foreach ($value->feature as $feature) {
             $li = "";
             $route = json_decode($feature->url_action);
             if ($route == NULL) {
                 $route = $feature->url_action;
             } else {
                 $route = $route[0];
             }
             if ($feature->is_menu && $feature->parent_id == 0 && in_array($route, $allowed_routes)) {
                 $link = Route::has($route) ? route($route) : "#";
                 $items = FeatureNode::defaultOrder()->descendantsOf($feature->id);
                 $items->linkNodes();
                 $items = $items->toTree();
                 $li = $this->getMenuchildren($items, $allowed_routes, $number);
                 if ($number >= 1) {
                     $li = "<li><a href='{$link}'>{$feature->name_feature}<i class='fa fa-angle-left pull-right'></i></a><ul class='treeview-menu'>{$li}</ul></li>";
                 } else {
                     $li = "";
                 }
             }
             $ul .= $li;
         }
         $menu .= $ul;
     }
     return $menu;
 }
 /**
  * Show tree , use send data from client ajax
  * @param  [int] $id
  * @return void
  */
 public function showTree($id)
 {
     $features = Feature::where('module_id', '=', $id)->where('parent_id', '=', 0)->get();
     if (count($features) == 0) {
         echo "";
     } else {
         echo "<table class='tree table'>";
         foreach ($features as $k_fea => $val_fea) {
             echo "<tr class='treegrid-" . $val_fea->id . "'><td>" . $val_fea->name_feature . "</td></tr>";
             $items = FeatureNode::descendantsOf($val_fea->id);
             $items->linkNodes();
             $items = $items->toTree();
             echo $this->echoRecurTreeView($items);
         }
         echo "</table>";
     }
 }