From 3f754ee994d4ebf0d4c617a98d236bc72260157c Mon Sep 17 00:00:00 2001 From: fredtempez Date: Sun, 8 Oct 2023 17:40:07 +0200 Subject: [PATCH] =?UTF-8?q?v28=20historique=20plut=C3=B4t=20que=20derni?= =?UTF-8?q?=C3=A8re=20page=20vue?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/class/router.class.php | 6 ++---- core/core.php | 2 +- core/module/course/course.php | 15 +++++++++------ 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/core/class/router.class.php b/core/class/router.class.php index 33630cd..2bd6bdc 100644 --- a/core/class/router.class.php +++ b/core/class/router.class.php @@ -467,7 +467,7 @@ class core extends common exit(); } - // Sauvegarde la dernière page visitée par l'utilisateur connecté + // Sauvegarde la dernière page visitée par l'utilisateur connecté et enregistre l'historique des consultations if ( $this->getUser('id') && self::$siteContent !== 'home' @@ -477,10 +477,8 @@ class core extends common $this->getUser('group') < self::GROUP_ADMIN || $this->getUser('id') !== $this->getData(['course', self::$siteContent, 'author']) ) - ) { - $this->setData(['enrolment', self::$siteContent, $this->getUser('id'), 'lastPageId', $this->getUrl(0)]); - $this->setData(['enrolment', self::$siteContent, $this->getUser('id'), 'dateVisit', time()]); + $this->setData(['enrolment', self::$siteContent, $this->getUser('id'), 'history', $this->getUrl(0), time()]); } // Journalisation diff --git a/core/core.php b/core/core.php index 30202de..cf046c6 100644 --- a/core/core.php +++ b/core/core.php @@ -50,7 +50,7 @@ class common const ACCESS_TIMER = 1800; // Numéro de version - const ZWII_VERSION = '1.0.27'; + const ZWII_VERSION = '1.0.28'; // URL autoupdate const ZWII_UPDATE_URL = 'https://forge.chapril.org/ZwiiCMS-Team/update/raw/branch/master/lms/'; diff --git a/core/module/course/course.php b/core/module/course/course.php index a35a021..064cf4b 100644 --- a/core/module/course/course.php +++ b/core/module/course/course.php @@ -377,11 +377,14 @@ class course extends common $users = $this->getData(['enrolment', $this->getUrl(2)]); ksort($users); foreach ($users as $userId => $userValue) { + $history = $userValue['history']; + $maxTime = max($history); + $pageId = array_search($maxTime, $history); self::$courseUsers[] = [ $userId, $this->getData(['user', $userId, 'firstname']) . ' ' . $this->getData(['user', $userId, 'lastname']), - $userValue['lastPageId'], - helper::dateUTF8('%d %B %Y - %H:%M', $userValue['dateVisit']), + $pageId, + helper::dateUTF8('%d %B %Y - %H:%M', $maxTime), template::button('userDelete' . $userId, [ 'class' => 'userDelete buttonRed', 'href' => helper::baseUrl() . 'course/userDelete/'. $this->getUrl(2) . '/' . $userId, @@ -479,8 +482,9 @@ class course extends common && $this->courseIsAvailable($courseId) ) { // Récupérer la dernière page visitée par cet utilisateur si elle existe - if ($this->getData(['enrolment', $courseId, $userId, 'lastPageId'])) { - $redirect .= $this->getData(['enrolment', $courseId, $userId, 'lastPageId']); + $maxTime = max($this->getData(['enrolment', $courseId, $userId, 'history'])); + if ($maxTime) { + $redirect .= array_search($maxTime,$this->getData(['enrolment', $courseId, $userId, 'history'])); } else { // Sinon la page d'accueil par défaut du module $redirect .= $this->getData(['course', $courseId, 'homePageId']); @@ -660,8 +664,7 @@ class course extends common $courseId, $userId, [ - 'lastPageId' => '', - 'dateVisit' => 0 + 'history' => [], ] ]); }