{{:admin_header title="Modifier matériel" current="module_equipment"}} {{:assign equipment_key=$_GET.key|trim}} {{#load key=$_GET.key assign="equipment"}} {{:assign default_category=$equipment.category}} {{else}} {{:error message="Pas de matériel avec la clé %s"|args:$equipment_key}} {{/load}} {{* Traiter l'envoi du formulaire *}} {{#form on="save"}} {{* récupérer les infos de la catégorie *}} {{#load type="category" key=$_POST.category assign="category"}} {{/load}} {{* vérifier la validité des changements demandés *}} {{:assign chgt_ok=true}} {{if $_POST.category != $default_category}} {{* catégorie change : vérifier le nom *}} {{#load key=$equipment_key}} {{if $designation|trim|tolower != $_POST.designation|trim|tolower}} {{* le nom change => vérifier l'existence d'un matériel du même nom *}} {{#load type="equipment" where="lower($$.designation) = :name" :name=$_POST.designation|trim|tolower}} {{:assign chgt_ok=false}} {{/load}} {{else}} {* le nom ne change pas : ok *}} {{/if}} {{/load}} {{else}} {{* catégorie ne change pas => vérifier le nom*}} {{#load type="equipment" where="lower($$.designation) = :name" :name=$_POST.designation|trim|tolower}} {{:assign chgt_ok=false}} {{/load}} {{/if}} {{if !$chgt_ok}} {{:error message="Erreur : il existe déjà un matériel avec cette désignation"}} {{/if}} {{* enregistrer les modifications *}} {{:save key=$equipment_key category=$category.key designation=$_POST.designation|trim }} {{:redirect force="index.html?ok=1"}} {{else}} {{:form_errors}} {{/form}} {{* lister les catégories disponibles *}} {{#load type="category" assign="category" order="$$.name"}} {{:assign var="categories.%s"|args:$category.key value=$category.name}} {{/load}}
Modifier un matériel
{{:input type="select" name="category" label="Catégorie" default=$default_category required=true options=$categories}} {{:input type="text" name="designation" label="Désignation" default=$equipment.designation required=true}}

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