copie le theme depuis existant

Supprime la fonction getcourses de core.php
This commit is contained in:
Fred Tempez 2023-10-27 21:40:53 +02:00
parent 4ab4b6a08e
commit f6c0c2d871
3 changed files with 17 additions and 38 deletions

View File

@ -1407,37 +1407,6 @@ class common
// Fonctions pour la gestion des cours // 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 * Retourne les cours d'un utilisateur
* @param string $userId identifiant * @param string $userId identifiant

View File

@ -156,13 +156,18 @@ class course extends common
'category' => $this->getInput('courseAddCategories'), 'category' => $this->getInput('courseAddCategories'),
'description' => $this->getInput('courseAddDescription', helper::FILTER_STRING_SHORT, true), 'description' => $this->getInput('courseAddDescription', helper::FILTER_STRING_SHORT, true),
'access' => $this->getInput('courseAddAccess', helper::FILTER_INT), 'access' => $this->getInput('courseAddAccess', helper::FILTER_INT),
'openingDate' => $this->getInput('courseOpeningDate', helper::FILTER_DATETIME), 'openingDate' => $this->getInput('courseAddOpeningDate', helper::FILTER_DATETIME),
'closingDate' => $this->getInput('courseClosingDate', helper::FILTER_DATETIME), 'closingDate' => $this->getInput('courseAddClosingDate', helper::FILTER_DATETIME),
'enrolment' => $this->getInput('courseAddEnrolment', helper::FILTER_INT), 'enrolment' => $this->getInput('courseAddEnrolment', helper::FILTER_INT),
'enrolmentKey' => $this->getInput('courseAddEnrolmentKey'), '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 // Valeurs en sortie
$this->addOutput([ $this->addOutput([
'redirect' => helper::baseUrl() . 'course', 'redirect' => helper::baseUrl() . 'course',
@ -182,6 +187,11 @@ class course extends common
// Liste des catégories de cours // Liste des catégories de cours
self::$courseCategories = $this->getData(['category']); 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 // Valeurs en sortie
$this->addOutput([ $this->addOutput([
'title' => helper::translate('Ajouter un cours'), 'title' => helper::translate('Ajouter un cours'),

View File

@ -38,12 +38,12 @@
</div> </div>
<div class="row"> <div class="row">
<div class="col6"> <div class="col6">
<?php echo template::select('courseaDDHomePageId', $module::$pagesList, [ <?php echo template::select('courseAddTheme', $module::$courses, [
'label' => 'Accueil du cours', 'label' => 'Copier le thème depuis',
]); ?> ]); ?>
</div> </div>
<div class="col6"> <div class="col6">
<?php echo template::select('courseaDDCategories', $module::$courseCategories, [ <?php echo template::select('courseAddCategories', $module::$courseCategories, [
'label' => 'Catégorie', 'label' => 'Catégorie',
]); ?> ]); ?>
</div> </div>
@ -62,13 +62,13 @@
]); ?> ]); ?>
</div> </div>
<div class="col4"> <div class="col4">
<?php echo template::date('courseOpeningDate', [ <?php echo template::date('courseAddOpeningDate', [
'type' => 'datetime-local', 'type' => 'datetime-local',
'label' => 'Ouverture', 'label' => 'Ouverture',
]); ?> ]); ?>
</div> </div>
<div class="col4"> <div class="col4">
<?php echo template::date('courseClosingDate', [ <?php echo template::date('courseAddClosingDate', [
'type' => 'datetime-local', 'type' => 'datetime-local',
'label' => 'Fermeture', 'label' => 'Fermeture',
]); ?> ]); ?>