114 lines
3.7 KiB
HTML
114 lines
3.7 KiB
HTML
|
|
{{* Maj une réservation *}}
|
|
{{*:save
|
|
key="621c0fce-ef51-424d-bd3b-a635ced57594"
|
|
type="reservation"
|
|
loan_date="2026-10-21"
|
|
status="en attente"
|
|
mvt_key=null
|
|
*}}
|
|
|
|
{{* Créer une réservation *}}
|
|
{{*:save
|
|
type="reservation"
|
|
member=24
|
|
name="Francois Daniel"
|
|
contact=""
|
|
email="bountz+fd@gmail.com"
|
|
address=null
|
|
equipment="0b8799f3-763d-43c6-9a27-2fc90e29282d"
|
|
date="2026-10-16"
|
|
loan_date="2026-10-21"
|
|
return_date="2026-10-22"
|
|
amount=1
|
|
comment="Test de refus"
|
|
status="en attente"
|
|
mvt_key=null
|
|
*}}
|
|
|
|
{{*:delete key="633b7d6d-cbaa-4e8d-a1d8-7baf388ea0b2"*}}
|
|
{{* -*- brindille -*- *}}
|
|
{{#restrict block=true section="accounting" level="write"}}{{/restrict}}
|
|
|
|
{{*
|
|
Accepter une réservation
|
|
paramètres :
|
|
- key : clé de la réservation à modifier
|
|
- eid : id du matériel concerné
|
|
*}}
|
|
{{if $_GET.ok}}
|
|
{{* Redirect vers la page de suppression de la réservation WEB *}}
|
|
{{*:redirect url="/equipment.html?fonc=resadel&key=%s"|args:$_GET.ok*}}
|
|
{{*:redirect reload="resa_details.html?key=%s"|args:$resa.key*}}
|
|
{{/if}}
|
|
{{* récupérer les infos de la réservation à modifier depuis le module equipement (prioritaire) ou depuis le module web *}}
|
|
{{#load key=$_GET.key assign="resa"}}
|
|
{{else}}
|
|
{{#load module=web key=$_GET.key assign="resa"}}
|
|
{{else}}
|
|
{{:error message="Aucune réservation avec la clé %s"|args:$_GET.key}}
|
|
{{/load}}
|
|
{{/load}}
|
|
{{* Charge le matériel *}}
|
|
{{#load module="equipment" key=$resa.equipment assign="equipment"}}
|
|
{{else}}
|
|
{{:error message="Pas de matériel avec la clé %s"|args:$equipment_key}}
|
|
{{/load}}
|
|
|
|
{{#form on="save"}}
|
|
{{if $_POST.titre|trim === ''}}
|
|
{{:error message="Le titre est vide."}}
|
|
{{/if}}
|
|
{{* La ligne suivante ne sera pas exécutée si le titre est vide. *}}
|
|
{{*:save title=$_POST.titre|trim*}}
|
|
{{else}}
|
|
{{:form_errors}}
|
|
{{/form}}
|
|
|
|
{{* formulaire de réservation de matériel *}}
|
|
{{:read file="../reservation.schema.json" assign="baremes"}}
|
|
{{:assign baremes=$baremes|json_decode}}
|
|
{{*:debug baremes=$baremes.properties*}}
|
|
|
|
<form method="post" action="">
|
|
<fieldset class="entree">
|
|
<legend>Demande de réservation de matériel : {{$equipment.name}} ({{$category.name}})</legend>
|
|
<dl>
|
|
{{#foreach from=$resa key="key" item="value"}}
|
|
{{:assign required=false}}
|
|
<dd>
|
|
{{*:assign var="_resa_lignes." wres_id=$id wres_key=$key member=$member name=$name contact=$contact equipment=$equipment amount=$amount loan_date=$loan_date return_date=$return_date comment=$comment shape="print" signed=$signed status=$status*}}
|
|
{{:assign var="titre" from="baremes.properties.%s.description"|args:$key}}
|
|
{{:assign var="_type" from="baremes.properties.%s.type"|args:$key}}
|
|
{{:assign var="_format" from="baremes.properties.%s.format"|args:$key}}
|
|
{{:assign var="_type" value=$_type|arrayval}}
|
|
{{if $_type|has:"string"}}
|
|
{{if $_format=="date"}}
|
|
{{:assign type="date"}}
|
|
{{else}}
|
|
{{:assign type="text"}}
|
|
{{/if}}
|
|
{{elseif $_type|has:"integer"}}
|
|
{{:assign type="number"}}
|
|
{{elseif $_type|has:"array"}}
|
|
{{:assign type="select"}}
|
|
{{else}}
|
|
{{:assign type="text"}}
|
|
{{/if}}
|
|
{{:assign var="obligatoires" from="baremes.required"}}
|
|
{{if $obligatoires|has:$key}}{{:assign required=true}} {{/if}}
|
|
{{:assign var="nochangefields" a="id" b="key" c="type"}}
|
|
{{if $key|in:$nochangefields}}
|
|
{{$key}} = {{$value}}
|
|
{{else}}
|
|
{{:input type=$type name=$key label=$titre default=$value required=$required}}
|
|
{{/if}}
|
|
{{*:debug key=$key val=$value*}}
|
|
</dd>
|
|
{{/foreach}}
|
|
</dl>
|
|
</fieldset>
|
|
<p class="submit">
|
|
{{:button type="submit" name="save" label="Étape suivante" shape="right" class="main"}}
|
|
</p>
|
|
</form> |