diff --git a/app/static/js/date_utils.js b/app/static/js/date_utils.js index 0db9d3b0f..efdc120e7 100644 --- a/app/static/js/date_utils.js +++ b/app/static/js/date_utils.js @@ -430,3 +430,23 @@ class Duration { function hasTimeConflict(period, interval) { return period.deb.isBefore(interval.fin) && period.fin.isAfter(interval.deb); } + +// Fonction auxiliaire pour obtenir le numéro de semaine ISO d'une date donnée +function getISOWeek(date) { + const target = new Date(date.valueOf()); + const dayNr = (date.getUTCDay() + 6) % 7; + target.setUTCDate(target.getUTCDate() - dayNr + 3); + const firstThursday = target.valueOf(); + target.setUTCMonth(0, 1); + if (target.getUTCDay() !== 4) { + target.setUTCMonth(0, 1 + ((4 - target.getUTCDay() + 7) % 7)); + } + return 1 + Math.ceil((firstThursday - target) / 604800000); +} + +// Fonction auxiliaire pour obtenir le nombre de semaines ISO dans une année donnée +function getISOWeeksInYear(year) { + const date = new Date(year, 11, 31); + const week = getISOWeek(date); + return week === 1 ? getISOWeek(new Date(year, 11, 24)) : week; +} diff --git a/app/templates/assiduites/pages/signal_assiduites_hebdo.j2 b/app/templates/assiduites/pages/signal_assiduites_hebdo.j2 index 874f463b4..5b2a7f28f 100644 --- a/app/templates/assiduites/pages/signal_assiduites_hebdo.j2 +++ b/app/templates/assiduites/pages/signal_assiduites_hebdo.j2 @@ -7,8 +7,9 @@ @@ -159,6 +168,10 @@ #confirmButton:hover { background-color: var(--color-secondary); } + +.etudinfo{ + text-align: left; +} {% endblock styles %} @@ -172,37 +185,359 @@ + + + + {% endblock scripts %} {% block title %} @@ -298,48 +642,63 @@ document.addEventListener("DOMContentLoaded", ()=>{
Étudiants | -Lundi | -Mardi | -Mercredi | -Jeudi | -Vendredi | + + {% for jour in hebdo_jours %} + + {% if not jour[0] or jour[1][0] not in ['Samedi', 'Dimanche'] %} +{{ jour[1][0] }} {{jour[1][1] }} | + {% endif %} + + {% endfor %}||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Matin | -Après-midi | -Matin | -Après-midi | -Matin | -Après-midi | -Matin | -Après-midi | -Matin | -Après-midi | + {% for jour in hebdo_jours %} + + {% if not jour[0] or jour[1][0] not in ['Samedi', 'Dimanche'] %} +Matin | +Après-midi | + {% endif %} + {% endfor %} +|
+ {% for jour in hebdo_jours %} + {% if not jour[0] or jour[1][0] not in ['Samedi', 'Dimanche'] %} + | + + | ++ + | + {% endif %} + {% endfor %} +||||||||||
{{ etud.nomprenom }} | - {# à changer par jour travaillés (sco pref) #} - {% for day in ['lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi'] %} -+ {# Sera rempli en JS #} + {# Ne pas afficher bouton présent si pref "non présences" #} + {# | @@ -348,8 +707,7 @@ document.addEventListener("DOMContentLoaded", ()=>{ - | - {% endfor %} + #}