Files
nhgooi.nl/website/resources/views/_menu.blade.php

72 lines
1.9 KiB
PHP

<?php $menu = array(
"Nieuws" => "/nieuws",
"Radio" => array(
"" => "/radio",
"Luister live" => "/luister/live",
"Regionieuws" => "/luister/regionieuws",
"Programmagids" => "/radio/gids",
"Fragment gemist" => "/radio/gemist",
"Zondagsdienst" => "/kerkdienst"),
"TV" => array(
"Kijk live" => "/kijk/live"),
"Regioagenda" => "/agenda",
"Contact" => "/contact");
?>
<?php
function isActive($link, $checksubmenus) {
if(is_array($link)) {
if(!$checksubmenus) { return false; }
foreach($link as $item => $link) {
if(isActive($link, $checksubmenus)) { return true; }
}
return false;
}
return (substr($_SERVER["REQUEST_URI"], 0, strlen($link)) == $link);
}
function buildMenu($menu, $ismobile) {
$result = "";
foreach($menu as $title => $link) {
if($title == "") { continue; }
$submenu = is_array($link);
$isactive = isActive($link, !$ismobile);
$submenulink = $submenu && isset($link[""]) ? $link[""] : "#";
if(!$submenu && substr($link, 0, 8) == "/luister") { $icon = "<span class='fas fa-headphones'></span>&nbsp;"; }
else { $icon = ""; }
$result .=
"<li class=\"" . ($submenu ? "submenu" : "") . ($isactive ? " selected" : "") . "\">
<a href=\"" . ($submenu ? $submenulink : $link) . "\" title=\"{$title}\">{$icon}{$title}</a>";
if($submenu) {
$result .= "\t\t\t<ul>\n"
. buildMenu($link, $ismobile)
. "\t\t\t</ul>\n";
}
$result .= "\t\t</li>\n";
}
return $result;
}
?>
<nav>
<!-- TODO: Mark selected, recursive menus, listen / watch icons -->
<ul class="sf-menu">
{!! buildMenu($menu, false) !!}
</ul>
</nav>
<div class="mobile_menu_container">
<a href="#" class="mobile-menu-switch">
<span class="line"></span>
<span class="line"></span>
<span class="line"></span>
</a>
<div class="mobile-menu-divider"></div>
<nav>
<ul class="mobile-menu">
{!! buildMenu($menu, true) !!}
</ul>
</nav>
</div>