Files
sondage/_creneaux.html
T

165 lines
8.9 KiB
HTML

{{* ---------- Ligne en cours de modification ---------- *}}
{{:assign var="edit_nom" value=$_POST.edit_nom|strval}}
{{#foreach from=$s.votes item="v"}}
{{if $v.nom == $edit_nom}}
{{:assign var="edit_choix" value=$v.choix}}
{{:assign var="edit_remarque" value=$v.remarque}}
{{/if}}
{{/foreach}}
{{* ---------- Créneau en cours de modification ---------- *}}
{{:assign var="edit_creneau" value=$_POST.edit_creneau|strval}}
{{#foreach from=$s.creneaux item="c"}}
{{if $c.id == $edit_creneau}}
{{:assign var="edit_c_titre" value=$c.titre}}
{{:assign var="edit_c_date" value=$c.date}}
{{:assign var="edit_c_debut" value=$c.debut}}
{{:assign var="edit_c_fin" value=$c.fin}}
{{:assign var="edit_c_ok" value=1}}
{{/if}}
{{/foreach}}
{{*:debug s=$s creneaux=$creneaux*}}
<div class="card">
<h2>Créneaux TODO</h2>
<form method="post" action="">
<div class="scroll">
<table class="grille">
<thead>
<tr>
{{#foreach from=$creneaux item="c"}}
{{:assign var="th_oui" from="tot_oui.%s"|args:$c.id}}{{:assign var="th_peut" from="tot_peut.%s"|args:$c.id}}
<th class="creneau">{{if $c.titre|trim}}<em class="titre">{{$c.titre}}</em>{{/if}}{{if $c.date}}<b>{{$c.date|date_long}}</b><small>{{$c.debut}} → {{$c.fin}}</small>{{else}}<b>{{$c.label}}</b>{{/if}}
{{if $est_admin}}
{{if $th_oui < 1 && $th_peut < 1}}
{{:button type="submit" class="mini" name="edit_creneau" shape="edit" title="Modifier ce créneau" value="%d"|args:$c.id}}
{{/if}}
{{:button type="submit" class="mini" name="suppr_creneau" shape="delete" title="Supprimer ce créneau" value="%d"|args:$c.id}}
{{/if}}
</th>
{{/foreach}}
</tr>
</thead>
</table>
</div>
</form>
</div>
<div class="card">
{{if $edit_c_ok}}
<h2>Modifier ce créneau</h2>
<form method="post" action="" class="ajout">
{{*
<label>Titre <input type="text" name="titre" value="{{$edit_c_titre}}" placeholder="ex. Permanence atelier" /></label>
<label>Date <input type="date" name="date" value="{{$edit_c_date}}" required="required" /></label>
<label>de <input type="time" name="debut" value="{{$edit_c_debut}}" required="required" /></label>
<label>à <input type="time" name="fin" value="{{$edit_c_fin}}" required="required" /></label>
<button type="submit" name="rename_creneau" value="{{$edit_creneau}}">Enregistrer</button>
*}}
{{:input type="text" name="titre" placeholder="Ex. Permanence Atelier" label="Titre" default=$edit_c_titre }}
{{:input type="date" name="date" default=$edit_c_date label="Date" required=true}}
{{:input type="time" name="debut" default=$edit_c_debut label="de" required=true}}
{{:input type="time" name="fin" default=$edit_c_fin label="à" required=true}}
{{:button type="submit" name="rename_creneau" label="Modifier" value="%d"|args:$_POST.edit_creneau }}
<a class="retour" href="{{$_url}}?id={{$s.id}}">Annuler</a>
</form>
{{else}}
<h2>Ajouter un créneau</h2>
<form method="post" action="" class="ajout">
{{*
<label>Titre <input type="text" name="titre" placeholder="ex. Permanence atelier" /></label>
<label>Date <input type="date" name="date" required="required" /></label>
<label>de <input type="time" name="debut" value="19:00" required="required" /></label>
<label>à <input type="time" name="fin" value="21:00" required="required" /></label>
<button type="submit" name="add_creneau" value="1">Ajouter la colonne</button>
*}}
{{:input type="text" name="titre" placeholder="Ex. Permanence Atelier" label="Titre"}}
{{:input type="date" name="date" label="Date" required=true}}
{{:input type="time" name="debut" default="19:00" label="de" required=true}}
{{:input type="time" name="fin" default="21:00" label="à" required=true}}
{{:button type="submit" name="add_creneau" label="Ajouter la colonne" value="%d"|args:$s.id }}
</form>
{{/if}}
</div>
<div class="card">
<h2>Ajouter plusieurs créneaux (saisie libre)</h2>
<form method="post" action="">
<table style="width:100%; border-collapse:collapse;">
<thead><tr><th style="text-align:left; font-size:.85rem; color:#666;">Titre</th><th style="text-align:left; font-size:.85rem; color:#666;">Date</th><th style="text-align:left; font-size:.85rem; color:#666;">De</th><th style="text-align:left; font-size:.85rem; color:#666;">À</th></tr></thead>
<tbody>
{{#foreach count=5 key="i"}}
<tr>
<td>{{:input type="text" name="titre_%d"|args:$i placeholder="Ex. Permanence Atelier" label="Titre"}}</td>
<td>{{:input type="date" name="date_%d"|args:$i label="Date" required=true}}</td>
<td>{{:input type="time" name="debut_%d"|args:$i default="19:00" label="de" required=true}}</td>
<td>{{:input type="time" name="fin_%d"|args:$i default="21:00" label="à" required=true}}</td>
</tr>
{{/foreach}}
{{*
<tr>
<td><input type="text" name="titre_1" placeholder="ex. Permanence" /></td>
<td><input type="date" name="date_1" /></td><td>
<input type="time" name="debut_1" value="19:00" /></td>
<td><input type="time" name="fin_1" value="21:00" /></td>
</tr>
<tr>
<td><input type="text" name="titre_2" placeholder="ex. Permanence" /></td>
<td><input type="date" name="date_2" /></td>
<td><input type="time" name="debut_2" value="19:00" /></td>
<td><input type="time" name="fin_2" value="21:00" /></td>
</tr>
<tr>
<td><input type="text" name="titre_3" placeholder="ex. Permanence" /></td>
<td><input type="date" name="date_3" /></td>
<td><input type="time" name="debut_3" value="19:00" /></td>
<td><input type="time" name="fin_3" value="21:00" /></td>
</tr>
<tr>
<td><input type="text" name="titre_4" placeholder="ex. Permanence" /></td>
<td><input type="date" name="date_4" /></td>
<td><input type="time" name="debut_4" value="19:00" /></td>
<td><input type="time" name="fin_4" value="21:00" /></td>
</tr>
<tr>
<td><input type="text" name="titre_5" placeholder="ex. Permanence" /></td>
<td><input type="date" name="date_5" /></td>
<td><input type="time" name="debut_5" value="19:00" /></td>
<td><input type="time" name="fin_5" value="21:00" /></td>
</tr>
*}}
</tbody>
</table>
<p class="aide">Laissez la date vide pour ignorer une ligne. Seules les lignes avec une date seront ajoutées.</p>
{{:button type="submit" name="ajout_multiple" label="Ajouter ces créneaux" value="%d"|args:$s.id }}
{{*<p><button type="submit" name="ajout_multiple" value="1">Ajouter ces créneaux</button></p>*}}
</form>
</div>
<div class="card">
<h2>Générer des créneaux automatiquement</h2>
<form method="post" action="" class="ajout">
{{*
<label>Titre <input type="text" name="g_titre" placeholder="ex. Permanence atelier" /></label>
<label>de <input type="time" name="g_heure_debut" value="19:00" required="required" /></label>
<label>à <input type="time" name="g_heure_fin" value="21:00" required="required" /></label>
<label>Du <input type="date" name="g_debut_periode" required="required" /></label>
<label>au <input type="date" name="g_fin_periode" required="required" /></label>
<button type="submit" name="generer_creneaux" value="1">Générer les créneaux</button>
*}}
{{:input type="text" name="g_titre" placeholder="Ex. Permanence Atelier" label="Titre"}}
{{:input type="time" name="g_heure_debut" default="19:00" label="de" required=true}}
{{:input type="time" name="g_heure_fin" default="21:00" label="à" required=true}}
{{:input type="date" name="g_debut_periode" label="Du" required=true}}
{{:input type="date" name="g_fin_periode" label="au" required=true}}
{{:button type="submit" name="generer_creneaux" label="Générer les créneaux" value="%d"|args:$s.id }}
<div style="width:100%; display:flex; gap:1rem; flex-wrap:wrap; margin-top:.5rem;">
<label style="display:flex; align-items:center; gap:.3rem; font-size:.9rem;"><input type="checkbox" name="g_jour[]" value="1" /> Lundi</label>
<label style="display:flex; align-items:center; gap:.3rem; font-size:.9rem;"><input type="checkbox" name="g_jour[]" value="2" /> Mardi</label>
<label style="display:flex; align-items:center; gap:.3rem; font-size:.9rem;"><input type="checkbox" name="g_jour[]" value="3" /> Mercredi</label>
<label style="display:flex; align-items:center; gap:.3rem; font-size:.9rem;"><input type="checkbox" name="g_jour[]" value="4" /> Jeudi</label>
<label style="display:flex; align-items:center; gap:.3rem; font-size:.9rem;"><input type="checkbox" name="g_jour[]" value="5" /> Vendredi</label>
<label style="display:flex; align-items:center; gap:.3rem; font-size:.9rem;"><input type="checkbox" name="g_jour[]" value="6" /> Samedi</label>
<label style="display:flex; align-items:center; gap:.3rem; font-size:.9rem;"><input type="checkbox" name="g_jour[]" value="7" /> Dimanche</label>
</div>
</form>
<p class="aide">Crée un créneau pour chaque jour correspondant dans la période choisie (ex. "tous les mardis du 1er au 30 septembre"). Limité à un an à partir de la date de début.</p>
</div>