@include('_partials.macros',["height"=>20]) {{config('variables.templateName')}}
    @foreach ($menuData[0]->menu as $menu) {{-- adding active and open class if child is active --}} {{-- menu headers --}} @if (isset($menu->menuHeader))
  • {{ __($menu->menuHeader) }}
  • @else {{-- active menu method --}} @php $activeClass = null; $currentRouteName = Route::currentRouteName(); $currentPath = request()->path(); $currentUrl = request()->url(); // Special handling for dashboard - only match exact route $isDashboard = isset($menu->slug) && ($menu->slug === 'DASHBOARD' || $menu->slug === 'dashboard'); // Check if menu has URL and current path matches $urlMatches = false; if (isset($menu->url)) { $menuUrl = parse_url(url($menu->url), PHP_URL_PATH); $menuUrl = ltrim($menuUrl, '/'); $currentPathClean = ltrim($currentPath, '/'); // For dashboard, only match if route name is exactly 'dashboard' if ($isDashboard) { $urlMatches = ($currentRouteName === 'dashboard'); } else { if ($menuUrl === $currentPathClean) { $urlMatches = true; } // Check if current path starts with menu URL (for nested routes) elseif (strpos($currentPathClean, $menuUrl) === 0 && $menuUrl !== '') { $urlMatches = true; } } } // Check route name match $routeMatches = false; if (isset($menu->slug)) { // For dashboard, only exact route name match if ($isDashboard) { $routeMatches = ($currentRouteName === 'dashboard'); } elseif ($currentRouteName === $menu->slug) { $routeMatches = true; } // Check if route name contains slug (for nested routes) elseif (str_contains($currentRouteName, $menu->slug) && strpos($currentRouteName, $menu->slug) === 0) { $routeMatches = true; } } if ($urlMatches || $routeMatches) { if (isset($menu->submenu)) { $activeClass = 'active open'; } else { $activeClass = 'active'; } } // For submenus, check if any child is active elseif (isset($menu->submenu)) { $hasActiveChild = false; foreach ($menu->submenu as $submenu) { $submenuActive = false; if (isset($submenu->url)) { $submenuUrl = parse_url(url($submenu->url), PHP_URL_PATH); $submenuUrl = ltrim($submenuUrl, '/'); if ($submenuUrl === $currentPathClean || strpos($currentPathClean, $submenuUrl) === 0) { $submenuActive = true; } } if (isset($submenu->slug) && ($currentRouteName === $submenu->slug || (str_contains($currentRouteName, $submenu->slug) && strpos($currentRouteName, $submenu->slug) === 0))) { $submenuActive = true; } if ($submenuActive) { $hasActiveChild = true; break; } } if ($hasActiveChild) { $activeClass = 'active open'; } } @endphp {{-- main menu --}}
  • target) and !empty($menu->target)) target="_blank" @endif> @isset($menu->icon) @endisset
    {{ isset($menu->name) ? __($menu->name) : '' }}
    @isset($menu->badge)
    {{ $menu->badge[1] }}
    @endisset
    {{-- submenu --}} @isset($menu->submenu) @include('layouts.sections.menu.submenu',['menu' => $menu->submenu]) @endisset
  • @endif @endforeach