[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Dolibarr-user] Gestion des menus
From: |
Marc-Henri Pamiseux |
Subject: |
[Dolibarr-user] Gestion des menus |
Date: |
Fri, 03 Aug 2012 19:38:08 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux i686; rv:12.0) Gecko/20120430 Thunderbird/12.0.1 |
Bonjour,
Je rencontre un problème, probablement de compréhension, quand à la
manière de déclarer les "LeftMenu" dans un module.
Je suis en train de créer un module intitulé "publication".
J'ai donc tout naturellement créé la classe modPublication qui étend
DolibarrModules. La déclaration de cette classe se situe dans le fichier
de description du module, à savoir :
htdocs/publication/core/modules/modPublication.class.php
Je souhaiterais sur la même page, pouvoir créer deux blocs leftmenu
distinct, un peu dans l'esprit de ce qui s'affiche sur le module Tiers :
* Tiers
Nouveau tiers
Liste prospects
* Contact/Adresses
Nouveau contact/adresse
Liste
Je souhaiterais créer la même présentation, mais avec les intitulés
suivants :
* Gestion des abonnés
Liste des abonnés
Nouvel abonné
* Gestion des abonnements
Liste des abonnements
Nouvel abonnement
Pour faire cela, j'ai donc créé un topmenu qui se nomme "publication"
avec "'fk_menu'=>0"
S'en suit la déclaration d'un leftmenu de rang=0 nommé PubMenuSubscriber
(correspondant à l'intitulé "Gestion des abonnés") puis la déclaration
d'un leftmenu de rang=1 nommé PubMenuSubscriberList (correspondant à
l'intitulé "Liste des abonnés"). La déclaration du menu intitulé "Nouvel
abonné" suit la même logique que précédemment.
Jusque là, tout va bien.
C'est lorsque je souhaites créer un nouveau menu de rang=0 que les
choses se compliquent. Enfin, pas tout à fait puisque le rang=0
s'affiche correctement, mais c'est le nouveau rang=1 qui devrait
s'afficher sous le menu intitulé "Gestion des abonnements" qui dérape et
s'en va s'afficher sous le menu intitulé "Nouvel abonné". Il en va de
même avec le menu intitulé "Nouvel abonnement".
Voici donc ce que j'obtiens lorsque j'active mon module Publication :
* Gestion des abonnés
Liste des abonnés
Nouvel abonné
Liste des abonnements
Nouvel abonnement
* Gestion des abonnements
C'est je pense une histoire de dépendance et de rang d'une entrée de
leftmenu puisque si je modifie à la main la table llx_menu, je parviens
à un affichage cohérent. Voici un extrait de cette table avant mon
intervention :
rowid module type fk_menu position
----------------------------------------
207 publication top 0 700
208 publication left 207 701
209 publication left 208 702
210 publication left 208 703
211 publication left 207 711
212 publication left 208 712
213 publication left 208 713
Comme on peut le voir, les rowid 212 et 213 dépendent de l'entrée 208.
Ce qui se traduit par : les entrées de menu "Liste des abonnements" et
"Nouvel abonnement" sont vues comme des sous menus de "Gestion des abonnés".
Si je change manuellement dans la base de données les enregistrements
conformément au modèle suivant :
rowid module type fk_menu position
----------------------------------------
207 publication top 0 700
208 publication left 207 701
209 publication left 208 702
210 publication left 208 703
211 publication left 207 711
212 publication left 211 712
213 publication left 211 713
Tout s’affiche correctement.
Cependant, dès lors que je désactive le module puis je le ré-active, je
perds cet ordre pour revenir à l'ordre précédent.
Comment puis-je faire en sortes d'associer dans le code l’ordre décrit
précédemment ?
Voici en pièce jointe comment j'ai procédé pour déclarer ce menu.
Merci de votre aide,
@ vous lire,
--
Marc-Henri Pamiseux
SARL Libricks
Maison de la technopole
6, rue Léonard de Vinci - BP 0119
53001 LAVAL Cedex
declaration_menu.txt
Description: Text document
signature.asc
Description: OpenPGP digital signature
- [Dolibarr-user] Gestion des menus,
Marc-Henri Pamiseux <=