diff --git a/src/plainui/jinja2/plainui/base.html b/src/plainui/jinja2/plainui/base.html index 853fc30cd1ac7529f6fdca1c6f6880506273f40c..a7f6dcf1e65e9d2422e784d3b4079c64a9d0073f 100644 --- a/src/plainui/jinja2/plainui/base.html +++ b/src/plainui/jinja2/plainui/base.html @@ -2,12 +2,16 @@ {% import "plainui/components/title.html" as titleMacro with context %} {% import "plainui/components/header_buttons.html" as hbtns with context %} -{% macro menuitem(label, icon, active) -%} +{% macro menuitem(item) -%} +{% set active = item.url and request.path.startswith(item.url) %} <li class="nav-item"> - <a href="#" class="nav-link {% if active %}active{% else %}text-white{% endif %} d-flex gap-2 align-items-center"> - <i class="bi bi-{{ icon }}"></i> + <a + href="{{ item.url }}" + class="nav-link {% if active %}active{% else %}text-white{% endif %} d-flex gap-2 align-items-center" + title="{{ item.title }}"> + <i class="bi bi-{{ item.icon }}"></i> <span> - {{ label }} + {{ item.label }} </span> </a> </li> @@ -158,49 +162,18 @@ <div class="overflow-y-scroll" style="height: calc(100vh - 172px);"> <div class="p-3 pt-0"> + {% for category in conf.get_navigation_tree() %} <span class="navbar-text"> Irgendwas </span> - <ul class="nav nav-pills flex-column mb-auto"> - {{ menuitem("Home", 'house-fill') }} - {{ menuitem("Info", 'info-circle-fill', True) }} - {{ menuitem("Home", 'house-fill') }} - {{ menuitem("Info", 'info-circle-fill') }} - {{ menuitem("Home", 'house-fill') }} - {{ menuitem("Info", 'info-circle-fill') }} - </ul> - - <hr> - <span class="navbar-text"> - Besucherinformationen - </span> <ul class="nav nav-pills flex-column mb-auto"> - {{ menuitem("Home", 'house-fill') }} - {{ menuitem("Info", 'info-circle-fill') }} - {{ menuitem("Home", 'house-fill') }} - {{ menuitem("Info", 'info-circle-fill') }} - {{ menuitem("Home", 'house-fill') }} - {{ menuitem("Info", 'info-circle-fill') }} - {{ menuitem("Home", 'house-fill') }} - {{ menuitem("Info", 'info-circle-fill') }} + {% for item in category.children %} + {{ menuitem(item) }} + {% endfor %} </ul> - <hr> - - <span class="navbar-text"> - Quicklinks - </span> - <ul class="nav nav-pills flex-column mb-auto"> - {{ menuitem("Home", 'house-fill') }} - {{ menuitem("Info", 'info-circle-fill') }} - {{ menuitem("Home", 'house-fill') }} - {{ menuitem("Info", 'info-circle-fill') }} - {{ menuitem("Home", 'house-fill') }} - {{ menuitem("Info", 'info-circle-fill') }} - {{ menuitem("Home", 'house-fill') }} - {{ menuitem("Info", 'info-circle-fill') }} - </ul> + {% endfor %} </div> </div> </div>