Commit 16a2a253 authored by Thomas Fradet's avatar Thomas Fradet

work on user x cpts vue and block himself

parent 480cf61d
......@@ -85,15 +85,16 @@ Ne pas utiliser de méthodes root, quitte à abandonner des fonctionnalités. Tr
[x] Lister les compétences de l'utilisateur
[ ] Générer un tableau ou une liste propre
[x] Générer un tableau ou une liste propre
[x] Pouvoir changer d'utilisateur via un champ de recherche dynamique
[x] Pouvoir changer d'utilisateur via des boutons précédent, suivant
[ ] Permettre de filtrer par proficiency et par grade
[0] Permettre de filtrer par proficiency et par grade => pas la peine, c'est lisible et on voir bien avec les couleurs.
[ ] Générer un lien vers la page cpt x user
[ ] Générer un lien vers la page cpt x users
- (quelques éléments dans le lien)
### Page statut des utilisateurs pour une compétence
......@@ -111,6 +112,10 @@ Ne pas utiliser de méthodes root, quitte à abandonner des fonctionnalités. Tr
### Page cpt x user
[ ] Récupérer toutes les données (ne marchera sûrement )
[ ] Récupérer toutes les données (ne marchera sûrement pas)
### Block en lui-même
Changement de l'ordre et de l'apparence des boutons.
Ajout d'un bouton pour aller à la vue cpt x users en plus de celui pour aller vers la vue user x cpts. Nommage : "tableaux de bord" => "par étudiant" (user x cpts) et "par compétence" (cpt x users). Ces deux listes mèneront vers le cpt x user.
......@@ -53,12 +53,16 @@ class block_competency_iena extends block_base
$this->content = new stdClass;
$this->content->text = "";
if (has_capability('moodle/course:update', $context = context_course::instance($COURSE->id), $USER->id)) {
$this->content->text .= '<a href="' . $CFG->wwwroot . '/blocks/competency_iena/competency_iena_competencies.php?courseid=' . $COURSE->id . '" class="btn btn-primary w-100 mb-3" style="white-space: normal;">Acquisition des compétences</a>';
$this->content->text .= '<a href="' . $CFG->wwwroot . '/blocks/competency_iena/competency_iena_competencies_2.php?courseid=' . $COURSE->id . '" class="btn btn-warning w-100 mb-3" style="white-space: normal;">Acquisition des compétences 2</a>';
$this->content->text .= '<a href="' . $CFG->wwwroot . '/blocks/competency_iena/competency_iena_competencies_mgmt.php?courseid=' . $COURSE->id . '" type="button " class="btn btn-success w-100 mb-3" style="white-space: normal;">Gérer les compétences</a>';
$this->content->text .= '<h4>Tableaux de bord</h4>';
$this->content->text .= '<a href="' . $CFG->wwwroot . '/blocks/competency_iena/competency_iena_competencies_2.php?courseid=' . $COURSE->id . '" class="btn btn-primary w-100 mb-3" style="white-space: normal;">Par étudiant</a>';
$this->content->text .= '<a href="' . $CFG->wwwroot . '/blocks/competency_iena/competency_iena_competency_students_2.php?courseid=' . $COURSE->id . '" class="btn btn-primary w-100" style="white-space: normal;">Par compétence</a>';
// marche plus
// $this->content->text .= '<a href="' . $CFG->wwwroot . '/blocks/competency_iena/competency_iena_competencies.php?courseid=' . $COURSE->id . '" class="btn btn-primary w-100 mb-3" style="white-space: normal;">Acquisition des compétences</a>';
$this->content->text .= '<hr>';
$this->content->text .= '<a href="' . $CFG->wwwroot . '/blocks/competency_iena/competency_iena_competencies_mgmt.php?courseid=' . $COURSE->id . '" type="button " class="btn btn-secondary w-100 mb-3" style="white-space: normal;">Gérer les compétences</a>';
$this->content->text .= '<a href="' . $CFG->wwwroot . '/blocks/competency_iena/competency_iena_competency_mgmt.php?courseid=' . $COURSE->id . '" type="button " class="btn btn-secondary w-100 mb-3" style="white-space: normal;">Informations sur l\'APC</a>';
} else {
$this->content->text .= '<a href="' . $CFG->wwwroot . '/blocks/competency_iena/competency_iena_competencies.php?courseid=' . $COURSE->id . '" class="btn btn-primary w-100 mb-3">Mes Compétences</a>';
$this->content->text .= '<a href="' . $CFG->wwwroot . '/blocks/competency_iena/competency_iena_competencies_2.php?courseid=' . $COURSE->id . '" class="btn btn-primary w-100 mb-3" style="white-space: normal;">Mes compétences</a>';
}
// $competenceI = new block_competency_iena_competency();
......
......@@ -33,33 +33,16 @@ echo $OUTPUT->header();
// Les étudiants.
$student = new block_competency_iena_student();
$students = $student->get_all_students_by_course($COURSE->id);
// var_dump($students);
// L'étudiant
$student->get_student_by_id($studentid);
// Les compétences du cours.
// Utiliser ça au cas où en appliquant un sort sur 'sortorder' dans la DB (voir params méthode) pour s'en servir pour trier les cpt dans l'ordre. Apparemment, ça trie dans l'ordre de base. Pour changer l'ordre : réordonner dans la page CPT native de moodle.
// $course_cpts = \core_competency\course_competency::list_competencies($COURSE->id);
$course_cpts = \core_competency\course_competency::list_competencies($COURSE->id);
// echo "<pre>";
// foreach ($course_cpts as $course_cpt) {
// var_dump($course_cpt);
// echo "<hr>";
// }
// echo "</pre>";
// L'état des compétences du cours pour un utilisateur
$user_course_competencies = \core_competency\api::list_user_competencies_in_course($COURSE->id, $studentid);
// echo "<pre>";
// foreach ($user_course_competencies as $user_course_competency) {
// var_dump($user_course_competency);
// echo "<hr>";
// $cpt = new \core_competency\competency($user_course_competency->get('id'));
// var_dump($cpt->get_scale());
// echo "<hr>";
// echo "<hr>";
// }
// echo "</pre>";
echo "<form action='{$CFG->wwwroot}/blocks/competency_iena/competency_iena_competencies_2.php' id='change_stud_form' class='form-inline m-b-1 alert alert-secondary'>";
echo "<input type='text' hidden name='courseid' value='{$courseid}'>";
......@@ -78,34 +61,37 @@ echo "</datalist>";
$change_stud_url = $CFG->wwwroot."/blocks/competency_iena/competency_iena_competencies_2.php?courseid=".$courseid."&studentid=";
// echo "<a href='{$change_stud_url}' class='btn btn-secondary m-l-1' id='prevStud'>Précédent</a>";
// echo "<a href='{$change_stud_url}' class='btn btn-secondary m-l-1' id='nextStud'>Suivant</a>";
echo "<button class='btn btn-secondary m-l-1' id='prevStud'>Précédent</button>";
echo "<button class='btn btn-secondary m-l-1' id='nextStud'>Suivant</button>";
echo "</form>";
echo "<h2>{$student->firstname} {$student->lastname}</h2>";
echo "<div class='list-group'>";
foreach ($user_course_competencies as $user_course_competency) {
echo "<div class='alert alert-secondary'>";
// Crée un obj cpt à partir de l'ID. Attention, id de compétence et course_competency sont différents.
$cpt = new \core_competency\competency($user_course_competency->get('competencyid'));
echo "<h3 id='{$cpt->get('id')}'>{$cpt->get('shortname')}</h3>";
// Récupère les chaines de caractère de l'échelle d'évaluation
$cpt_scale = $cpt->get_scale()->scale_items;
if ( $user_course_competency->get('grade') == null ) {
$eval = "-";
} else {
$eval = "-";
if ( $user_course_competency->get('grade') != null ) {
$eval = $cpt_scale[$user_course_competency->get('grade') - 1];
}
echo "<p>Evaluation : {$eval}</p>";
$proficient = $user_course_competency->get('proficiency') == 1 ? "Oui" : "Non";
echo "<p>Validé : {$proficient}</p>";
echo "</div>";
$proficient_class = $user_course_competency->get('proficiency') == 1 ? " list-group-item-success" : "";
$proficient_str = $user_course_competency->get('proficiency') == 1 ? "Oui" : "Non";
echo "
<a href='#?courseid={$courseid}&studentid={$studentid}&competencyid={$cpt->get('id')}' class='list-group-item list-group-item-action{$proficient_class}'>
<div class='d-flex w-100 justify-content-between'>
<h3 class='mb-1 iena-cpt-action-title'>{$cpt->get('shortname')}</h3>
<!--<small class='text-muted'>3 days ago</small>-->
<!--<span class='badge badge-primary badge-pill'>3 days ago</span>-->
</div>
<p class='' style='margin-bottom: 0;'>Évaluation : <em>{$eval}</em></p>
<small class=''>Acquis : {$proficient_str}</small>
</a>";
}
echo "</div>";
echo $OUTPUT->footer();
<?php
require_once('../../config.php');
// ENLEVER SI NON NECESSAIRE :
require_once('entity/block_competency_iena_competency.php');
require_once('entity/block_competency_iena_module.php');
require_once('entity/block_competency_iena_ressource.php');
require_once('entity/block_competency_iena_section.php');
require_once('entity/block_competency_iena_student.php');
global $COURSE, $DB;
$courseid = required_param('courseid', PARAM_INT);
$competencyid = optional_param('competencyid', 0, PARAM_INT);
$url = new moodle_url('/blocks/competency_iena/competency_iena_competency_students.php', array('courseid' => $courseid, 'competencyid' => $competencyid));
//$requete = $DB->get_record_sql('SELECT course FROM {block_competency_iena} WHERE id = ?', array($courseid));
$PAGE->set_pagelayout('course');
$PAGE->set_url($url);
if (!has_capability('moodle/course:update', $context = context_course::instance($courseid), $USER->id)) {
$link = $CFG->wwwroot . '/course/view.php?id=' . $courseid;
header("Location: {$link}");
exit;
}
$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'));
$PAGE->set_heading($OUTPUT->heading($COURSE->fullname, 2, 'headingblock header outline'));
echo $OUTPUT->header();
// require_once('view/view_competency_iena_competency_students.php');
// $view = new view_competency_iena_competency_students();
// echo $view->get_content($competencyid);
echo "OYé";
echo $OUTPUT->footer();
......@@ -66,3 +66,8 @@
bottom: 0
}
/* Page compétences d'un utilisateurs */
.list-group-item-action:hover .iena-cpt-action-title {
text-decoration: underline;
}
\ No newline at end of file
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