novembre
2007
Lors de la création d’une classe dans eZ Publish il est possible de créer des champs qui vont « collecter » les informations entrées par l’utilisateur. Ces informations sont ensuite accessible dans l’onglet Setup –> Collected information. J’ai cependant remarqué que les indications présentent dans la documentation concernant cette fonctionnalité n’étaient pas corrects. Si vous suivez strictement ce que la documentation indique ça ne va pas fonctionner. En effet dans votre template de saisie il faut ajouter les deux champs hidden suivant:
<input type="hidden" name="ContentNodeID" value="{$node.node_id}" />
Je vous donne ci-dessous le code d’un formulaire basique fonctionnel avec un champ Titre et Message:
<table>
<tr>
<td>{$node.object.data_map.title.contentclass_attribute_name}:</td>
<td>{attribute_view_gui attribute=$node.object.data_map.title}</td>
</tr>
<tr>
<td>{$node.object.data_map.message.contentclass_attribute_name}:</td>
<td>{attribute_view_gui attribute=$node.object.data_map.message}</td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="ActionCollectInformation" value="Envoyer"/></td>
</tr>
</table>
<input type="hidden" name="ContentObjectID" value="{$node.object.id}" />
<input type="hidden" name="ContentNodeID" value="{$node.node_id}" />
<input type="hidden" name="ClassIdentifier" value="feedback" />
</form>
Il est bien sûr évident que vous devez adapter les tags de templates selon votre classe « feedback ».