From 75826a3f69794e593ab124a8c5cefb765b38e5e9 Mon Sep 17 00:00:00 2001 From: Myriam Delaruelle <myriam.delaruelle@univ-lorraine.fr> Date: Thu, 29 Jun 2023 15:42:53 +0200 Subject: [PATCH] fix filter activity --- amd/build/suivi.js | 24 +++++++++++++++++++++--- styles.css | 12 ++++++++++-- 2 files changed, 31 insertions(+), 5 deletions(-) diff --git a/amd/build/suivi.js b/amd/build/suivi.js index 37194de..7535e2b 100644 --- a/amd/build/suivi.js +++ b/amd/build/suivi.js @@ -227,7 +227,6 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'], var arrayActivitiesID=[]; var activitiesToStore=[]; var activities = $('input[name="options[]"]'); - for(var i=0; i<activities.length;i++){ prog=data.modules.find(element => element.id === activities[i].value); @@ -481,6 +480,7 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'], $('.selectall').click(function() { if ($(".selectall").is(':checked')) { checkAllActivitiesFilter(); + displayActivities(); } else { $('.option').prop('checked', false); var message=str.get_string('selectedActivities', 'format_iena'); @@ -488,6 +488,7 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'], $(".dropdown-text").html('0 '+localizedEditString); }); $(".select-text").html(' Select'); + displayActivities(); } }); initActivityFilter(); @@ -496,7 +497,7 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'], //On va recharger dynamiquement les options donc on doit recréer les événements à chaque fois qu'on change de section function registerActivityFilter(){ - $("input[type='checkbox'].justone").change(function(){ + /*$("input[type='checkbox'].justone").change(function(){ var a = $("input[type='checkbox'].justone"); if(a.length == a.filter(":checked").length){ console.log("on va sélectionner tout du coup"); @@ -509,10 +510,21 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'], $(".select-text").html(' Select'); } displayTotalActivitiesFilter(); - }); + });*/ $("input[type='checkbox'].justone").on('click', function(e){ e.stopPropagation(); + var a = $("input[type='checkbox'].justone"); + if(a.length == a.filter(":checked").length){ + $('.selectall').prop('checked', true); + $(".select-text").html(' Deselect'); + } + else { + + $('.selectall').prop('checked', false); + $(".select-text").html(' Select'); + } + displayTotalActivitiesFilter(); displayActivities(); }); @@ -534,6 +546,7 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'], $(".dropdown-text").html(total + ' '+localizedEditString); }); } + //displayActivities(); } @@ -541,14 +554,17 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'], //Stocke le filtre des activités en localStorage pour ne pas avoir 50 id dans l'url //On fait bien attention à rétablir cocher le selectall si toutes les activités sont bien cochées function initActivityFilter(){ + if(localStorage.activities){ var checkedActivities=JSON.parse(localStorage.activities); var activities=$("input[type='checkbox'].justone"); if(activities.length===checkedActivities.length){ + $(".selectall").prop("checked", true); $("input[type='checkbox'].justone").prop("checked", true); } else{ + $(".selectall").prop("checked", false); for(var i=0; i<activities.length; i++){ if(checkedActivities.includes(activities[i].value)){ @@ -559,8 +575,10 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'], } } } + } displayTotalActivitiesFilter(); + displayActivities(); } //Coche toutes les activités quand on change de section diff --git a/styles.css b/styles.css index d4b5811..5b44819 100644 --- a/styles.css +++ b/styles.css @@ -695,7 +695,7 @@ span#days-text{ /* Permet la rotation des entêtes du tableau */ th.th-rotate { /* Something you can count on */ - height: 140px; + height: 185px; white-space: nowrap; position: sticky; top:0; @@ -714,7 +714,7 @@ th.th-rotate > div { th.th-rotate > div > span { border-bottom: 1px solid #ccc; padding: 0px 3px; - width: 180px; + width: 240px; display: block; } @@ -1052,6 +1052,14 @@ th.first-column-iena, th.second-column-iena, th.actions-column-iena, th.third-co margin-left: 0; } +.iena-dynamic-options label{ + white-space: nowrap; +text-overflow: ellipsis; +width: 94%; +display: block; +overflow: hidden; +} + .dropdown-menu .divider{ height: 1px; margin: 9px 0; -- GitLab