diff --git a/modifier_materiel.html b/modifier_materiel.html index 1861be0..22022b3 100644 --- a/modifier_materiel.html +++ b/modifier_materiel.html @@ -1,5 +1,10 @@ {{* -*- brindille -*- *}} +{{* + Paramètres : + - key : clé du matériel à modifier +*}} + {{:admin_header title="Modifier matériel" current="module_equipment"}} {{:assign equipment_key=$_GET.key|trim}} @@ -49,7 +54,7 @@ category=$category.key designation=$_POST.designation|trim }} - {{:redirect force="index.html?ok=1"}} + {{:redirect force="index.html?ok=1&msg=modification"}} {{else}} {{:form_errors}} diff --git a/mouvements/ajouter_entree.html b/mouvements/ajouter_entree.html index 9d23b66..7c7d72b 100644 --- a/mouvements/ajouter_entree.html +++ b/mouvements/ajouter_entree.html @@ -17,6 +17,15 @@ {{/if}} {{/foreach}} +{{* lister les catégories et les matériels disponibles *}} +{{#load type="category" assign="category" order="$$.name"}} + {{:assign nom_cat=$category.name}} + {{:assign var="categories.%s"|args:$category.key value=$category.name}} + {{#load type="equipment" where="$$.category = :key" :key=$category.key assign="equipment"}} + {{:assign var="equipments.%s.%s"|args:$nom_cat:$equipment.key value=$equipment.designation}} + {{/load}} +{{/load}} + {{* Traiter l'envoi du formulaire *}} {{#form on="save"}} @@ -42,26 +51,42 @@ {{if $_POST.equipment == null}} {{* récupérer les infos de la catégorie *}} - {{#load type="category" key=$_POST.category assign="category"}} + {{#load type="category" key=$_POST.category assign="post_category"}} {{/load}} {{* 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 post_mat=$_POST.designation|trim|tolower|ucfirst}} + {{:assign present=false}} + {{#foreach from=$equipments key=nom_cat item=eqpmt}} + {{#foreach from=$eqpmt key=key item=nom}} + {{if $_POST.designation|trim|tolower == $nom|tolower}} + {{:assign equipment_key=$key}} + {{:assign present=true}} + {{:break}} + {{/if}} + {{/foreach}} + {{if $present}}{{:break}}{{/if}} + {{/foreach}} + {{if $present}} + {{* voir si le matériel existe dans une autre catégorie *}} + {{if $nom_cat != $post_category.name}} + {{:assign message="Le matériel « %s » est déjà présent dans la catégorie « %s » ..."|args:$post_mat:$nom_cat}} + {{:error message=$message}} + {{/if}} {{* utiliser la clé du matériel trouvé *}} - {{:assign equipment_key=$key}} + {{else}} {{* nouveau matériel => nouvelle clé *}} {{:assign equipment_key=""|uuid}} - {{* enregistrer un nouveau matériel *}} {{:save - key=$equipment_key - validate_schema="../equipment.schema.json" - type="equipment" - category=$category.key - designation=$_POST.designation|trim + key=$equipment_key + validate_schema="../equipment.schema.json" + type="equipment" + category=$category.key + designation=$post_mat }} - {{/load}} + {{/if}} {{/if}} {{* Enregistrer le mouvement *}} @@ -80,28 +105,18 @@ comment=$_POST.remarques|trim }} - {{:assign msg="Ajout de l'entrée de « %s (%d) en date du %s » effectué"|args:$_POST.designation:$_POST.quantite:$_POST.date}} - {{:debug msg=$msg}} - {{*:redirect force="./index.html?ok=1&msg=%s"|args:$msg*}} + {{:assign msg="Ajout de l'entrée « %s (%d) en date du %s » effectué"|args:$post_mat:$_POST.quantite:$_POST.date}} + {{:redirect force="../index.html?ok=1&msg=%s"|args:$msg}} {{else}} {{:form_errors}} {{/form}} -{{* lister les catégories disponibles *}} -{{#load type="category" assign="category" order="$$.name"}} - {{:assign nom_cat=$category.name}} - {{:assign var="categories.%s"|args:$category.key value=$category.name}} - {{#load type="equipment" where="$$.category = :key" :key=$category.key assign="equipment"}} - {{:assign var="equipments.%s.%s"|args:$nom_cat:$equipment.key value=$equipment.designation}} - {{/load}} -{{/load}} - {{if $categories != null}} - {{* formulaire d'ajout de matériel *}} + {{* formulaire ajout matériel *}}