Bug avec la bdd group qui n'existe pas
This commit is contained in:
parent
73689fc880
commit
997408cf0f
@ -474,6 +474,7 @@ class core extends common
|
||||
in_array($this->getUrl(0), array_keys($this->getData(['page'])))
|
||||
) {
|
||||
$this->setData(['enrolment', self::$siteContent, $this->getUser('id'), 'lastPageId', $this->getUrl(0)]);
|
||||
$this->setData(['enrolment', self::$siteContent, $this->getUser('id'), 'lastDateVisited', time()]);
|
||||
}
|
||||
|
||||
// Journalisation
|
||||
|
@ -50,7 +50,7 @@ class common
|
||||
const ACCESS_TIMER = 1800;
|
||||
|
||||
// Numéro de version
|
||||
const ZWII_VERSION = '1.0.06';
|
||||
const ZWII_VERSION = '1.0.07';
|
||||
|
||||
// URL autoupdate
|
||||
const ZWII_UPDATE_URL = 'https://forge.chapril.org/ZwiiCMS-Team/update/raw/branch/master/lms/';
|
||||
@ -447,6 +447,7 @@ class common
|
||||
|
||||
// Mise à jour des données core
|
||||
include('core/include/update.inc.php');
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@ -306,31 +306,35 @@ class course extends common
|
||||
public function swap()
|
||||
{
|
||||
$courseId = $this->getUrl(2);
|
||||
$userId = $this->getuser('id');
|
||||
$userId = $this->getUser('id');
|
||||
$message = '';
|
||||
$redirect = helper::baseUrl();
|
||||
$state = true;
|
||||
|
||||
if (
|
||||
// Sortir du cours et afficher l'accueil
|
||||
$courseId === 'home'
|
||||
$courseId === 'home' ||
|
||||
// Un admin ou l'auteur du cours demande l'accès
|
||||
( $userId &&
|
||||
$this->getUser('group') === self::GROUP_ADMIN || $this->getUser('id') === $this->getData(['user', $courseId, 'author']))
|
||||
) {
|
||||
$_SESSION['ZWII_SITE_CONTENT'] = $courseId;
|
||||
}
|
||||
// l'étudiant est inscrit dans le cours ET le cours est ouvert
|
||||
// ou un admin est connecté ou le prof du cours
|
||||
elseif (
|
||||
$this->courseIsUserEnroled($courseId)
|
||||
$userId
|
||||
&& $this->courseIsUserEnroled($courseId)
|
||||
&& $this->courseIsAvailable($courseId)
|
||||
) {
|
||||
$_SESSION['ZWII_SITE_CONTENT'] = $courseId;
|
||||
$message = sprintf(helper::translate('Bienvenue dans le cours %s'), $this->getData(['course', $courseId, 'shortTitle']));
|
||||
// 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']);
|
||||
} else {
|
||||
if (empty($this->getData(['enrolment', $courseId, $userId, 'lastPageId']))) {
|
||||
// Sinon la page d'accueil par défaut du module
|
||||
$redirect .= $this->getData(['course', $courseId, 'homePageId']);
|
||||
$redirect = $redirect . $this->getData(['course', $courseId, 'homePageId']);
|
||||
} else {
|
||||
$redirect = $redirect . $this->getData(['enrolment', $courseId, $userId, 'lastPageId']);
|
||||
}
|
||||
}
|
||||
// Le cours est fermé
|
||||
@ -360,7 +364,7 @@ class course extends common
|
||||
case self::COURSE_ENROLMENT_SELF_KEY:
|
||||
//L'étudiant dispsoe d'un compte
|
||||
if ($this->getUser('id')) {
|
||||
$redirect .= 'course/enrol/' . $courseId;
|
||||
$redirect = $redirect . 'course/enrol/' . $courseId;
|
||||
$message = helper::translate('Veuillez vous inscrire');
|
||||
$state = true;
|
||||
} else {
|
||||
@ -510,13 +514,6 @@ class course extends common
|
||||
if ($courseId === 'home') {
|
||||
return true;
|
||||
}
|
||||
// Si un utilisateur connecté est admin aou auteur, c'est autorisé
|
||||
if (
|
||||
$this->getUser('password') === $this->getInput('ZWII_USER_PASSWORD') &&
|
||||
$this->getUser('group') === self::GROUP_ADMIN || $this->getUser('id') === $this->getData(['group', $courseId, 'author'])
|
||||
) {
|
||||
return true;
|
||||
}
|
||||
// Retourne le statut du cours dans les autres cas
|
||||
$access = $this->getData(['course', $courseId, 'access']);
|
||||
switch ($access) {
|
||||
|
Loading…
Reference in New Issue
Block a user