Bonjour à tous.
Je suis en train de faire un site dans lequel je ne dois afficher des items de menu que si l'utilisateur y a accès. Le menu a (actuellement) 3 niveaux.
J'ai donc créé un View_Helper_NavMenu à qui je passe le $this->container depuis le template du menu.
J'ai une fonction (récursive) de parcours du menu dans laquelle je peux supprimer les items auxquels l'utilisateur n'a pas droit, jusqu'ici tout va bien.
Mon souci est que ces items sont ceux de plus bas niveau (les feuilles de l'arborescence), mais je n'arrive pas à trouver un moyen de supprimer les branches "vides" (qui elles n'ont pas d'infos sur les droits utilisateur).
Pour donner un exemple:
Si un utilisateur n'a pas accès à "Comptes" et "Droits d'accès", je veux aussi supprimer du container "Utilisateurs".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Administration +- Utilisateurs | +- Comptes | `- Droits d'accès +- Modules +- Module 1 +- Module 2 `- Module 3
Quelqu'un aurait une idée du principe que je pourrais utiliser ? Parce qu'à force de faire mes fonctions dans un sens puis dans l'autre, je ne sais plus où j'en suis.
Merci d'avance !
Partager