vins Posted June 18, 2009 Share Posted June 18, 2009 Bonjour,J'avais vu passer il y a qq temps une discussion à propos de l'accés à une classe module dans le backOffice via un onglet mais je ne la retrouve pas ...QQ pourrait-il rapidement nous faire un topo à ce sujet ? La question que je me pose concerne surtout l'affichage du module dans le BO...Merci. Link to comment Share on other sites More sharing options...
StoreCommander Posted June 19, 2009 Share Posted June 19, 2009 Bonjour,si je me souviens bien il s'agissait de pouvoir ajouter un onglet au backoffice depuis un module sans avoir à mettre un fichier dans admin/tab et idem pour les classes, sans toucher au répertoire /classes. Link to comment Share on other sites More sharing options...
vins Posted June 19, 2009 Author Share Posted June 19, 2009 Oui c'est ça.En fait j'imagine que l'on crée un module mais que doit contenir la classe module pour pouvoir être affiché sur le BO ?Merci. Link to comment Share on other sites More sharing options...
StoreCommander Posted June 19, 2009 Share Posted June 19, 2009 Oui le but est que tout reste dans le dossier modules/lemodule pour éviter de recopier des fichiers partout avec les problèmes de droit d'écriture lors de l'installation et la perte de clarté dans la structure que cela générait. Link to comment Share on other sites More sharing options...
vins Posted June 19, 2009 Author Share Posted June 19, 2009 oui exactement. Je sais que celà avait été demandé par qq mais impossible de me souvenir qui...je ne pense pas que la structure de classe module appelée soit la même...bon si qq a une idée...merci. Link to comment Share on other sites More sharing options...
vins Posted August 12, 2009 Author Share Posted August 12, 2009 petit up !QQ a une idée ? Link to comment Share on other sites More sharing options...
virginie22 Posted August 18, 2009 Share Posted August 18, 2009 Bonjour,Cela m'intéresse également.J'aimerais créer un onglet donnant directement accès au module d'export des ventes ...... et comme j'y comprends rien à ce principe de class ...Une idée ? Link to comment Share on other sites More sharing options...
liandri Posted August 18, 2009 Share Posted August 18, 2009 Petit UP, car je pense cette réponse intéresse pas mal de monde !J'ai regardé sur la 1.2 il y a un champ "Module" dans l'ajout d'un nouvel onglet ! ne serai-ce pas le nom du module en lui même ?Mais alors quel classe choisir qui est obligatoire ?Le système est-il réellement prévu pour cette usage ? Link to comment Share on other sites More sharing options...
virginie22 Posted August 19, 2009 Share Posted August 19, 2009 Je confirme ... Link to comment Share on other sites More sharing options...
virginie22 Posted August 19, 2009 Share Posted August 19, 2009 Les onglets n'ont-ils pas été créés à cette fin : customiser le back office ?Si oui, existe-t-il une procédure simple pour les utiliser ??? Link to comment Share on other sites More sharing options...
Pierre Cat Posted August 20, 2009 Share Posted August 20, 2009 Moi aussi, j'ai essayé d'en créer mais sans succès.C'est dommage que personne, semble-t-il, ne sache nous expliquer clairement comment ça fonctionne.Un back office, paramétrable de cette façon, ce serait une réelle plus value de Prestashop face à ses concurrents... Link to comment Share on other sites More sharing options...
liandri Posted August 20, 2009 Share Posted August 20, 2009 Pour la création d'onglet avec des fonctions spécifiques qui relève de l'AdminTab c'est pas compliqué.En revanche rendre accessible la configuration d'un module depuis un onglet, c'est effectivement pas simple d'emblée !Je vais essayer de faire un corrélation de code entre l'AdminTab et les classes des modules !mais je garantie rien ! Link to comment Share on other sites More sharing options...
Pierre Cat Posted August 20, 2009 Share Posted August 20, 2009 Aaaah Liandri, nous serions nombreux à te témoigner d'une gratitude infinie ;-) Link to comment Share on other sites More sharing options...
liandri Posted August 20, 2009 Share Posted August 20, 2009 Aaaah Liandri, nous serions nombreux à te témoigner d'une gratitude infinie ;-) Je garantie rien ! Mais c'est sur que si un membre de la team Presta pouvait nous donner quelques pistes, nos souhaits seraient déjà derrière nous !Maintenant, ils peuvent pas passer en revu tous les posts je les comprends ! Link to comment Share on other sites More sharing options...
Pierre Cat Posted August 21, 2009 Share Posted August 21, 2009 Non mais je sais qu'on est lu mais une partie de la team est peut-être encore sous les cocotiers .... Link to comment Share on other sites More sharing options...
liandri Posted August 21, 2009 Share Posted August 21, 2009 J'ai un peu regardé hier soir vite fait ! et :/ j'ai pas eu de flash magique sur la mise en oeuvre !en revanche il doit y avoir une astuce à faire avec une surcharge du constructeur de la classe du module par le constructeur de la classe AdminTab !J'en sais trop rien en fait, et je ne veux pas m'avancer plus Link to comment Share on other sites More sharing options...
Pierre Cat Posted August 21, 2009 Share Posted August 21, 2009 La team, est-ce l'un d'entre vous peut nous éclairer (en language simple) : comment appeler un module dans le Back Office via un onglet ?Il y a un réel besoin et on piétine .... Link to comment Share on other sites More sharing options...
Julien Breux Posted August 21, 2009 Share Posted August 21, 2009 Bon, ok les gars, c'est moi qui m'y colle !Je vous fais un tuto sur mon blog au plus vite ! Link to comment Share on other sites More sharing options...
Julien Breux Posted August 22, 2009 Share Posted August 22, 2009 Voilà, j'ai finit le tutoriel, je vais me coucher...Pour l'orthographe et tout, je verrai -d-e-m-a-i-n- aujourd'hui !Si vous voulez faire un dont : [email protected] Link to comment Share on other sites More sharing options...
liandri Posted August 22, 2009 Share Posted August 22, 2009 Merci beaucoup ! Je vais prendre le temps de dévorer ça avec les yeux grands ouverts quand ils voudront bien se réveiller !Encore merci ! Link to comment Share on other sites More sharing options...
Julien Breux Posted August 22, 2009 Share Posted August 22, 2009 Merci, ça fait vraiment plaisir !N'hésitez pas à faire un dont, même de 1€uro Link to comment Share on other sites More sharing options...
Pierre Cat Posted August 22, 2009 Share Posted August 22, 2009 Nickel Julien, un grand merci !Je consacre quelques heures ce w-e à mettre tout ceci en application ... Link to comment Share on other sites More sharing options...
liandri Posted August 22, 2009 Share Posted August 22, 2009 Bon ! Déjà merci beaucoup Julien pour ta contribution, elle est très détaillée !Mais en fait, je pense pas qu'elle réponde à la question du topic de départ, car en fait c'est déjà le fonctionnement actuelle qui est d'écrit ! A la différence qu'il y a une automatisation de l'ajout de l'onglet très utile !En fait ta proposition décrit tout simplement comment créer des AdminTab perso depuis une classe php supplémentaire qui est de toute façon la même que celle présente dans le répertoire /admin??/tab/La demande est : Comment à partir du code d'un module (celui qui est développé pour la phase de configuration du module) peut-on lui ajouter un accès direct depuis les onglets de l'admin et non devoir faire modules > chercher son module qui peut être en bas de la longue liste > configurer.Attention, je tiens à dire que ton tuto est tout de même une mine d'or pour ceux qui cherche des infos pour bien partir dans la conception perso.A+ Link to comment Share on other sites More sharing options...
Julien Breux Posted August 22, 2009 Share Posted August 22, 2009 Je dirai que bêtement, il suffit de copier/coller la méthode getContent() du module et de le mettre dans la méthode display(); d'un tab ???Ou simplement : <?php // inclure le module class AdminTutorial extends AdminTab { public function display() { $module = new Tutorial; return $module->getContent(); } } ?> Link to comment Share on other sites More sharing options...
liandri Posted August 22, 2009 Share Posted August 22, 2009 oki je vais tester ça alors ! Merci Link to comment Share on other sites More sharing options...
liandri Posted August 22, 2009 Share Posted August 22, 2009 J'ai quelques p'tit soucis sur la mise en place de tout ça :/si je peux faire une petite correction : @copy(_PS_MODULE_DIR_.$this->name.'/logo.gif', _PS_IMG_DIR_.'t/'.$tabName.'.gif'); doit être remplacé par : @copy(_PS_MODULE_DIR_.$this->name.'/logo.gif', _PS_IMG_DIR_.'t/'.$tabClass.'.gif'); car sinon il va copier l'image depuis 'array' du $tabName !Sinon j'arrive pas à récupérer le getContent de ma classe module ! j'ai mis ça : include_once(PS_ADMIN_DIR.'/../classes/AdminTab.php'); include_once(PS_ADMIN_DIR.'/../modules/monmodule/monmodule.php'); class AdminMonModule extends AdminTab { public function display() { echo $this->l('Coucou'); $module = new monmodule; return $module->getContent(); } } Il m'affiche bien coucou dans le contenu de mon tab, mais il passe pas sur le getContent() PS : Mon AdminMonModule.php est dans /modules/momodule/ Link to comment Share on other sites More sharing options...
Julien Breux Posted August 22, 2009 Share Posted August 22, 2009 Je me suis trompé : echo $module->getContent(); Je corrige pour le copy (ajout de dernière minute)Merci Link to comment Share on other sites More sharing options...
liandri Posted August 22, 2009 Share Posted August 22, 2009 merci je testerai demain Link to comment Share on other sites More sharing options...
Julien Breux Posted August 22, 2009 Share Posted August 22, 2009 @liandri : merci d'avoir lu mon tuto ! merci de m'avoir corrigé ! enfin simple MERCI Link to comment Share on other sites More sharing options...
liandri Posted August 23, 2009 Share Posted August 23, 2009 C'est good ! Je pense que l'auteur du topic peut le passer en résoluCa marche parfaitement.Merci à julien qui nous a aussi donné une astuce d'installation et de désinstallation auto de l'onglet, plutot que de le mettre en manuel. Cette technique je vais maintenant l'appliquer pour tous mes futurs modules.Bravo l'artiste, et je bookmark ton blog A+ Link to comment Share on other sites More sharing options...
virginie22 Posted August 23, 2009 Share Posted August 23, 2009 Super boulot !Mais pour moi, béocienne en programmation, j'ai pas encore tout compris.Je voudrais mettre le module "Lettre d'information" dans un onglet au lieu qu'il soit perdu dans la liste des modules actifs et inactif.Keskejedoifér ???J'ai essayé de copier/coller le code de Julien pour l'installation d'un onglet mais ça ne marche quand je fais un install avec ces lignes de code en plus ...Quand je crée un onglet en reprenant la class "Blocknewsletter" et le module "Blocknewsletter", il affiche "onglet inexistant ...Heeeellllppp Link to comment Share on other sites More sharing options...
liandri Posted August 23, 2009 Share Posted August 23, 2009 si personne le fait avant moi aujourd'hui je pense te fournir le code dans la soirée !C'est dimanche, alors je vais me balader un peu quand même !A+ Link to comment Share on other sites More sharing options...
Julien Breux Posted August 23, 2009 Share Posted August 23, 2009 Voici le module en pièce jointe Il te créera un nouveau sous onglet dans module : Newsletter EDITION:Je vais bientôt créer une méthode setAcl($v, $e, $w, $d) afin que l'on puisse gérer les ACL (ou droits) dans les modules dès leur conception.De cette façon, si on utilise pas le setAcel(...), on se retrouve avec tous les droits (se qui est le cas lorsque l'on doit faire un ">> Configurer" et si on l'utilise (le cas pour un module devenu onglet) avec les 4 méthodes setReadAcl(true / false), setDeleteAcl(true / false), setViewAcl(true / false), setEditAcl(true / false);Voilà les amis, c'est tout pour aujourd'hui, je vais à la piscine ! newsletter_2_1.tar Link to comment Share on other sites More sharing options...
virginie22 Posted August 23, 2009 Share Posted August 23, 2009 Magnifique Julien ! Je n'en demandais pas tant ...Mille mercis !!!!!Si l'on veut appliquer cela à d'autres modules existants, est-ce que si on adapte ton fichier AdminNewsletter.php et la ligne d'install du modulexxx.php, cela pourrait fonctionner ??? Link to comment Share on other sites More sharing options...
Julien Breux Posted August 23, 2009 Share Posted August 23, 2009 N'hésitez pas à commenter sur mon blog, ça fait toujours plaisir Je ferai un tuto là dessus, mais en gros : OUI Link to comment Share on other sites More sharing options...
liandri Posted August 23, 2009 Share Posted August 23, 2009 Oui julien a répondu à ce qu'on attendait tous !Je pense même qu'il vient d'offrir une porte ouverte supplémentaire à tous développeurs qui souhaitent finaliser leur module.Donc juste un grand respect pour julien, et pour ma part, moi aussi ça sera un grand merci !A vos claviers maintenant Link to comment Share on other sites More sharing options...
Pierre Cat Posted August 23, 2009 Share Posted August 23, 2009 Je me joins à liandri et à tous les autres : un tout grand merci Julien et bravo pour la qualité du travail !!! Link to comment Share on other sites More sharing options...
probitaille Posted September 19, 2009 Share Posted September 19, 2009 Donc, si je regarde tout cela, il y a pas de moyen facile sans prog de déplacer l'accès à un module déjà existant ? Link to comment Share on other sites More sharing options...
probitaille Posted September 19, 2009 Share Posted September 19, 2009 Arf, je suis programmeur et dans le fond, en lisant vos commentaires et son blog, c'est très facile Wow, vraiment de la patience et de la volonté pour faire tout détaillé. Merci !! Link to comment Share on other sites More sharing options...
olea Posted December 10, 2009 Share Posted December 10, 2009 Un petit Up du sujet, pour la Team (j'ai aussi laissé un msg à Julien sur son blog)Où en est-on de la traduction et du logo de fil d'ariane pour les admintab situé en module ?Je suis sur une 1.2.5 et il me faut appliquer les conseils de Julien pour la traduction de l'AdminTab situé en module et de copier l'icone dans le répertoire img/tCela n'avait-il pas été résolu ?Faut-il ouvrir un report dans le bug tracker ?MerciOlivier Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now