From f6c0c2d871d5ee76867d2832a7a3c23a486f2bdf Mon Sep 17 00:00:00 2001 From: fredtempez Date: Fri, 27 Oct 2023 21:40:53 +0200 Subject: [PATCH] copie le theme depuis existant Supprime la fonction getcourses de core.php --- core/core.php | 31 ----------------------------- core/module/course/course.php | 14 +++++++++++-- core/module/course/view/add/add.php | 10 +++++----- 3 files changed, 17 insertions(+), 38 deletions(-) diff --git a/core/core.php b/core/core.php index db43f0c..9c8bd7c 100644 --- a/core/core.php +++ b/core/core.php @@ -1407,37 +1407,6 @@ class common // Fonctions pour la gestion des cours - - /** - * Retourne un tableau de tous les cours selon les autorisations - * @param string $access - * - 0 le cours est ouvert - * - 1 le cours est ouvert entre les dates - * - 2 le cours est fermé - * @param string $enrolment - * - 0 accès est anonyme - * - 1 accès libre - * - 2 accès avec clé - * - 3 manuel, le prof inscrits - */ - public function getCourses($access = null, $enrolment = null) - { - $courses = $this->getData(['course']); - $response = []; - foreach ($courses as $courseId => $courseValues) { - $response[] = ($access === $courseValues['access'] || $access === null) - ? $courseId : ''; - $response[] = ($enrolment === $courseValues['enrolment'] || $enrolment === null) - ? $courseId : ''; - } - $response = array_unique($response); - $response = array_filter($response, function ($value) { - // Supprime les éléments vides (null, "", 0, false, etc.) - return !empty($value); - }); - return $response; - } - /** * Retourne les cours d'un utilisateur * @param string $userId identifiant diff --git a/core/module/course/course.php b/core/module/course/course.php index c3cd811..3422e60 100644 --- a/core/module/course/course.php +++ b/core/module/course/course.php @@ -156,13 +156,18 @@ class course extends common 'category' => $this->getInput('courseAddCategories'), 'description' => $this->getInput('courseAddDescription', helper::FILTER_STRING_SHORT, true), 'access' => $this->getInput('courseAddAccess', helper::FILTER_INT), - 'openingDate' => $this->getInput('courseOpeningDate', helper::FILTER_DATETIME), - 'closingDate' => $this->getInput('courseClosingDate', helper::FILTER_DATETIME), + 'openingDate' => $this->getInput('courseAddOpeningDate', helper::FILTER_DATETIME), + 'closingDate' => $this->getInput('courseAddClosingDate', helper::FILTER_DATETIME), 'enrolment' => $this->getInput('courseAddEnrolment', helper::FILTER_INT), 'enrolmentKey' => $this->getInput('courseAddEnrolmentKey'), ] ]); + // Copie du thème + $sourceId = $this->getInput('courseAddTheme'); + copy(self::DATA_DIR . $sourceId . '/theme.json', self::DATA_DIR . $courseId . '/theme.json'); + copy(self::DATA_DIR . $sourceId . '/theme.css', self::DATA_DIR . $courseId . '/theme.css'); + // Valeurs en sortie $this->addOutput([ 'redirect' => helper::baseUrl() . 'course', @@ -182,6 +187,11 @@ class course extends common // Liste des catégories de cours self::$courseCategories = $this->getData(['category']); + // Liste des cours disponibles pour la copie du thème + self::$courses = $this->getData(['course']); + self::$courses = helper::arrayColumn(self::$courses, 'title', 'SORT_ASC' ); + self::$courses = array_merge(['home'=>'Accueil de la plate-forme'], self::$courses); + // Valeurs en sortie $this->addOutput([ 'title' => helper::translate('Ajouter un cours'), diff --git a/core/module/course/view/add/add.php b/core/module/course/view/add/add.php index 20a7ab0..80bc308 100644 --- a/core/module/course/view/add/add.php +++ b/core/module/course/view/add/add.php @@ -38,12 +38,12 @@
- 'Accueil du cours', + 'Copier le thème depuis', ]); ?>
- 'Catégorie', ]); ?>
@@ -62,13 +62,13 @@ ]); ?>
- 'datetime-local', 'label' => 'Ouverture', ]); ?>
- 'datetime-local', 'label' => 'Fermeture', ]); ?>