equipment/categories/index.html

86 lines
2.7 KiB
HTML

{{* -*- brindille -*- *}}
{{:admin_header title="Gestion des matériels" current="module_equipment"}}
{{* barre de navigation *}}
{{:include file="../_nav.html" current="categories"}}
{{if $_GET.ok}}
{{if $_GET.msg == "modification"}}
<p class="block confirm">Modification enregistrée</p>
{{elseif $_GET.msg == "suppression"}}
<p class="block confirm">Catégorie supprimée</p>
{{/if}}
{{elseif $_GET.err}}
{{if $_GET.msg == "modification"}}
<p class="block error">{{$_GET.msg}}</p>
{{elseif $_GET.msg == "suppression"}}
<p class="block error">
Cette catégorie ne peut être supprimée car elle contient encore des matériels
</p>
{{/if}}
{{/if}}
{{* afficher les catégories déjà enregistrées *}}
<section class="categories">
{{#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>
<th>{{$name}}</th>
<td class="actions">
{{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="Supprimer" href="delete_category.html?key=%s"|args:$key shape="delete" target="_dialog"}}
</td>
</tr>
{{else}}
<p class="block alert">Il n'y a aucune catégorie : vous devez en ajouter.</p>
{{/list}}
</section>
{{* Traiter l'envoi du formulaire *}}
{{#form on="save"}}
{{* Vérifier s'il existe déjà une catégorie avec le même nom *}}
{{#load type="category"}}
{{if $name|tolower == $_POST.name|trim|tolower}}
{{:error message="Impossible d'ajouter la catégorie « %s » car elle existe déjà !"|args:$name|trim}}
{{:break}}
{{/if}}
{{/load}}
{{:assign key=""|uuid}}
{{:save
key=$key
validate_schema="./category.schema.json"
type="category"
name=$_POST.name|trim|tolower|ucfirst
}}
{{:redirect to="./index.html?ok=1&msg=Catégorie enregistrée"}}
{{/form}}
{{:form_errors}}
{{* formulaire d'ajout de catégorie *}}
<form method="post" action="{{$self_url}}">
<fieldset class="ajout_categorie">
<legend>Ajouter une catégorie</legend>
<dl>
{{:input type="text" name="name" label="Nom" autofocus=true required=true maxlength="100"}}
</dl>
<p class="submit">
{{:button type="submit" name="save" label="Ajouter" shape="right" class="main"}}
</p>
</fieldset>
</form>
{{:admin_footer}}