Commit 0e586196 authored by Thomas Fradet's avatar Thomas Fradet

user x cpts right access fix

parent a67873e2
......@@ -105,6 +105,8 @@ Ne pas utiliser de méthodes root, quitte à abandonner des fonctionnalités. Tr
[x] Le champ de recherche pour changer d'utilisateur est intégré à un encart avec le graphique.
[x] L'étudiant ne doit pas pouvoir voir les données d'un autre étudiant (en changeant l'id dans l'url, ni le formulaire pour changer d'étudiant.
[ ] Générer un lien vers la page cpt x users
[ ] Exclure l'enseignant des tableau de bord : ne prendre que les rôles étudiants
......@@ -131,7 +133,7 @@ Ne pas utiliser de méthodes root, quitte à abandonner des fonctionnalités. Tr
[ ] Exclure l'enseignant des tableau de bord : ne prendre que les rôles étudiants
### Page cpt x user
### Page cpt x user x course
[ ] Récupérer toutes les données (ne marchera sûrement pas)
......
......@@ -15,6 +15,16 @@ $course = $DB->get_record('course', array('id' => $courseid), '*', MUST_EXIST);
require_login($course, false, NULL);
$PAGE->set_title(get_string('title_plugin', 'block_competency_iena'));
$is_student = false;
if (!has_capability('moodle/course:update', $context = context_course::instance($course->id), $USER->id)) {
$is_student = true;
if ( $studentid != $USER->id ) {
$link = $CFG->wwwroot . '/blocks/competency_iena/competency_iena_competencies_2.php?courseid=' . $courseid . '&studentid=' . $USER->id;
header("Location: {$link}");
exit;
}
}
$course_cpts = \core_competency\course_competency::list_competencies($COURSE->id);
$count_course_cpts = count($course_cpts);
if ($count_course_cpts === 0) {
......@@ -70,20 +80,22 @@ if ($count_course_cpts === 0) {
echo "<h2 class='h3'>{$student->firstname} {$student->lastname}</h2>";
echo "<form action='{$CFG->wwwroot}/blocks/competency_iena/competency_iena_competencies_2.php' id='change_stud_form' class='form-inline'>";
echo "<input type='text' hidden name='courseid' value='{$courseid}'>";
echo "<span hidden id='studentid'>{$studentid}</span>";
/* https://github.com/mfranzke/datalist-polyfill */
echo "<label class='m-y-1 m-r-1' for='studentid_sel' style='color: black;'>Etudiant</label>";
echo "<input type='text' name='studentid' id='studentid_sel' value='' list='student_list' class='form-control m-r-1'>";
echo "<datalist id='student_list' title='Select student'>";
foreach ($students as $stud) {
echo "<option value='{$stud->firstname} {$stud->lastname} ({$stud->id})' data-value='{$stud->id}'>{$stud->firstname} {$stud->lastname} ({$stud->id})</option>";
if ( !$is_student ) {
echo "<form action='{$CFG->wwwroot}/blocks/competency_iena/competency_iena_competencies_2.php' id='change_stud_form' class='form-inline'>";
echo "<input type='text' hidden name='courseid' value='{$courseid}'>";
echo "<span hidden id='studentid'>{$studentid}</span>";
/* https://github.com/mfranzke/datalist-polyfill */
echo "<label class='m-y-1 m-r-1' for='studentid_sel' style='color: black;'>Etudiant</label>";
echo "<input type='text' name='studentid' id='studentid_sel' value='' list='student_list' class='form-control m-r-1'>";
echo "<datalist id='student_list' title='Select student'>";
foreach ($students as $stud) {
echo "<option value='{$stud->firstname} {$stud->lastname} ({$stud->id})' data-value='{$stud->id}'>{$stud->firstname} {$stud->lastname} ({$stud->id})</option>";
}
echo "</datalist>";
echo "<div><button class='btn btn-secondary' id='prevStud'>Précédent</button>";
echo "<button class='btn btn-secondary m-l-1' id='nextStud'>Suivant</button></div>";
echo "</form>";
}
echo "</datalist>";
echo "<div><button class='btn btn-secondary' id='prevStud'>Précédent</button>";
echo "<button class='btn btn-secondary m-l-1' id='nextStud'>Suivant</button></div>";
echo "</form>";
echo "<h2 class='h4 m-t-2'>Demandes d'évaluations <span class='badge badge-pill badge-primary' style='border-radius: 0.15rem;'>$reviews_count</span></h2>";
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment