Fork me on GitHub






Intégrer le choix d'un éditeur de texte dans un module
Semi pro
Inscrit: 13/04/2006 23:26
De Aix en Provence
Messages: 1751
Afin d'éviter des heures de recherche et d'essais je vous fais part de mes conclusions pour intégrer un éditeur de texte (déjà installé dans xoops) dans un module ...

Les étapes :

Déclarer l'option editeur dans xoops_version.php :
/* LionHell éditeurs: les éditeurs de xoops, l'éditeur par défaut */
xoops_load('XoopsEditorHandler');
$editor_handler XoopsEditorHandler::getInstance();
$editorList array_flip($editor_handler->getList());
$i++;
$modversion['config'][$i]['name'] = 'editeur';
$modversion['config'][$i]['title'] = '_MI_SPARTNER_EDITOR';
$modversion['config'][$i]['description'] = '_MI_SPARTNER_EDITOR_DSC';
$modversion['config'][$i]['formtype'] = 'select';
$modversion['config'][$i]['valuetype'] = 'text';
$modversion['config'][$i]['options'] = $editorList;
$modversion['config'][$i]['default'] = 'tinymce';
$modversion['config'][$i]['category'] = 'submit';
/* l'option category est facultative mais si vous l'utilisez
   il semble qu'elle doive avoir la valeur submit */


Dans le formulaire souhaité déclarer le champs html comme suit :
// Variable globale pour récupérer les options du module dans xoops_version
global $xoopsModuleConfig;
...
... 
// Appel de la classe nécessaire au traitement desformulaires
include_once XOOPS_ROOT_PATH '/class/xoopsformloader.php';
...
...
...
// Déclaration du formulaire
$monFormulaire = new XoopsThemeForm(blabla,bla,...);
...
...
...
// CREATION CHAMPS ASSOCIE A UN EDITEUR  <<< Modifié par LionHell
// Editeur défini dans les préférences
$editor $xoopsModuleConfig['editeur'];
// Paramètres de l'éditeur - cf (2)
$editor_configs=array(); 
   
$editor_configs["rows"] = 20
   
$editor_configs["cols"] = 80
   
$editor_configs["width"] = "100%"
   
$editor_configs["height"] = "400px"
   
$editor_configs["editor"]= $editor
$monChamps = new XoopsFormEditor("Label_du_champs""nom_du_champs"$editor_configs); 
$monChamps->setDescription("Texte_additionnel_du label");
// Ajout du champs dans le formulaire
$monFormulaire->addElement($monChampsfalse);
...
...
...
// Afficher le formulaire
$monFormulaire->display();


(1) L'éditeur défini dans les préférences est récupéré dans $editor. Pour cela ne pas oublier de déclarer avant la variable globale: global $xoopsModuleConfig.

(2) Les options $editor_configs sont dans l'exemple fixées dans le formulaire, mais elles peuvent être définies dans les préférences et récupérées comme l'éditeur.

Posté le : 01/04/2014 10:16

signé: LionHell
Partager Twitter Partagez cette article sur GG+
Re: Intégrer le choix d'un éditeur de texte dans un module
Admin Frxoops
Inscrit: 16/03/2009 16:40
De Tende (06)
Messages: 3528
Merci pour ce travail, ça va aider de futurs développeurs

Posté le : 01/04/2014 14:02

Open in new window

Xoopseuse Mai 2012 | Responsable équipe internationale | Recherche avancée en bas de page !
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

25 Personne(s) en ligne (17 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 25 | Plus ...