fix: render admin menus conditionally

This commit is contained in:
Björn Fromme
2026-08-17 16:30:12 +02:00
parent b5f1163e2d
commit 920b09dacc
+7 -6
View File
@@ -1,9 +1,10 @@
{% extends 'base_admin.html.twig' %} {% extends 'base_admin.html.twig' %}
{% block body %} {% block body %}
{% set main_menu = is_granted('ROLE_ADMIN') ? 'admin_main' : 'groups_main' %}
<div class="max-w-screen-2xl mx-auto px-4 lg:px-8 lg:grid lg:grid-cols-4 gap-8 py-8"> <div class="max-w-screen-2xl mx-auto px-4 lg:px-8 lg:grid lg:grid-cols-4 gap-8 py-8">
<div class="lg:col-span-4 flex items-center justify-between pb-4 lg:pb-0"> <div class="lg:col-span-4 flex items-center justify-between pb-4 lg:pb-0">
<a href="{{ path(app.user ? 'app_admin_dashboard' : 'app_security_login') }}"> <a href="{{ path(app.user ? 'app_admin_dashboard' : 'app_login') }}">
<img class="h-8 w-auto" src="{{ asset('build/images/logo_ep.svg') }}" alt="My E&amp;P Admin"> <img class="h-8 w-auto" src="{{ asset('build/images/logo_ep.svg') }}" alt="My E&amp;P Admin">
</a> </a>
{% if app.user %} {% if app.user %}
@@ -18,7 +19,9 @@
{% endif %} {% endif %}
</div> </div>
<div class="hidden lg:block sticky top-0 h-screen"> <div class="hidden lg:block sticky top-0 h-screen">
{{ knp_menu_render(knp_menu_get('admin_main')) }} {% if app.user %}
{{ knp_menu_render(knp_menu_get(main_menu)) }}
{% endif %}
</div> </div>
<div class="lg:col-span-3"> <div class="lg:col-span-3">
{% block content %}{% endblock %} {% block content %}{% endblock %}
@@ -37,10 +40,8 @@
</button> </button>
</div> </div>
<div class="w-full h-full p-8 pt-0 overflow-y-scroll"> <div class="w-full h-full p-8 pt-0 overflow-y-scroll">
{% if is_granted('ROLE_ADMIN') %} {% if app.user %}
{{ knp_menu_render(knp_menu_get('admin_main')) }} {{ knp_menu_render(knp_menu_get(main_menu)) }}
{% elseif is_granted('ROLE_GROUPS_MANAGER') %}
{{ knp_menu_render(knp_menu_get('groups_main')) }}
{% endif %} {% endif %}
</div> </div>
</div> </div>