Compare commits

..

3 Commits

4 changed files with 181 additions and 150 deletions

View File

@ -24,10 +24,19 @@
{{* afficher les catégories déjà enregistrées *}} {{* afficher les catégories déjà enregistrées *}}
<section class="categories"> <section class="categories">
{{#list select="$$.name AS 'Catégorie'" order="1" where="$$.type = 'category'"}} {{#list select="$$.name AS 'Catégorie'" order="1" where="$$.type = 'category'"}}
{{:assign category_key=$key}}
{{* voir s'il y a des matériels dans cette catégorie *}}
{{:assign materiel_present=true}}
{{#load type="equipment" where="$$.category = :category_key" :category_key=$category_key}}
{{else}}
{{:assign materiel_present=false}}
{{/load}}
<tr> <tr>
<th>{{$name}}</th> <th>{{$name}}</th>
<td class="actions"> <td class="actions">
{{:linkbutton label="Liste des matériels" href="list_equipment.html?key=%s&dialog"|args:$key shape="search" target="_dialog"}} {{if $materiel_present}}
{{:linkbutton label="Liste des matériels" href="list_equipment.html?key=%s&dialog"|args:$key shape="search" target="_dialog"}}
{{/if}}
{{:linkbutton label="Modifier" href="modify_category.html?key=%s"|args:$key shape="edit" target="_dialog"}} {{:linkbutton label="Modifier" href="modify_category.html?key=%s"|args:$key shape="edit" target="_dialog"}}
{{:linkbutton label="Supprimer" href="delete_category.html?key=%s"|args:$key shape="delete" target="_dialog"}} {{:linkbutton label="Supprimer" href="delete_category.html?key=%s"|args:$key shape="delete" target="_dialog"}}
</td> </td>

View File

@ -6,158 +6,173 @@
{{:include file="./_calcul_dispo.html" keep="cumul_mvt,category_keys,equipments"}} {{:include file="./_calcul_dispo.html" keep="cumul_mvt,category_keys,equipments"}}
{{* Afficher les résultats *}} {{* Afficher les résultats *}}
{{if $equipments === null}} {{if $equipments === null}}
<p class="block alert">Aucun matériel.</p> <p class="block alert">Aucun matériel.</p>
{{else}} {{else}}
<details class="inventaire" open="open"> {{* Vérifier s'il y a au moins un matériel propriété ou non de l'asso *}}
<summary> {{:assign mat_prop=false}}
<h2>Matériels dont l'association est propriétaire</h2> {{:assign mat_non_prop=false}}
</summary> {{#foreach from=$equipments key=key item=eqpmt}}
<fieldset> {{if $eqpmt|has_key:"stock"}}
{{:assign mat_prop=true}}
{{/if}}
{{if $eqpmt|has_key:"nonproprio"}}
{{:assign mat_non_prop=true}}
{{/if}}
{{/foreach}}
{{* itérer sur les catégories *}} {{if $mat_prop}}
{{#foreach from=$cumul_mvt key="cat_key" item="cat_elem"}} <details class="inventaire" open="open">
<summary>
<h2>Matériels dont l'association est propriétaire</h2>
</summary>
{{* vérifier s'il y a des matériels dans cette catégorie *}} <fieldset>
{{:assign present=false}} {{* itérer sur les catégories *}}
{{if $cat_elem|keys|has:"eqpmt"}} {{#foreach from=$cumul_mvt key="cat_key" item="cat_elem"}}
{{#foreach from=$cat_elem.eqpmt key="eqpmt_key" item="eqpmt"}}
{{if $eqpmt.stock !== null && $eqpmt.stock !== 0}}
{{:assign present=true}}
{{:break}}
{{/if}}
{{/foreach}}
{{/if}}
{{if $present}} {{* vérifier s'il y a des matériels dans cette catégorie *}}
{{if $print_cat_name}} {{:assign present=false}}
<details class="inventaire" open="open"> {{if $cat_elem|keys|has:"eqpmt"}}
<summary> {{#foreach from=$cat_elem.eqpmt key="eqpmt_key" item="eqpmt"}}
<h3>{{$cat_elem.name}}</h3> {{if $eqpmt.stock !== null && $eqpmt.stock !== 0}}
{{/if}} {{:assign present=true}}
</summary> {{:break}}
<table class="list">
<thead>
<tr>
<th>Désignation</th>
<th>Stock</th>
<th>Sortie</th>
<th>Disponible</th>
<th class="actions"></th>
</tr>
</thead>
<tbody>
{{* itérer sur les matériels de la catégorie *}}
{{#foreach from=$cat_elem.eqpmt key="eqpmt_key" item="eqpmt"}}
{{:assign keys=$eqpmt|keys}}
{{if "stock"|in:$keys}} {{* && $eqpmt.stock !== 0}}*}}
{{if "exterieur"|in:$keys}}
{{:assign dispo="%d-%d"|math:$eqpmt.stock:$eqpmt.exterieur}}
{{:assign exterieur=$eqpmt.exterieur}}
{{else}}
{{:assign dispo=$eqpmt.stock}}
{{:assign exterieur=0}}
{{/if}} {{/if}}
<tr> {{/foreach}}
<td>{{$eqpmt.designation}}</td>
<td>{{$eqpmt.stock}}</td>
<td>{{$exterieur}}</td>
<td>{{$dispo}}</td>
<td class="actions">
{{:linkbutton
label="Mouvements"
href="%shistorique.html?key=%s&prop=1"|args:$module.url:$eqpmt_key
shape="table"}}
{{:linkbutton
label="Modifier"
href="%smodifier_materiel.html?key=%s"|args:$module.url:$eqpmt_key
shape="edit"
target="_dialog"}}
</td>
</tr>
{{/if}}
{{else}}
<p class="block alert">Il n'y a aucun matériel dans cette catégorie.</p>
{{/foreach}}
</tbody>
</table>
</details>
{{/if}}
{{/foreach}}
</fieldset>
</details>
<details class="inventaire" open="open">
<summary>
<h2>Matériels dont l'association n'est pas propriétaire</h2>
</summary>
<fieldset>
{{* itérer sur les catégories *}}
{{#foreach from=$cumul_mvt key="cat_key" item="cat_elem"}}
{{* vérifier s'il y a des matériels dans cette catégorie *}}
{{:assign present=false}}
{{if $cat_elem|keys|has:"eqpmt"}}
{{#foreach from=$cat_elem.eqpmt key="eqpmt_key" item="eqpmt"}}
{{if $eqpmt.nonproprio !== null && $eqpmt.nonproprio !== 0}}
{{:assign present=true}}
{{:break}}
{{/if}}
{{/foreach}}
{{/if}}
{{if $present}}
{{if $print_cat_name}}
<details class="inventaire" open="open">
<summary>
<h3>{{$cat_elem.name}}</h3>
{{/if}} {{/if}}
</summary>
<table class="list"> {{if $present}}
<thead> {{if $print_cat_name}}
<tr> <details class="inventaire" open="open">
<th>Désignation</th> <summary>
<th>Quantité</th> <h3>{{$cat_elem.name}}</h3>
<th class="actions"></th>
</tr>
</thead>
<tbody>
{{* itérer sur les matériels de la catégorie *}}
{{#foreach from=$cat_elem.eqpmt key="eqpmt_key" item="eqpmt"}}
{{:assign keys=$eqpmt|keys}}
{{if "nonproprio"|in:$keys && $eqpmt.nonproprio !== 0}}
{{:assign dispo="%d-%d"|math:$eqpmt.stock:$eqpmt.exterieur}}
<tr>
<td>{{$eqpmt.designation}}</td>
<td>{{$eqpmt.nonproprio}}</td>
<td class="actions">
{{:linkbutton
label="Mouvements"
href="historique.html?key=%s"|args:$eqpmt_key
shape="table"
target="_dialog"}}
{{:linkbutton
label="Modifier"
href="modifier_materiel.html?key=%s"|args:$eqpmt_key
shape="edit"
target="_dialog"}}
</td>
</tr>
{{/if}} {{/if}}
{{else}} </summary>
<p class="block alert">Il n'y a aucun matériel dans cette catégorie.</p>
{{/foreach}} <table class="list">
</tbody> <thead>
</table> <tr>
</details> <th>Désignation</th>
{{/if}} <th>Stock</th>
{{/foreach}} <th>Sortie</th>
</fieldset> <th>Disponible</th>
</details> <th class="actions"></th>
</tr>
</thead>
<tbody>
{{* itérer sur les matériels de la catégorie *}}
{{#foreach from=$cat_elem.eqpmt key="eqpmt_key" item="eqpmt"}}
{{:assign keys=$eqpmt|keys}}
{{if "stock"|in:$keys}} {{* && $eqpmt.stock !== 0}}*}}
{{if "exterieur"|in:$keys}}
{{:assign dispo="%d-%d"|math:$eqpmt.stock:$eqpmt.exterieur}}
{{:assign exterieur=$eqpmt.exterieur}}
{{else}}
{{:assign dispo=$eqpmt.stock}}
{{:assign exterieur=0}}
{{/if}}
<tr>
<td>{{$eqpmt.designation}}</td>
<td>{{$eqpmt.stock}}</td>
<td>{{$exterieur}}</td>
<td>{{$dispo}}</td>
<td class="actions">
{{:linkbutton
label="Mouvements"
href="%shistorique.html?key=%s&prop=1"|args:$module.url:$eqpmt_key
shape="table"}}
{{:linkbutton
label="Modifier"
href="%smodifier_materiel.html?key=%s"|args:$module.url:$eqpmt_key
shape="edit"
target="_dialog"}}
</td>
</tr>
{{/if}}
{{else}}
<p class="block alert">Il n'y a aucun matériel dans cette catégorie.</p>
{{/foreach}}
</tbody>
</table>
</details>
{{/if}}
{{/foreach}}
</fieldset>
</details>
{{/if}}
{{if $mat_non_prop}}
<details class="inventaire" open="open">
<summary>
<h2>Matériels dont l'association n'est pas propriétaire</h2>
</summary>
<fieldset>
{{* itérer sur les catégories *}}
{{#foreach from=$cumul_mvt key="cat_key" item="cat_elem"}}
{{* vérifier s'il y a des matériels dans cette catégorie *}}
{{:assign present=false}}
{{if $cat_elem|keys|has:"eqpmt"}}
{{#foreach from=$cat_elem.eqpmt key="eqpmt_key" item="eqpmt"}}
{{if $eqpmt.nonproprio !== null && $eqpmt.nonproprio !== 0}}
{{:assign present=true}}
{{:break}}
{{/if}}
{{/foreach}}
{{/if}}
{{if $present}}
{{if $print_cat_name}}
<details class="inventaire" open="open">
<summary>
<h3>{{$cat_elem.name}}</h3>
{{/if}}
</summary>
<table class="list">
<thead>
<tr>
<th>Désignation</th>
<th>Quantité</th>
<th class="actions"></th>
</tr>
</thead>
<tbody>
{{* itérer sur les matériels de la catégorie *}}
{{#foreach from=$cat_elem.eqpmt key="eqpmt_key" item="eqpmt"}}
{{:assign keys=$eqpmt|keys}}
{{if "nonproprio"|in:$keys && $eqpmt.nonproprio !== 0}}
{{:assign dispo="%d-%d"|math:$eqpmt.stock:$eqpmt.exterieur}}
<tr>
<td>{{$eqpmt.designation}}</td>
<td>{{$eqpmt.nonproprio}}</td>
<td class="actions">
{{:linkbutton
label="Mouvements"
href="historique.html?key=%s"|args:$eqpmt_key
shape="table"
target="_dialog"}}
{{:linkbutton
label="Modifier"
href="modifier_materiel.html?key=%s"|args:$eqpmt_key
shape="edit"
target="_dialog"}}
</td>
</tr>
{{/if}}
{{else}}
<p class="block alert">Il n'y a aucun matériel dans cette catégorie.</p>
{{/foreach}}
</tbody>
</table>
</details>
{{/if}}
{{/foreach}}
</fieldset>
</details>
{{/if}}
{{/if}} {{/if}}

View File

@ -30,6 +30,10 @@
{{#form on="save"}} {{#form on="save"}}
{{* vérifier les infos saisies *}} {{* vérifier les infos saisies *}}
{{if $_POST.quantite <= 0}}
{{:error message="La quantité (%s) doit être strictement positive !!"|args:$_POST.quantite}}
{{/if}}
{{if $_POST.equipment == null && {{if $_POST.equipment == null &&
$_POST.category == null && $_POST.designation == null}} $_POST.category == null && $_POST.designation == null}}
{{:error message="Il faut choisir un matériel existant ou sélectionner une catégorie et indiquer le nom du nouveau matériel"}} {{:error message="Il faut choisir un matériel existant ou sélectionner une catégorie et indiquer le nom du nouveau matériel"}}
@ -42,8 +46,7 @@
{{#load key=$_POST.equipment assign=equipment}} {{#load key=$_POST.equipment assign=equipment}}
{{/load}} {{/load}}
{{if $_POST.designation != null}} {{if $_POST.designation != null}}
{{:assign message="Vous avez choisi un matériel dans la liste (%s) et indiqué le nom d'un nouveau matériel (%s) : l'un des deux est de trop"|args:$equipment.designation:$_POST.designation}} {{:error message="Vous avez choisi un matériel dans la liste (%s) et indiqué le nom d'un nouveau matériel (%s) : l'un des deux est de trop"|args:$equipment.designation:$_POST.designation}}
{{:error message=$message}}
{{/if}} {{/if}}
{{/if}} {{/if}}
@ -70,8 +73,7 @@
{{if $present}} {{if $present}}
{{* voir si le matériel existe dans une autre catégorie *}} {{* voir si le matériel existe dans une autre catégorie *}}
{{if $nom_cat != $post_category.name}} {{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="Le matériel « %s » est déjà présent dans la catégorie « %s » ..."|args:$post_mat:$nom_cat}}
{{:error message=$message}}
{{/if}} {{/if}}
{{* utiliser la clé du matériel trouvé *}} {{* utiliser la clé du matériel trouvé *}}

View File

@ -66,6 +66,10 @@
-------------------- Traiter la saisie -------------------- -------------------- Traiter la saisie --------------------
*}} *}}
{{#form on="change"}} {{#form on="change"}}
{{if $_POST.amount <= 0}}
{{:error message="La quantité (%s) doit être strictement positive !!"|args:$_POST.amount}}
{{/if}}
{{* préparer le mouvement modifié *}} {{* préparer le mouvement modifié *}}
{{if $direction_mvt == "input"}} {{if $direction_mvt == "input"}}
{{:assign var="mvt_modif.input_nature" from="input_labels.%s"|args:$_POST.type_operation}} {{:assign var="mvt_modif.input_nature" from="input_labels.%s"|args:$_POST.type_operation}}
@ -157,7 +161,8 @@
{{:redirect force="../index.html?ok=1&msg=modification"}} {{:redirect force="../index.html?ok=1&msg=modification"}}
{{/if}} {{/if}}
{{/if}} {{/if}}
{{else}}
{{:form_errors}}
{{/form}} {{/form}}
{{* {{*