From f4d6cd635f56c0f19552876a45b7fd69923869fa Mon Sep 17 00:00:00 2001 From: Iziram Date: Tue, 24 Oct 2023 09:44:55 +0200 Subject: [PATCH] Assiduite : module autre + retour a date Fix #765 --- app/static/js/assiduites.js | 1 + app/templates/assiduites/pages/signal_assiduites_etud.j2 | 4 +++- app/templates/assiduites/widgets/differee.j2 | 2 +- .../assiduites/widgets/moduleimpl_dynamic_selector.j2 | 8 +++++--- 4 files changed, 10 insertions(+), 5 deletions(-) diff --git a/app/static/js/assiduites.js b/app/static/js/assiduites.js index 4ad8d380d9..d077ee0c25 100644 --- a/app/static/js/assiduites.js +++ b/app/static/js/assiduites.js @@ -1726,6 +1726,7 @@ function errorAlert() { const moduleimpls = {}; function getModuleImpl(assiduite) { + if (assiduite == null) return "Pas de module"; const id = assiduite.moduleimpl_id; if (id == null || id == undefined) { diff --git a/app/templates/assiduites/pages/signal_assiduites_etud.j2 b/app/templates/assiduites/pages/signal_assiduites_etud.j2 index d0945cff19..7dc6cc3bb5 100644 --- a/app/templates/assiduites/pages/signal_assiduites_etud.j2 +++ b/app/templates/assiduites/pages/signal_assiduites_etud.j2 @@ -83,7 +83,8 @@

Il y a 4 boutons sur la colonne permettant d'enregistrer l'information pour tous les étudiants

Le dernier des boutons retire l'information présente.

Vous pouvez ajouter des colonnes en appuyant sur le bouton +

-

Vous pouvez supprimer une colonne en appuyant sur la croix qui se situe dans le coin haut droit de la colonne. +

Vous pouvez supprimer une colonne en appuyant sur la croix qui se situe dans le coin haut droit de la + colonne.

@@ -103,6 +104,7 @@ if (updateDate()) { actualizeEtud(etudid); updateSelect(); + updateSelectedSelect(getCurrentAssiduiteModuleImplId()); onlyAbs(); } }); diff --git a/app/templates/assiduites/widgets/differee.j2 b/app/templates/assiduites/widgets/differee.j2 index 6d0d8ed139..510585feb3 100644 --- a/app/templates/assiduites/widgets/differee.j2 +++ b/app/templates/assiduites/widgets/differee.j2 @@ -571,7 +571,7 @@ const d_debut = moment(inputDeb).tz(TIMEZONE); const d_fin = moment(inputFin).tz(TIMEZONE); - const moduleimpl_id = col.querySelector("#moduleimpl_select").value; + const moduleimpl_id = col.querySelector("#moduleimpl_select,.dynaSelect").value; const periode = { deb: d_debut, diff --git a/app/templates/assiduites/widgets/moduleimpl_dynamic_selector.j2 b/app/templates/assiduites/widgets/moduleimpl_dynamic_selector.j2 index f5df641016..045546d012 100644 --- a/app/templates/assiduites/widgets/moduleimpl_dynamic_selector.j2 +++ b/app/templates/assiduites/widgets/moduleimpl_dynamic_selector.j2 @@ -104,23 +104,25 @@ function updateSelectedSelect(moduleimpl_id, query = "#moduleimpl_select") { const mod_id = moduleimpl_id != null ? moduleimpl_id : "" - document.querySelector(query).value = mod_id; + document.querySelector(query).value = `${mod_id}`.toLowerCase(); } + + window.addEventListener("load", () => { document.getElementById('moduleimpl_select').addEventListener('change', (el) => { const assi = getCurrentAssiduite(etudid); if (assi) { - editAssiduite(assi.assiduite_id, assi.etat); + editAssiduite(assi.assiduite_id, assi.etat, [assi]); } }) try { const conflicts = getAssiduitesConflict(etudid); if (conflicts.length > 0) { - updateSelectedSelect(conflicts[0].moduleimpl_id); + updateSelectedSelect(getCurrentAssiduiteModuleImplId()); } } catch { } }, { once: true });