From ac14767b14f69e7361ed962db5c331f63fbcebc2 Mon Sep 17 00:00:00 2001 From: Myriam Delaruelle <myriam.delaruelle@univ-lorraine.fr> Date: Thu, 27 Feb 2025 15:46:11 +0100 Subject: [PATCH] fix activities --- amd/build/suivi.js | 10 ++++++++-- suivi_unit.php | 5 ++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/amd/build/suivi.js b/amd/build/suivi.js index 8ecf59e..b401c67 100644 --- a/amd/build/suivi.js +++ b/amd/build/suivi.js @@ -131,7 +131,10 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'], function fetchProgress(){ completeUrl=getCompleteUrl(); data={action: 'fetchprogress'}; - if(localStorage.groups && JSON.parse(localStorage.groups).length > 0){ + url=window.location.search; + urlParams = new URLSearchParams(url); + courseid=urlParams.get('courseid'); + if(localStorage.groups && JSON.parse(localStorage.groups).length > 0 && localStorage.courseid && localStorage.courseid==courseid){ var cachedgroupsid=JSON.parse(localStorage.groups); var groupsid=[]; for (var i = 0; i < cachedgroupsid.length; i++) { @@ -155,6 +158,7 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'], parsedrequest=JSON.parse(request); data=calcPercentage(parsedrequest); if(data.students.length<1000 && !localStorage.groups){ + localStorage.setItem("courseid",parsedrequest["courseid"]); localStorage.setItem("groups",parsedrequest["groups"]); } @@ -230,6 +234,7 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'], showHideStudents(); if(data.students.length<1000){ + localStorage.setItem("courseid",parsedrequest["courseid"] ) localStorage.setItem("groups",JSON.stringify(parsedrequest["groups"])); } @@ -736,7 +741,8 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'], } updateGroupsFilterLabel(); }); - if(localStorage.groups && JSON.parse(localStorage.groups) != 0){ + if(localStorage.groups && JSON.parse(localStorage.groups) != 0 && localStorage.courseid && localStorage.courseid==courseid ){ + console.log("on est passé dans le cache alors qu'on aurait pas dû"); var checkedGroups=JSON.parse(localStorage.groups); //var checkedGroups=JSON.parse(localStorage.groups); diff --git a/suivi_unit.php b/suivi_unit.php index c245781..c5f537a 100644 --- a/suivi_unit.php +++ b/suivi_unit.php @@ -556,8 +556,10 @@ else if (isset($_POST['action']) && !empty($_POST['action'])) { $modules = get_activities($completion, $activesectionid); $data["students"]=get_progress_students($modules, $arrayprogress, $groups, $activegroupsids, $activesectionid, $courseid, $cache, $completion); $data["modules"]=$modules; - $data["countstudents"]=count($data["students"]); + $data["countstudents"]=$countstudents; + $data["groups"]=$activegroupsids; + $data["courseid"]=$courseid; //$data = set_links($data, $modules, $listoptions); echo json_encode($data); @@ -599,6 +601,7 @@ else { $data["msg_success"] = $msg; } + } -- GitLab