|
From: | Régis Houssin |
Subject: | Re: [Dolibarr-dev] [Dolibarr-user] Gestion des menus |
Date: | Fri, 03 Aug 2012 20:35:42 +0200 |
User-agent: | Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:14.0) Gecko/20120713 Thunderbird/14.0 |
Bonjour il est préférable de s'inscrire et de poster sur la liste des développeur pour ce type de question (address@hidden) la liste address@hidden étant réservée à l'utilisation de Dolibarr pour répondre à ta question: j'avoue que ce n'est pas évident au premier abord :-) les sous menus d'un menu gauche principal doivent avoir un "fk_menu" correspondant à la position de ce menu principal voici un exemple: 1 Gestion des abonnés 'fk_menu'=>'r=0' 2 Liste des abonnés 'fk_menu'=>'r=1' 3 Nouvel abonné 'fk_menu'=>'r=1' jusque là c'était correct, ensuite : 4 Gestion des abonnements 'fk_menu'=>'r=0' 5 Liste des abonnements 'fk_menu'=>'r=4' 6 Nouvel abonnement 'fk_menu'=>'r=4' le paramètre "position" (700, 701, etc...) sert pour ordonner les menus entre eux mais pas pour les lier entre eux Le 03/08/12 19:38, Marc-Henri Pamiseux a écrit : > 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, > > > _______________________________________________ > Dolibarr-user mailing list > address@hidden > https://lists.nongnu.org/mailman/listinfo/dolibarr-user Cordialement, -- Régis Houssin --------------------------------------------------------- Cap-Networks Cidex 1130 34, route de Gigny 71240 MARNAY FRANCE VoIP: +33 1 83 62 40 03 GSM: +33 6 33 02 07 97 Web: http://www.cap-networks.com/ Email: address@hidden Dolibarr developer: address@hidden Web Portal: http://www.dolibarr.fr/ SaaS offers: http://www.dolibox.fr/ Shop: http://www.dolistore.com/ Development platform: https://doliforge.org/ --------------------------------------------------------- |
[Prev in Thread] | Current Thread | [Next in Thread] |