Salut Franck,
je ne comprends pas ton problème. Il faut dire à ma décharge qu'il est
encore un peu tôt !
La définition du bouton est juste un fichier javascript et la définition de
la macro c'est un bout de php. En quoi c'est lié ?
Je veux bien plus de détails.
a+
Nicolas
Le 16 janvier 2015 07:54, Franck Paul <carnet.franck.paul(a)gmail.com> a
écrit :
Plop,
Je suis encore confronté à un défaut lié à l'ordre de chargement des
plugins et il s'avère qu'il serait intéressant d'avoir une boucle
supplémentaire, une fois celle qui appelle _prepend.php +
_admin.php/_public.php effectuée.
En effet certains traitements n'ont de sens qu'une fois tous les plugins
chargés. Par exemple les boutons qui s'invitent sur la barre d'outil d'un
éditeur ne doivent être initialisés qu'une fois que cet éditeur (lui aussi
un plugin depuis la 2.7) chargé et initialisé.
Utiliser la priorité (dans le _define.php) peut aider dans certains cas,
mais je suis en ce moment confronté à un cas où il faut, dans un plugin,
que je passe avant (définition d'une macro wiki) ET après (init d'un
bouton) un autre plugin (éditeur). Du coup ce n'est pas applicable.
Du coup une nouvelle boucle qui appellerait cette fois le _append.php (s'il
existe) de chaque plugin, construit de la même manière qu'un _prepend.php :
<?php
if (!defined('DC_RC_PATH')) { return; }
// public code
…
if (!defined('DC_CONTEXT_ADMIN')) { return false; }
// admin code
…
serait une solution.
Z'en dites les gens ?
--
Franck
--
Dev mailing list - Dev(a)list.dotclear.org -
http://ml.dotclear.org/listinfo/dev