This commit is contained in:
Fred Tempez 2024-01-18 22:16:59 +01:00
parent efab38d4c5
commit 3e8da80e92

View File

@ -317,7 +317,7 @@ class course extends common
/**
* Duplique un cours et l'affiche dans l'éditeur
*/
public function clone()
public function clone ()
{
// Cours à dupliquer
$courseId = $this->getUrl(2);
@ -330,17 +330,14 @@ class course extends common
$this->copyDir(self::DATA_DIR . $courseId, self::DATA_DIR . $target);
$data = $this->getData(['course', $courseId]);
$this->setData(['course', $target, $data]);
$this->setData(['course', $target, $this->getData(['course', $courseId])]);
// Valeurs en sortie
$this->addOutput([
'redirect' => helper::baseUrl() . 'course/edit/' . $target,
'redirect' => helper::baseUrl() . 'course',
'notification' => helper::translate('Espace dupliqué'),
'state' => true
]);
}
public function delete()
@ -550,9 +547,9 @@ class course extends common
// Liste des inscrits dans le contenu sélectionné.
$users = $this->getData(['enrolment', $courseId]);
if (is_array($users)) {
// Tri du tableau par défaut par $userId
ksort($users);
foreach ($users as $userId => $userValue) {
// Date et heure de la dernière page vue
@ -610,8 +607,12 @@ class course extends common
self::$courseUsers[] = [
$userId,
$this->getData(['user', $userId, 'firstname']) . ' ' . $this->getData(['user', $userId, 'lastname']),
$pages[$this->getData(['enrolment', $courseId, $userId, 'lastPageView'])]['title'],
helper::dateUTF8('%d %B %Y - %H:%M', $this->getData(['enrolment', $courseId, $userId, 'datePageView'])),
isset($pages[$this->getData(['enrolment', $courseId, $userId, 'lastPageView'])]['title'])
? $pages[$this->getData(['enrolment', $courseId, $userId, 'lastPageView'])]['title']
: '',
$this->getData(['enrolment', $courseId, $userId, 'datePageView'])
? helper::dateUTF8('%d %B %Y - %H:%M', $this->getData(['enrolment', $courseId, $userId, 'datePageView']))
: '',
$this->getData(['user', $userId, 'tags']),
template::button('userHistory' . $userId, [
'href' => helper::baseUrl() . 'course/userHistory/' . $courseId . '/' . $userId,
@ -627,6 +628,7 @@ class course extends common
];
}
}
// Ajoute les effectifs aux profils du sélecteur
foreach (self::$courseGroups as $groupId => $groupValue) {
@ -696,11 +698,14 @@ class course extends common
self::$alphabet = array_combine($alphabet, self::$alphabet);
self::$alphabet = array_merge(['all' => 'Tout'], self::$alphabet);
// Liste des inscrits dans le contenu sélectionné.
// Liste des inscrits dans l'espace sélectionné afin de les supprimer de la liste des candidats
$users = $this->getData(['user']);
$suscribers = $this->getData(['enrolment', $courseId]);
if (is_array($suscribers)) {
$suscribers = array_keys($suscribers);
$users = array_diff_key($users, array_flip($suscribers));
$users = array_diff_key($this->getData(['user']), array_flip($suscribers));
}
// Tri du tableau par défaut par $userId
ksort($users);
@ -852,9 +857,9 @@ class course extends common
// Liste des inscrits dans le contenu sélectionné.
$users = $this->getData(['enrolment', $courseId]);
if (is_array($users)) {
// Tri du tableau par défaut par $userId
ksort($users);
foreach ($users as $userId => $userValue) {
// Compte les rôles
@ -903,6 +908,7 @@ class course extends common
];
}
}
// Ajoute les effectifs aux profils du sélecteur
foreach (self::$courseGroups as $groupId => $groupValue) {
@ -1118,6 +1124,7 @@ class course extends common
// Liste des inscrits dans le contenu sélectionné.
$users = $this->getData(['enrolment', $courseId]);
if (is_array($users)) {
// Tri du tableau par défaut par $userId
ksort($users);
@ -1187,7 +1194,7 @@ class course extends common
]);
}
}
}
public function userHistoryExport()