API editeur : Différence entre versions

De OviWiki
Aller à : navigation, rechercher
(API pour créer un module éditeur)
Ligne 28 : Ligne 28 :
 
$editor = new bab_editor();
 
$editor = new bab_editor();
 
$editor->setRequestFieldName('textarea_name');
 
$editor->setRequestFieldName('textarea_name');
$editor->setContent($str);
+
$editor->setContent($str, $format);
 
$editor->setFormName('form_id');
 
$editor->setFormName('form_id');
 
$editor->setHeight(300);
 
$editor->setHeight(300);
Ligne 63 : Ligne 63 :
 
<pre>
 
<pre>
 
$editor = new bab_editor();
 
$editor = new bab_editor();
$editor->setContent($db_content);
+
$editor->setContent($db_content, 'html');
 
$html = $editor->getContentHtml();
 
$html = $editor->getContentHtml();
 
</pre>
 
</pre>
 +
 +
le paramètre format de la méthode setContent permet de spécifié le format dans lequel le contenu est fourni à l'éditeur
  
  
Ligne 72 : Ligne 74 :
 
Des événements serons définis pour permettre de fournir un éditeur à partir d'un module
 
Des événements serons définis pour permettre de fournir un éditeur à partir d'un module
  
bab_editor
+
'''bab_editorGetTemplateHtml''' permet de créer le template HTML de l'éditeur, cet événement sera appelé par $editor->getTemplateHtml()
 +
 
 +
'''bab_editorGetContentStore''' cet événement sera appelé par $editor->getContentStore()
 +
 
 +
'''bab_editorGetContentHtml''' cet événement sera appelé par $editor->getContentHtml()
 +
 
 +
'''bab_editorDisplayCustomInsert''' cet événement sera appelé au moment de l'affichage de la popup avec les liste des fonction qui permettent d'insérer du html dans l'éditeur, s'enregistrer sur cet événements permet d'ajouter des fonction comme l'insertion d'un fichier du gestionnaire de fichier ou une fiche annuaire.

Version du 22 décembre 2006 à 14:34

Fonctions à remplacer

bab_editor($content, $editname, $formname, $heightpx=300, $what=3)

cette fonction retourne du html

bab_editor_record(&$str)

Cette fonction est appelée au moment de la récupération des données soumises par l'éditeur

bab_replace_ref(&$str)

cette fonction est appelée au moment de l'affichage du texte enregistré par l'éditeur.


Nouvelle API pour implémenter un éditeur

Pour le HTML nécessaire à l'éditeur, un objet sera utilisé :

$editor = new bab_editor();
$editor->setRequestFieldName('textarea_name');
$editor->setContent($str, $format);
$editor->setFormName('form_id');
$editor->setHeight(300);
$editor->setParameter('key', 'value');
$editor->getTemplateHtml();
$editor->getContentStore();
$editor->getContentHtml();


Pour afficher l'éditeur au moment de la création d'un texte :

$editor = new bab_editor();
$editor->setRequestFieldName('textarea_name');
$editor->setFormName('form_id');
$html = $editor->getTemplateHtml();

Avec la méthode setParameter il est possible de définir des paramètres qui serons envoyés à l'événement chargé de gérer les fonctionnalités externes qui permettent d'insérer du code html dans l'éditeur. Les 2 paramètres sont des chaînes de caractères.


Pour récupérer le texte soumis par l'utilisateur après le POST ou le GET avant de l'enregistrer dans la base :

$editor = new bab_editor();
$editor->setRequestFieldName('textarea_name');
$db_content = $editor->getContentStore();

Pour afficher du contenu qui a été enregistré avec l'éditeur à partir de $db_html :

$editor = new bab_editor();
$editor->setContent($db_content, 'html');
$html = $editor->getContentHtml();

le paramètre format de la méthode setContent permet de spécifié le format dans lequel le contenu est fourni à l'éditeur


API pour créer un module éditeur

Des événements serons définis pour permettre de fournir un éditeur à partir d'un module

bab_editorGetTemplateHtml permet de créer le template HTML de l'éditeur, cet événement sera appelé par $editor->getTemplateHtml()

bab_editorGetContentStore cet événement sera appelé par $editor->getContentStore()

bab_editorGetContentHtml cet événement sera appelé par $editor->getContentHtml()

bab_editorDisplayCustomInsert cet événement sera appelé au moment de l'affichage de la popup avec les liste des fonction qui permettent d'insérer du html dans l'éditeur, s'enregistrer sur cet événements permet d'ajouter des fonction comme l'insertion d'un fichier du gestionnaire de fichier ou une fiche annuaire.