{# templates/manager/hierarchique/index.html.twig #} {% extends 'manager/manager_base.html.twig' %} {# Définition de la macro récursive pour le rendu de l'arborescence #} {% macro renderTree(structures) %} {% for structure in structures %}
  • {% if structure.children is not empty %} {# ATTENTION : On change l'icône pour qu'elle pointe vers le bas par défaut (développé) #} {# La classe "toggle-children" tournera l'icône à 90deg pour simuler le "fermé" #} {% endif %} {{ structure.nom }} {% if structure.code is not empty %} ({{ structure.code }}){% endif %}
    {# PARAMÈTRE CONSERVÉ : 'id' #}
    {# Modale de confirmation de suppression #} {% if structure.children is not empty %} {# ATTENTION : On supprime la classe "collapse" pour que le contenu soit affiché par défaut #} {% endif %}
  • {% endfor %} {% endmacro %} {% block title %}Gestion de la Hiérarchie{% endblock %} {% block content %}

    Gestion de la Hiérarchie des Postes

    {# Affichage des messages flash (inchangé) #} {% for type, messages in app.flashes %} {% for message in messages %} {% endfor %} {% endfor %}
    Arborescence
    {% if rootStructures is not empty %}
      {{ _self.renderTree(rootStructures) }}
    {% else %}
    Aucune structure n'a été trouvée. Cliquez sur **Nouvelle structure** pour commencer.
    {% endif %}
    {# Modale générique pour les actions (inchangée) #} {% endblock %} {% block javascripts %}     {{ parent() }}          {% endblock %}