{{#restrict section="config" level="admin" block=true}}{{/restrict}}
{{:admin_header title="Gestion des matériels" current="module_equipment"}}

{{* barre de navigation *}}
{{:include file="/%s/_nav.html"|args:$module.name current="categories"}}

{{if $_GET.ok}}
	<p class="block confirm">{{$_GET.msg}}</p>
{{else}}
        {{if $_GET.err}}
                <p class="block error">{{$_GET.msg}}</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'"}}
  <tr>
    <th>{{$name}}</th>
    <td class="actions">
      {{:linkbutton label="Liste des matériels" href="list_equipment.html?key=%s&dialog"|args:$key shape="search" 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"}}
    </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" where="lower($$.name) = :name" :name=$_POST.name|trim|tolower}}
                {{:error message="Impossible d'ajouter la catégorie « %s » car elle existe déjà !"|args:$name|trim}}
        {{/load}}

        {{:assign key=""|uuid}}
        {{:save
                key=$key
                validate_schema="./category.schema.json"
                type="category"
                name=$_POST.name|trim
        }}
        {{: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" required=true maxlength="100"}}
    </dl>
    <p class="submit">
      {{:button type="submit" name="save" label="Ajouter" shape="right" class="main"}}
    </p>
  </fieldset>
</form>

{{:admin_footer}}