Menu active links
This commit is contained in:
@@ -1,7 +1,24 @@
|
|||||||
<?php
|
<?php
|
||||||
function isActive($link, $checksubmenus)
|
function isActive($link, $submenus)
|
||||||
{
|
{
|
||||||
return false;
|
|
||||||
|
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)
|
function buildMenu($menu, $ismobile)
|
||||||
@@ -13,7 +30,7 @@ function buildMenu($menu, $ismobile)
|
|||||||
}
|
}
|
||||||
|
|
||||||
$submenu = count($item->submenu) > 0;
|
$submenu = count($item->submenu) > 0;
|
||||||
$isactive = isActive($item->link, !$ismobile);
|
$isactive = isActive($item->link, $ismobile ? [] : $item->submenu);
|
||||||
$icon = "";
|
$icon = "";
|
||||||
$isplayer = false;
|
$isplayer = false;
|
||||||
$isFile = false;
|
$isFile = false;
|
||||||
@@ -52,7 +69,7 @@ function buildMenu($menu, $ismobile)
|
|||||||
. buildMenu($item->submenu, $ismobile)
|
. buildMenu($item->submenu, $ismobile)
|
||||||
. "\t\t\t</ul>\n";
|
. "\t\t\t</ul>\n";
|
||||||
}
|
}
|
||||||
$result .= "\t\t</li>\n";
|
$result .= "\t\t</li>\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
return $result;
|
return $result;
|
||||||
@@ -61,7 +78,7 @@ function buildMenu($menu, $ismobile)
|
|||||||
<nav class="d-none d-md-flex">
|
<nav class="d-none d-md-flex">
|
||||||
<div></div>
|
<div></div>
|
||||||
<ul class="menu d-none d-lg-block">
|
<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>
|
<a href="/" title="Nieuws">Nieuws</a>
|
||||||
</li>
|
</li>
|
||||||
{!! buildMenu($items, false) !!}
|
{!! buildMenu($items, false) !!}
|
||||||
@@ -80,7 +97,7 @@ function buildMenu($menu, $ismobile)
|
|||||||
<a href="javascript:void(0)"><i class="fa-solid fa-xmark"></i></a>
|
<a href="javascript:void(0)"><i class="fa-solid fa-xmark"></i></a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li class="{{isActive('/', false) || isActive('/nieuws', false) ? "selected" : ""}}">
|
<li class="{{isActive('/', []) || isActive('/nieuws', []) ? "selected" : ""}}">
|
||||||
<a href="/" title="Nieuws">Nieuws</a>
|
<a href="/" title="Nieuws">Nieuws</a>
|
||||||
</li>
|
</li>
|
||||||
{!! buildMenu($items, true) !!}
|
{!! buildMenu($items, true) !!}
|
||||||
|
|||||||
Reference in New Issue
Block a user