Modifier l'editeur WYSIWYG avec un module ?

Modifier l'editeur WYSIWYG avec un module ?

par rouanet brice,
Nombre de réponses : 1
Bonjour,

je voudrai savoir si il est possible de faire un module qui rajoute une icone dans l'editeur WYSIWYG que l'on retrouve dans les pages d'edition ?

Merci,
Brice.
Moyenne des évaluations  -
En réponse à rouanet brice

Re: Modifier l'editeur WYSIWYG avec un module ?

par Valery Fremaux,

Oui c'est possible. Pour celà il vaut mieux écrire un "plugin" (exemple joint)

que l'on rajoute dans /lib/editor/htmlarea/editors

ce sont les lignes

 cfg.registerButton("CT-track", tt["Tracker properties"], editor.imgURL("insertTracker.gif", "Tracker"), false,
      function(editor, id) {
       self.buttonPress(editor, id);
      });

dans le constructeur du plugin qui permettent de rajouter un bouton dans la ligne de boutons, le "handler" du bouton est la méthode (dans notre cas Tracker.prototype.buttonPress() ) nommé dans le plugin. L'image se situe dans le sous répertoire img du plugin.

S'est l'avantage d'utiliser le plugin qui localise à un endroit tout ce dont on a besoin sous la main pour faire le bouton et ce qu'il est censé déclencher.  

Par contre, je n'ai pas réussi à charger le bouton du tracker dans la barre d'outils de l'éditeur dans la page, je ne le charge que dans la version "fullscreen", ce qui m'a demandé de toucher au fichier /lib/editor/hrmlarea/popups/fullscreen.php :

<script type="text/javascript" src="../htmlarea.php<?php print($id != "")?"?id=$id":"";?>"></script>
<script type="text/javascript" src="../lang/en.php"></script>
<script type="text/javascript" src="../dialog.js"></script>
<script type="text/javascript" src="../plugins/TableOperations/table-operations.js"></script>
<script type="text/javascript" src="../plugins/TableOperations/lang/<?= $USER->lang ?>.js"></script>
<script type="text/javascript" src="../plugins/Tracker/tracker.php<?php print($id != "")?"?id=$id":"";?>"></script>
<script type="text/javascript" src="../plugins/Tracker/lang/<?= $USER->lang ?>.js"></script>

Lignes rajoutées

Une prog assez délicate et casse-gueule, en Javascript, mais on finit par s'en sortir.

Je peux te répondre sur l'exemple, si tu as des questions sur comment organiser le circuit de réaction à la commande du bouton.