LSformElement::boolean : add true_label and false_label parameters

This commit is contained in:
Benjamin Renard 2018-09-13 16:25:40 +02:00
parent 408c6d82cf
commit f94471e6e5
3 changed files with 49 additions and 5 deletions

View file

@ -1,17 +1,53 @@
<sect4 id="config-LSattr_html_boolean"> <sect4 id="config-LSattr_html_boolean">
<title>LSattr_html_boolean</title> <title>LSattr_html_boolean</title>
<para>Ce type est utilisé pour la gestion des attributs dont la valeur est <para>Ce type est utilisé pour la gestion des attributs dont la valeur est
un booléen. Pour le moment, les attributs à valeurs multiples ne sont pas gérés. un booléen.</para>
La valeur retournée est l'une des chaînes de caractères suivantes :
<para>La valeur retournée est l'une des chaînes de caractères suivantes :
<itemizedlist> <itemizedlist>
<listitem><simpara><literal>yes</literal> pour <emphasis>Vrai</emphasis></simpara></listitem> <listitem><simpara><literal>yes</literal> pour <emphasis>Vrai</emphasis></simpara></listitem>
<listitem><simpara><literal>no</literal> pour <emphasis>Faux</emphasis></simpara></listitem> <listitem><simpara><literal>no</literal> pour <emphasis>Faux</emphasis></simpara></listitem>
</itemizedlist> </itemizedlist>
</para>
<programlisting linenumbering="unnumbered">
<citetitle>Structure</citetitle>...
<![CDATA['html_options' => array (
'true_label' => '[label]',
'false_label' => '[label]',
),]]>
...
</programlisting>
<variablelist>
<title>Paramètres de configuration</title>
<varlistentry>
<term>true_label</term>
<listitem>
<simpara>Label affiché pour désigner la valeur <literal>Vrai</literal>.</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>false_label</term>
<listitem>
<simpara>Label affiché pour désigner la valeur <literal>Faux</literal>.</simpara>
</listitem>
</varlistentry>
</variablelist>
<note><simpara>Pour le moment, les attributs à valeurs multiples ne sont pas gérés.
</simpara></note>
<note><simpara>Pour maîtriser les valeurs stockées dans l'annuaire, il faut <note><simpara>Pour maîtriser les valeurs stockées dans l'annuaire, il faut
coupler ce type d'attribut HTML avec le type d'attribut LDAP coupler ce type d'attribut HTML avec le type d'attribut LDAP
<link linkend='config-LSattr_ldap_boolean'>boolean</link></simpara></note> <link linkend='config-LSattr_ldap_boolean'>boolean</link></simpara></note>
<important><simpara>La définition de la valeur par défaut d'un attribut utilisant <important><simpara>La définition de la valeur par défaut d'un attribut utilisant
ce type HTML (paramètre <literal>default_value</literal>), doit se faire à l'aide ce type HTML (paramètre <literal>default_value</literal>), doit se faire à l'aide
des valeurs <literal>yes</literal> ou <literal>no</literal>.</simpara></important> des valeurs <literal>yes</literal> ou <literal>no</literal>.</simpara></important>
</para>
</sect4> </sect4>

View file

@ -57,8 +57,8 @@ class LSformElement_boolean extends LSformElement {
$return['html'] = $this -> fetchTemplate( $return['html'] = $this -> fetchTemplate(
NULL, NULL,
array( array(
'yesTxt' => _('Yes'), 'yesTxt' => (isset($this -> params['html_options']['true_label']) && !empty($this -> params['html_options']['true_label']))?__($this -> params['html_options']['true_label']):_('Yes'),
'noTxt' => _('No') 'noTxt' => (isset($this -> params['html_options']['false_label']) && !empty($this -> params['html_options']['false_label']))?__($this -> params['html_options']['false_label']):_('No'),
) )
); );
return $return; return $return;

View file

@ -260,6 +260,14 @@ if (loadDir(LS_OBJECTS_DIR) && loadDir(LS_LOCAL_DIR.LS_OBJECTS_DIR)) {
} }
} }
// LSattr_html_boolean
if (isset($attr['html_options']['true_label'])) {
add($attr['html_options']['true_label']);
}
if (isset($attr['html_options']['false_label'])) {
add($attr['html_options']['false_label']);
}
// LSattr_html_jsonCompositeAttribute // LSattr_html_jsonCompositeAttribute
if (is_array($attr['html_options']['components'])) { if (is_array($attr['html_options']['components'])) {
foreach($attr['html_options']['components'] as $c => $cconfig) { foreach($attr['html_options']['components'] as $c => $cconfig) {