Files
agenda/_calendar.html
T

171 lines
11 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{{if $vue != "liste"}}
<div class="card">
<h2>Calendrier ({{$cal_filtre}})</h2>
{{if $vue == "mois"}}
<div class="nav-mois">
<a href="{{$_url}}?vue=mois&amp;an={{$an_prec}}&amp;mois={{$mois_prec}}">&larr;</a>
<span>{{$nom_mois}}</span>
<a href="{{$_url}}?vue=mois&amp;an={{$an_suiv}}&amp;mois={{$mois_suiv}}">&rarr;</a>
</div>
{{else}}
<div class="nav-mois">
{{if $semaine_sel <= 1}}
<a href="{{$_url}}?vue=semaine&amp;an={{$an_prec}}&amp;mois={{$mois_prec}}&amp;semaine_sel={{$total_rows_prec}}">&larr;</a>
{{else}}
<a href="{{$_url}}?vue=semaine&amp;an={{$an}}&amp;mois={{$mois}}&amp;semaine_sel={{"%d-1"|math:$semaine_sel}}">&larr;</a>
{{/if}}
<span>Semaine du {{$nom_mois}}</span>
{{if $semaine_sel >= $total_rows}}
<a href="{{$_url}}?vue=semaine&amp;an={{$an_suiv}}&amp;mois={{$mois_suiv}}&amp;semaine_sel=1">&rarr;</a>
{{else}}
<a href="{{$_url}}?vue=semaine&amp;an={{$an}}&amp;mois={{$mois}}&amp;semaine_sel={{"%d+1"|math:$semaine_sel}}">&rarr;</a>
{{/if}}
</div>
{{/if}}
<div class="scroll-cal">
<table class="calendrier">
<thead>
<tr><th>Lun</th><th>Mar</th><th>Mer</th><th>Jeu</th><th>Ven</th><th>Sam</th><th>Dim</th></tr>
</thead>
<tbody>
<tr>
{{:assign var="cellules." value=1}}{{:assign var="cellules." value=2}}{{:assign var="cellules." value=3}}{{:assign var="cellules." value=4}}{{:assign var="cellules." value=5}}{{:assign var="cellules." value=6}}{{:assign var="cellules." value=7}}{{:assign var="cellules." value=8}}{{:assign var="cellules." value=9}}{{:assign var="cellules." value=10}}
{{:assign var="cellules." value=11}}{{:assign var="cellules." value=12}}{{:assign var="cellules." value=13}}{{:assign var="cellules." value=14}}{{:assign var="cellules." value=15}}{{:assign var="cellules." value=16}}{{:assign var="cellules." value=17}}{{:assign var="cellules." value=18}}{{:assign var="cellules." value=19}}{{:assign var="cellules." value=20}}
{{:assign var="cellules." value=21}}{{:assign var="cellules." value=22}}{{:assign var="cellules." value=23}}{{:assign var="cellules." value=24}}{{:assign var="cellules." value=25}}{{:assign var="cellules." value=26}}{{:assign var="cellules." value=27}}{{:assign var="cellules." value=28}}{{:assign var="cellules." value=29}}{{:assign var="cellules." value=30}}
{{:assign var="cellules." value=31}}{{:assign var="cellules." value=32}}{{:assign var="cellules." value=33}}{{:assign var="cellules." value=34}}{{:assign var="cellules." value=35}}{{:assign var="cellules." value=36}}{{:assign var="cellules." value=37}}{{:assign var="cellules." value=38}}{{:assign var="cellules." value=39}}{{:assign var="cellules." value=40}}
{{:assign var="cellules." value=41}}{{:assign var="cellules." value=42}}
{{#foreach from=$cellules item="n"}}
{{:assign var="rangee_n" value="floor((%d-1)/7)+1"|math:$n}}
{{if $vue == "mois" || $rangee_n == $semaine_sel}}
{{:assign var="jour_num" value="%d-%d"|math:$n:$decalage}}
{{if $jour_num >= 1 && $jour_num <= $nb_jours}}
{{:assign var="date_cellule" value="%04d-%02d-%02d"|args:$an:$mois:$jour_num}}
{{:assign var="dow_cellule" value=$date_cellule|date:"N"}}
{{:assign var="occurrence_mois" value="floor((%d-1)/7)+1"|math:$jour_num}}
{{:assign var="est_derniere_occurrence" value=false}}
{{if "%d+7"|math:$jour_num > $nb_jours}}{{:assign var="est_derniere_occurrence" value=true}}{{/if}}
{{:assign var="evts_ce_jour" from="events_par_jour.%s"|args:$date_cellule}}
{{:assign var="badges_jour" value=""}}
{{#foreach from=$perms_data item="pd"}}
{{if $pd.jour == $dow_cellule}}
{{if $pd.date_debut == "" || $date_cellule >= $pd.date_debut}}
{{if $pd.date_fin == "" || $date_cellule <= $pd.date_fin}}
{{:assign var="est_exclue" value=false}}
{{#foreach from=$pd.exceptions item="ex"}}
{{if $ex == $date_cellule}}{{:assign var="est_exclue" value=true}}{{/if}}
{{/foreach}}
{{if !$est_exclue}}
{{:assign var="afficher_badge" value=false}}
{{if $pd.type_recurrence == "mensuel"}}
{{if $pd.semaine_du_mois == -1 && $est_derniere_occurrence}}{{:assign var="afficher_badge" value=true}}{{/if}}
{{if $pd.semaine_du_mois == $occurrence_mois}}{{:assign var="afficher_badge" value=true}}{{/if}}
{{elseif $pd.type_recurrence == "quinzaine"}}
{{if $pd.date_debut != ""}}
{{:assign var="ref_sem_q" value=$pd.date_debut|date:"W"|intval}}
{{:assign var="cell_sem_q" value=$date_cellule|date:"W"|intval}}
{{:assign var="diff_sem_q" value="(%d-%d) %% 2"|math:$cell_sem_q:$ref_sem_q}}
{{if $diff_sem_q == 0}}{{:assign var="afficher_badge" value=true}}{{/if}}
{{/if}}
{{else}}
{{:assign var="afficher_badge" value=true}}
{{/if}}
{{if $afficher_badge}}
{{:assign var="cle_b" value="%s_a_perm%s"|args:$pd.debut:$pd.id}}
{{:assign var="badges_jour.%s.type"|args:$cle_b value="perm"}}
{{:assign var="badges_jour.%s.debut"|args:$cle_b value=$pd.debut}}
{{:assign var="badges_jour.%s.fin"|args:$cle_b value=$pd.fin}}
{{:assign var="badges_jour.%s.label"|args:$cle_b value=$pd.label}}
{{:assign var="badges_jour.%s.couleur"|args:$cle_b value=$pd.couleur|or:'#4c7a2e'}}
{{:assign var="badges_jour.%s.pid"|args:$cle_b value=$pd.id}}
{{:assign var="badges_jour.%s.lieu"|args:$cle_b value=$pd.lieu}}
{{:assign var="badges_jour.%s.description"|args:$cle_b value=$pd.description}}
{{/if}}
{{/if}}
{{/if}}
{{/if}}
{{/if}}
{{/foreach}}
{{if $evts_ce_jour}}
{{#foreach from=$evts_ce_jour item="ev"}}
{{:assign var="cle_b" value="%s_b_evt%s"|args:$ev.debut:$ev.id}}
{{:assign var="badges_jour.%s.type"|args:$cle_b value="evt"}}
{{:assign var="badges_jour.%s.id"|args:$cle_b value=$ev.id}}
{{:assign var="badges_jour.%s.debut"|args:$cle_b value=$ev.debut}}
{{:assign var="badges_jour.%s.fin"|args:$cle_b value=$ev.fin}}
{{:assign var="badges_jour.%s.label"|args:$cle_b value=$ev.titre}}
{{:assign var="badges_jour.%s.couleur"|args:$cle_b value=$ev.couleur|or:'#8c3a1e'}}
{{:assign var="badges_jour.%s.lieu"|args:$cle_b value=$ev.lieu}}
{{:assign var="badges_jour.%s.description"|args:$cle_b value=$ev.description}}
{{:assign var="badges_jour.%s.lien"|args:$cle_b value=$ev.lien}}
{{:assign var="badges_jour.%s.lien1_label"|args:$cle_b value=$ev.lien1_label}}
{{:assign var="badges_jour.%s.lien1_url"|args:$cle_b value=$ev.lien1_url}}
{{:assign var="badges_jour.%s.lien2_label"|args:$cle_b value=$ev.lien2_label}}
{{:assign var="badges_jour.%s.lien2_url"|args:$cle_b value=$ev.lien2_url}}
{{:assign var="badges_jour.%s.lien3_label"|args:$cle_b value=$ev.lien3_label}}
{{:assign var="badges_jour.%s.lien3_url"|args:$cle_b value=$ev.lien3_url}}
{{/foreach}}
{{/if}}
{{if $badges_jour}}
{{:assign var="badges_tries" value=$badges_jour|ksort|values}}
{{else}}
{{:assign var="badges_tries" value=""}}
{{/if}}
<td{{if $date_cellule == $aujourdhui}} class="today"{{/if}}>
<div class="num">{{$jour_num}}</div>
{{#foreach from=$badges_tries item="bj"}}
{{if $bj.type == "perm"}}
<div class="perm-badge" style="background:{{$bj.couleur}};">
<div class="badge-content" onclick="ouvrirDetailEvt(this);" data-titre="{{$bj.label}}" data-horaire="{{if $bj.debut}}{{$bj.debut}}{{if $bj.fin}}–{{$bj.fin}}{{/if}}{{/if}}" data-lieu="{{$bj.lieu}}" data-description="{{$bj.description}}" data-lien1-label="" data-lien1-url="" data-lien2-label="" data-lien2-url="" data-lien3-label="" data-lien3-url="">
{{if $bj.debut}}{{$bj.debut}}{{if $bj.fin}}–{{$bj.fin}}{{/if}} — {{/if}}{{$bj.label}}{{if $bj.lieu}}<br /><a class="lieu-lien" href="https://www.openstreetmap.org/search?query={{$bj.lieu|url_encode}}" target="_blank" rel="noopener" onclick="event.stopPropagation();">&#128205; {{$bj.lieu}}</a>{{/if}}
{{if $bj.description}}<div class="evt-desc-apercu">{{$bj.description}}</div>{{/if}}
</div>
{{if $est_admin}}
<span class="badge-actions">
<a class="badge-edit" href="index.html?edit_perm={{$bj.pid}}#form-perm" title="Modifier" onclick="event.stopPropagation();">&#9998;</a>
<form method="post" action="index.html?an={{$an}}&amp;mois={{$mois}}" class="mini-form" onclick="event.stopPropagation();">
<input type="hidden" name="perm_id" value="{{$bj.pid}}" />
<input type="hidden" name="date_exclue" value="{{$date_cellule}}" />
<input type="hidden" name="retour_an" value="{{$an}}" />
<input type="hidden" name="retour_mois" value="{{$mois}}" />
<button type="submit" name="suppr_occurrence" value="1" class="mini-x" title="Supprimer seulement ce jour">&#10005;</button>
</form>
</span>
{{/if}}
</div>
{{else}}
{{* background: hsl(var(--first-color), 50%, 90%);
background: linear-gradient(200deg, hsl(var(--first-color), 50%, 90%) 5%, hsl(var(--second-color), 30%, 90%) 30%);
*}}
<div class="evt-badge" style="background:hsl({{$bj.couleur}},100%,50%);">
<div class="badge-content" onclick="ouvrirDetailEvt(this);" data-titre="{{$bj.label}}" data-horaire="{{if $bj.debut}}{{$bj.debut}}{{if $bj.fin}}–{{$bj.fin}}{{/if}}{{/if}}" data-lieu="{{$bj.lieu}}" data-description="{{$bj.description}}" data-lien="{{$bj.lien}}" data-lien1-label="{{$bj.lien1_label}}" data-lien1-url="{{$bj.lien1_url}}" data-lien2-label="{{$bj.lien2_label}}" data-lien2-url="{{$bj.lien2_url}}" data-lien3-label="{{$bj.lien3_label}}" data-lien3-url="{{$bj.lien3_url}}">
{{if $bj.debut}}{{$bj.debut}}{{if $bj.fin}}–{{$bj.fin}}{{/if}} — {{/if}}{{$bj.label}}{{if $bj.lieu}}<br /><a class="lieu-lien" href="https://www.openstreetmap.org/search?query={{$bj.lieu|url_encode}}" target="_blank" rel="noopener" onclick="event.stopPropagation();">&#128205; {{$bj.lieu}}</a>{{/if}}
{{if $bj.description}}<div class="evt-desc-apercu">{{$bj.description}}</div>{{/if}}
</div>
{{if $est_admin}}
<span class="badge-actions">
<a class="badge-edit" href="index.html?edit_event={{$bj.id}}&amp;an={{$an}}&amp;mois={{$mois}}#form-event" title="Modifier" onclick="event.stopPropagation();">&#9998;</a>
<form method="post" action="index.html?an={{$an}}&amp;mois={{$mois}}" class="mini-form" onclick="event.stopPropagation();">
<input type="hidden" name="retour_an" value="{{$an}}" />
<input type="hidden" name="retour_mois" value="{{$mois}}" />
<button type="submit" name="suppr_event" value="{{$bj.id}}" class="mini-x" title="Supprimer">&#10005;</button>
</form>
</span>
{{/if}}
</div>
{{/if}}
{{/foreach}}
</td>
{{else}}
<td class="vide"></td>
{{/if}}
{{/if}}
{{if $vue == "mois" && "%d %% 7"|math:$n == 0 && $n != 42}}</tr><tr>{{/if}}
{{/foreach}}
</tr>
</tbody>
</table>
</div>
</div>
{{/if}}