Ajouter/Editer des tags

De Sydonie

Utilisation

Affichage des tags

La fonction Aglae displayTags($obj) affiche la liste des tags de l'objet $obj, sous la forme d'un ul/li, le ul ayant la classe CSS tagList. Le ul a un majaxListenTo_tag pour se rafraichir si les tags ont changé. Chaque tag affiche un lien de suppression du tag si l'utilisateur a les droits W sur l'objet.

Cet affichage utilise le template Abstract/SydonieEntity/templates/tagging_viewTags.tpl.php

Ajouter des tags

La fonction Aglae addTagsForm($obj) affiche le formulaire pour ajouter des tags. Attention ce sont les tags en AJOUT seulement. Ce formulaire est envoyé en Ajax et fai un majaxFire_tag pour mettre à jour la liste des tags (cf. plus haut). Le formulaire ne s'affiche que si l'utilisateur a les droits W sur l'objet.

Cet affichage utilise le template Abstract/SydonieEntity/templates/tagging_addTags.tpl.php

Édition des tags

la fonction Aglae editTags($obj) affiche un champ input texte pré-rempli avec les tags de l'objet, si l'utilisateur a les droits W sur l'objet. L'idée de cette fonction est d'intégrer les tags dans le formulaire complet d'un objet. Cette fonction procède donc en écrasant l'existant.

À l'envoi du formulaire, les tags existants sont effacés et remplacés par la liste du formulaire.

Fonctionnement

La classe abstraite Form_Tag gère les deux cas avec 2 classes dérivées Form_Tag_Add et Form_Tag_Edit. Dans les 2 cas, la méthode process() appelle le manager de tags (Manager_Tags) pour gérer l'ajout ou la suppression de tags. Le traitement est donc complètement réalisé dans la méthode process() (de même que pour les Statements).