{{* -*- brindille -*- *}} {{#restrict block=true section="accounting" level="write"}}{{/restrict}} {{:assign var="types" checkbox="Case à cocher" date="Date" number="Nombre" monetary="Montant €" text="Texte" textarea="Texte multi-lignes" }} {{#form on="save"}} {{#foreach from=$_POST.fields|array_transpose item="field"}} {{if !$field.label|trim || !$field.type}} {{:continue}} {{/if}} {{if !$types|keys|has:$field.type}} {{:error message="Type inconnu: %s"|args:$field.type}} {{/if}} {{:assign var="fields." required=$field.required|boolval published=$field.published|boolval assignedto=$field.assignedto type=$field.type name=$field.name label=$field.label help=$field.help|or:null}} {{/foreach}} {{:save key="config" fields=$fields|arrayval}} {{:redirect to="?ok=1"}} {{/form}} {{:admin_header title="Configuration" current="module_%s"|args:$module.name}} {{:include file="../_nav.html" current="config" subcurrent="custom_fields"}} {{:form_errors}} {{if $_GET.ok}}

Configuration enregistrée.

{{/if}}

À utiliser optionnellement pour associer des informations supplémentaires aux matériels et/ou objets.

{{:assign var="select" 0="Facultatif" 1="Obligatoire"}} {{:assign var="select2" 0="Masquer" 1="Afficher"}} {{:assign var="select3" M="Matériels" C="Catégories" E="Emplacements" T="Tous"}} {{#foreach from=$module.config.fields item="field"}} {{else}} {{/foreach}}
Type de champ Nom du champ Libellé du champ Texte d'aide en dessous du champ Champ obligatoire ? Page publique Associé à
{{:input type="select" name="fields[type][]" default=$field.type options=$types}} {{:input type="text" name="fields[name][]" default=$field.name}} {{:input type="text" name="fields[label][]" default=$field.label}} {{:input type="text" name="fields[help][]" default=$field.help}} {{:input type="select" name="fields[required][]" default=$field.required options=$select required=true}} {{:input type="select" name="fields[published][]" default=$field.published options=$select2 required=true}} {{:input type="select" name="fields[assignedto][]" default=$field.assignedto options=$select3 required=true}} {{:button shape="minus" label="Enlever cette ligne" onclick="this.parentNode.parentNode.remove();"}}
{{:input type="select" name="fields[type][]" options=$types default="text"}} {{:input type="text" name="fields[name][]" default=$field.name}} {{:input type="text" name="fields[label][]" default=$field.label}} {{:input type="text" name="fields[help][]" default=$field.help}} {{:input type="select" name="fields[required][]" default=$field.required options=$select required=true}} {{:input type="select" name="fields[published][]" default=$field.published options=$select2 required=true}} {{:input type="select" name="fields[assignedto][]" default=$field.assignedto options=$select3 required=true}} {{:button shape="minus" label="Enlever ce champ" onclick="this.parentNode.parentNode.remove();"}}

{{:button shape="plus" label="Ajouter un champ" onclick="var a = $('.fields tbody')[0].lastElementChild; var b = a.cloneNode(true); b.querySelectorAll('input, select').forEach((e) => e.value = null); a.parentNode.append(b);"}}

{{:button type="submit" shape="right" name="save" label="Enregistrer" class="main"}}