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; }