diff --git a/app/static/js/assiduites.js b/app/static/js/assiduites.js index 8141dec33ccba626f6ac04c60668bf1b60b16b70..bc5eb5e112cd40e2332870f92249210ecb681067 100644 --- a/app/static/js/assiduites.js +++ b/app/static/js/assiduites.js @@ -134,6 +134,8 @@ function validateSelectors(btn) { generateAllEtudRow(); btn.remove(); + document.querySelector(".hide_pictures_holder").remove(); + // Auto actualisation $("#tl_date").on("change", updateEtudList); $("#group_ids_sel").on("change", updateEtudList); @@ -714,7 +716,7 @@ function setupDate(onchange = null) { if (!document.querySelector(".selectors").disabled) { try { document.querySelector(".infos .ui-datepicker-trigger").click(); - } catch {} + } catch { } } }); @@ -1331,12 +1333,11 @@ function getAllAssiduitesFromEtud( ) { const url_api = getUrl() + - `/api/assiduites/${etudid}${ - order - ? "/query?order%°" - .replace("%", justifs ? "&with_justifs" : "") - .replace("°", courant ? "&courant" : "") - : "" + `/api/assiduites/${etudid}${order + ? "/query?order%°" + .replace("%", justifs ? "&with_justifs" : "") + .replace("°", courant ? "&courant" : "") + : "" }`; async_get( url_api, @@ -1344,7 +1345,7 @@ function getAllAssiduitesFromEtud( assiduites[etudid] = data; action(data); }, - (_) => {} + (_) => { } ); } @@ -1486,7 +1487,12 @@ function generateEtudRow( }); if (readOnly) assi = ""; const conflit = assiduite.type == "conflit" && !readOnly ? "conflit" : ""; - const pdp_url = `${getUrl()}/api/etudiant/etudid/${etud.id}/photo?size=small`; + + const hidePicturesCheckbox = document.querySelector("#hide_pictures"); + let profilePicture = ""; + if (!hidePicturesCheckbox.checked) { + profilePicture = `<img class="pdp" src="${`${getUrl()}/api/etudiant/etudid/${etud.id}/photo?size=small`}">`; + } let defdem = ""; @@ -1494,16 +1500,15 @@ function generateEtudRow( if (etud.id in etudsDefDem) { defdem = etudsDefDem[etud.id] == "D" ? "dem" : "def"; } - } catch (_) {} + } catch (_) { } - const HTML = `<div class="etud_row ${conflit} ${defdem}" id="etud_row_${ - etud.id - }"> + const HTML = `<div class="etud_row ${conflit} ${defdem}" id="etud_row_${etud.id + }"> <div class="index">${index}</div> <div class="name_field"> - <img class="pdp" src="${pdp_url}"> + ${profilePicture} <a class="name_set" href="bilan_etud?etudid=${etud.id}"> <h4 class="nom">${etud.nom}</h4> @@ -1515,9 +1520,8 @@ function generateEtudRow( <div id="prevDateAssi" class="${assiduite.prevAssiduites?.etat?.toLowerCase()}"> </div> </div> - <fieldset class="btns_field single" etudid="${etud.id}" assiduite_id="${ - assiduite.id - }" type="${assiduite.type}"> + <fieldset class="btns_field single" etudid="${etud.id}" assiduite_id="${assiduite.id + }" type="${assiduite.type}"> ${assi} @@ -1613,7 +1617,7 @@ function generateAllEtudRow() { if (isSingleEtud()) { try { actualizeEtud(etudid); - } catch (ignored) {} + } catch (ignored) { } return; } @@ -1788,7 +1792,7 @@ function getJustificatifFromPeriod(date, etudid, update) { success: (data) => { update(data); }, - error: () => {}, + error: () => { }, }); } @@ -1841,7 +1845,7 @@ function fastJustify(assiduite) { generateAllEtudRow(); try { loadAll(); - } catch {} + } catch { } }; const content = document.createElement("fieldset"); @@ -1863,7 +1867,7 @@ function fastJustify(assiduite) { "Nouveau justificatif (Rapide)", content, success, - () => {}, + () => { }, "var(--color-primary)" ); }; @@ -1894,7 +1898,7 @@ function justifyAssiduite(assiduite_id, justified) { return bool; } -function createJustificatif(justif, success = () => {}) { +function createJustificatif(justif, success = () => { }) { const path = getUrl() + `/api/justificatif/${etudid}/create`; sync_post(path, [justif], success, (data, status) => { //error @@ -1911,8 +1915,7 @@ function getAllJustificatifsFromEtud( ) { const url_api = getUrl() + - `/api/justificatifs/${etudid}${ - order ? "/query?order°".replace("°", courant ? "&courant" : "") : "" + `/api/justificatifs/${etudid}${order ? "/query?order°".replace("°", courant ? "&courant" : "") : "" }`; async_get( @@ -1920,7 +1923,7 @@ function getAllJustificatifsFromEtud( (data) => { action(data); }, - () => {} + () => { } ); } diff --git a/app/templates/assiduites/pages/signal_assiduites_group.j2 b/app/templates/assiduites/pages/signal_assiduites_group.j2 index 12380afaa222cfc08cddc690ac0cbb0d4951a228..4bfa8c4fb64411de209bfd564125a26a958dfaab 100644 --- a/app/templates/assiduites/pages/signal_assiduites_group.j2 +++ b/app/templates/assiduites/pages/signal_assiduites_group.j2 @@ -120,13 +120,22 @@ {% else %} {% endif %} + {% if readonly == "true" %} + <div class="hide_pictures_holder"> + <input type="checkbox" id="hide_pictures" name="hide_pictures" checked /> + <label for="hide_pictures">Cacher les photos des étudiants</label> + </div> <button id="validate_selectors" onclick="validateSelectors(this)"> - Voir l'assiduité + Voir l'assiduité </button> {% else %} + <div class="hide_pictures_holder"> + <input type="checkbox" id="hide_pictures" name="hide_pictures" checked /> + <label for="hide_pictures">Cacher les photos des étudiants</label> + </div> <button id="validate_selectors" onclick="validateSelectors(this)"> - Faire la saisie + Faire la saisie </button> {% endif %}