Menu active links

This commit is contained in:
NH Gooi
2025-07-17 15:40:31 +02:00
parent 643efdb404
commit 11e1a3ea54

View File

@@ -1,7 +1,24 @@
<?php
function isActive($link, $checksubmenus)
function isActive($link, $submenus)
{
if(count($submenus) > 0) {
foreach ($submenus as $subitem) {
if (isActive($subitem->link, $subitem->submenu)) {
return true;
}
}
}
if($link == "#") {
return false;
}
if ($link == "/") {
return $_SERVER["REQUEST_URI"] == "/" || $_SERVER["REQUEST_URI"] == "";
}
return (substr($_SERVER["REQUEST_URI"], 0, strlen($link)) == $link);
}
function buildMenu($menu, $ismobile)
@@ -13,7 +30,7 @@ function buildMenu($menu, $ismobile)
}
$submenu = count($item->submenu) > 0;
$isactive = isActive($item->link, !$ismobile);
$isactive = isActive($item->link, $ismobile ? [] : $item->submenu);
$icon = "";
$isplayer = false;
$isFile = false;
@@ -61,7 +78,7 @@ function buildMenu($menu, $ismobile)
<nav class="d-none d-md-flex">
<div></div>
<ul class="menu d-none d-lg-block">
<li class="{{isActive('/', false) || isActive('/nieuws', false) ? "selected" : ""}}">
<li class="{{isActive('/', []) || isActive('/nieuws', []) ? "selected" : ""}}">
<a href="/" title="Nieuws">Nieuws</a>
</li>
{!! buildMenu($items, false) !!}
@@ -80,7 +97,7 @@ function buildMenu($menu, $ismobile)
<a href="javascript:void(0)"><i class="fa-solid fa-xmark"></i></a>
</div>
</li>
<li class="{{isActive('/', false) || isActive('/nieuws', false) ? "selected" : ""}}">
<li class="{{isActive('/', []) || isActive('/nieuws', []) ? "selected" : ""}}">
<a href="/" title="Nieuws">Nieuws</a>
</li>
{!! buildMenu($items, true) !!}