diff --git a/app/static/js/assiduites.js b/app/static/js/assiduites.js index 00757640e1056f0d086b0c957f9333a9e7825819..c9fd3fb9dc9f90f0f482e833ff6d28b4b36548a5 100644 --- a/app/static/js/assiduites.js +++ b/app/static/js/assiduites.js @@ -798,13 +798,16 @@ function estJourTravail(jour, nonWorkdays) { return !nonWorkdays.includes(d); } -function retourJourTravail(date) { +function retourJourTravail(date, anti = true) { const jourMiliSecondes = 86400000; // 24 * 3600 * 1000 | H * s * ms let jour = date; let compte = 0; while (!estJourTravail(jour, nonWorkDays) && compte++ < 7) { - jour = new Date(jour - jourMiliSecondes); + let temps = anti + ? jour - jourMiliSecondes + : jour.valueOf() + jourMiliSecondes; + jour = new Date(temps); } return jour; } @@ -837,6 +840,17 @@ function dateCouranteEstTravaillee() { return true; } +function jourSuivant(anti = false) { + let date = $("#date").datepicker("getDate"); + + date = anti ? date.add(-1, "days") : date.add(1, "days"); + + const nouvelleDate = retourJourTravail(date, anti); + + $("#date").datepicker("setDate", nouvelleDate); + creerTousLesEtudiants(etuds); +} + /** * Ajout de la visualisation des assiduités de la mini timeline * @param {HTMLElement} el l'élément survollé diff --git a/app/templates/assiduites/pages/signal_assiduites_group.j2 b/app/templates/assiduites/pages/signal_assiduites_group.j2 index d7cf206aa03f533583ee8bfa76c03d44732acc7f..08d13ae2ee247fa55ba63fabe36b3d6afd651cb2 100644 --- a/app/templates/assiduites/pages/signal_assiduites_group.j2 +++ b/app/templates/assiduites/pages/signal_assiduites_group.j2 @@ -153,8 +153,14 @@ <div class="infos"> <div class="infos-button">Groupes : {{grp|safe}}</div> <div> + <button class="btn_date" onclick="jourSuivant(true)"> + ⇤ + </button> <input type="text" name="date" id="date" class="datepicker" value="{{date}}"> </div> + <button class="btn_date" onclick="jourSuivant(false)"> + ⇥ + </button> </div> </fieldset> <div style="display: {{'none' if readonly == 'true' else 'block'}};">