From c0d14596a79bc717c301c75b71a2ea13f4d70a3c Mon Sep 17 00:00:00 2001 From: fredtempez Date: Thu, 11 Apr 2024 15:46:42 +0200 Subject: [PATCH] =?UTF-8?q?fonction=20update=20=C3=A0=20tester?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/include/update.inc.php | 42 +++++++++++-------------------------- 1 file changed, 12 insertions(+), 30 deletions(-) diff --git a/core/include/update.inc.php b/core/include/update.inc.php index 48c6ca8..0eadb5a 100644 --- a/core/include/update.inc.php +++ b/core/include/update.inc.php @@ -10,7 +10,7 @@ if ( ) { // Supprime la variable path des profils, seul l'accès à l'espace et autorisé. foreach (['1', '2'] as $group) { - foreach ( array_keys($this->getData(['profil', $group])) as $profil) { + foreach (array_keys($this->getData(['profil', $group])) as $profil) { if (is_null($this->getData(['profil', $group, $profil, 'folder', 'path'])) === false) { $path = $this->getData(['profil', $group, $profil, 'folder', 'path']); $this->setData(['profil', $group, $profil, 'folder', 'homePath', $path]); @@ -26,39 +26,21 @@ if ( if ( $this->getData(['core', 'dataVersion']) < 1800 ) { - // Déplace les historiques dans les dossiers des esapaces - // Parcourir les espaces - foreach ($this->getData(['course']) as $courseId => $courseValues) { - $data = []; - //Parcourir les participants - foreach ($this->getData(['user']) as $userId => $userValues) { - // Un historique existe pour ce participant - $report = $this->getData(['enrolment', $courseId, $userId, 'history']); - if ( is_array($report) - ) { - // Ecriture dans un fichier report dans le dossier de l'espace - $data[$userId] = array_merge($data, [$userId => $report]); - // Nettoyage du fichier des inscriptions - // Ce fichier ne contient que l'id du participant et de la date et de l'id de la dernière page vue - // $this->deleteData(['enrolment', $courseId, $userId, 'history']); - } - } - // Stocke le rapport en CSV - $file = fopen(self::DATA_DIR . $courseId . '/report.csv', 'w'); + // Parcourir la structure pour écrire dans les fichiers CSV + foreach ($this->getData(['enrolment']) as $courseId => $users) { + $filename = self::DATA_DIR . $courseId . '/report.csv'; + $fp = fopen($filename, 'w'); - // Parcourir les données - foreach ($data as $name => $userData) { - foreach ($userData as $pageId => $timestamps) { + foreach ($users as $userId => $userData) { + $history = $userData['history']; + foreach ($history as $pageId => $timestamps) { foreach ($timestamps as $timestamp) { - // Écrire chaque ligne dans le fichier CSV - fputcsv($file, array($name, $pageId, $timestamp), ';'); + fputcsv($fp, [$userId, $pageId, $timestamp]); } } } - - // Fermer le fichier - fclose($file); - } - //$this->setData(['core', 'dataVersion', 1800]); + fclose($fp); + } + //$this->setData(['core', 'dataVersion', 1800]); } \ No newline at end of file