Doc / contrib: add section about LSformRules

This commit is contained in:
Benjamin Renard 2020-08-26 11:49:21 +02:00
parent 699631b63c
commit 7711b3c00a
2 changed files with 41 additions and 0 deletions

View file

@ -40,5 +40,7 @@
<!ENTITY LSformElement "<link linkend='contrib-LSformElements'>LSformElement</link>">
<!ENTITY LSformElements "<link linkend='contrib-LSformElements'>LSformElements</link>">
<!ENTITY LSformRule "<link linkend='contrib-LSformRules'>LSformRule</link>">
<!ENTITY LSformRules "<link linkend='contrib-LSformRules'>LSformRules</link>">
<!ENTITY GIT_RAW_ROOT_URL "https://gitlab.easter-eggs.com/ee/ldapsaisie/-/raw/master">

View file

@ -604,4 +604,43 @@
du type <literal>textarea</literal>, ou encore du type <literal>url</literal> dérivé du type <literal>text</literal>.</simpara></note>
</sect1>
<sect1 id="contrib-LSformRules">
<title>LSformRules</title>
<para>Les &LSformRules; sont les règles syntaxiques applicables aux champs des formulaires. Ces règles serviront à s'assurer que les
valeurs des champs récupérées des formulaires sont syntaxiquement correctes. Elles seront configurables via le paramètre
<literal>check_data</literal> des attributs des &LSobjects;.</para>
<para>Pour chaque type implémenté, on trouvera une classe PHP dérivée de la classe <literal>LSformRule</literal> et devant s'appeler
<literal>LSattr_rule_[nom du type]</literal>. Dans celle-ci, il devra être défini la méthode statique <literal>validate()</literal> qui
implémentera le contrôle syntaxique. Cette méthode prendra en paramètres :
<variablelist>
<varlistentry>
<term>$value</term>
<listitem>
<simpara>La valeur à tester.</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>$options</term>
<listitem>
<simpara>Un tableau des options définies dans la configuration pour ce contrôle syntaxique.</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>$formElement</term>
<listitem>
<simpara>Une référence au champ du formulaire (objet &LSformElement;).</simpara>
</listitem>
</varlistentry>
</variablelist>
</para>
<para>Cette méthode devra retourner <literal>True</literal> ou <literal>False</literal> si la valeur testée est respectivement valide ou
invalide.</para>
</sect1>
</chapter>