diff --git a/CHANGELOG.md b/CHANGELOG.md index aec5f938bdca4308ad166214161a66d080437c6c..8ff5f5e6ae8cf829f6e85c9216ed92bc9a876f6d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -78,7 +78,7 @@ Elles ne s'affichent pas si elles sont vides. #### Parcours inexistant -[ ] Traiter l'erreur en cas de parcours inexistant (liens morts, url bidouillées, etc.). +[x] Traiter l'erreur en cas de parcours inexistant (liens morts, url bidouillées, etc.). Afficher un beau message d'erreur. @@ -116,4 +116,4 @@ Amélioration de l'apparence de la liste dans le bloc et fusion des boutons avec Suppression du titre de section de paramètre inutile dans le fichier `edit_form.php`. - +Réglage du contexte dans la page de vue du bloc. diff --git a/block_career.php b/block_career.php index 1e896652b24ef73d5d24ac6e2f7cf5f6f328ebc5..72a669672ae796795d6cc0acd636f09ab9c24a61 100644 --- a/block_career.php +++ b/block_career.php @@ -85,7 +85,7 @@ class block_career extends block_base $active = ""; } - $this->content->text .= "<a href='" . $CFG->wwwroot . "/blocks/career/career_unit.php?career=" . $value->id . "' class='list-group-item list-group-item-action $active'>$value->name</a>"; + $this->content->text .= "<a href='{$CFG->wwwroot}/blocks/career/career_unit.php?career={$value->id}&courseid={$COURSE->id}' class='list-group-item list-group-item-action {$active}'>{$value->name}</a>"; // $this->content->text .= "<a href='" . $CFG->wwwroot . "/blocks/career/career_unit.php?career=" . $value->id . "' class='full list-group-item list-group-item-action $active'><div class=' left img_center'>$image</div> //    $value->name</a><br>"; } diff --git a/career_unit.php b/career_unit.php index 5d8ebd3769e0ecddc38cc4f53835f47338bae359..4118653bce044272504946acae46c6bdb4f108c8 100644 --- a/career_unit.php +++ b/career_unit.php @@ -1,26 +1,41 @@ <?php - - require_once('../../config.php'); - require_once('entity/block_career_ressource.php'); - require_once('entity/block_career_section.php'); - - global $COURSE, $DB; - - $careerId = required_param('career', PARAM_INT); - $url = new moodle_url('/blocks/career/career_unit.php', array('career' => $careerId)); - $requete = $DB->get_record_sql('SELECT course FROM {block_career} WHERE id = ?', array($careerId)); - - $PAGE->set_pagelayout('course'); - $PAGE->set_url($url); - - $course = $DB->get_record('course', array('id' => $requete->course), '*', MUST_EXIST); - require_login($course, false, NULL); - + +require_once('../../config.php'); +require_once('entity/block_career_ressource.php'); +require_once('entity/block_career_section.php'); + +global $DB; + +$careerId = required_param('career', PARAM_INT); +$courseid = required_param('courseid', PARAM_INT); + +$url = new moodle_url('/blocks/career/career_unit.php', array('career' => $careerId, 'courseid' => $courseid)); + +$course = $DB->get_record('course', array('id' => $courseid), '*', MUST_EXIST); +require_login($course, false, NULL); + +$PAGE->set_context(context_course::instance($courseid)); +$PAGE->set_pagelayout('course'); +$PAGE->set_url($url); + +$requete = $DB->get_record_sql('SELECT * FROM {block_career} WHERE id = ?', array($careerId)); + +if ($requete == false) { + + $PAGE->set_title("Erreur"); + $PAGE->set_heading("Erreur"); + echo $OUTPUT->header(); + echo "<div class='alert alert-danger'>Le parcours demandé n'existe pas ou a été supprimé. </div>"; + echo $OUTPUT->footer(); + +} else { + $PAGE->set_title(get_string('title_plugin', 'block_career')); - $PAGE->set_heading($OUTPUT->heading($COURSE->fullname, 2, 'headingblock header outline')); + + $PAGE->set_heading($course->fullname); echo $OUTPUT->header(); $PAGE->requires->js("/blocks/career/js/sect-descr.js"); - require_once('view/view_career_unit.php'); - echo $OUTPUT->footer(); + +} \ No newline at end of file diff --git a/view/view_career_unit.php b/view/view_career_unit.php index c3d2a9b197075613ee6637bbab0cad9b418994d0..d423f55c52d80c08ffb73bcebf68db16137d9038 100644 --- a/view/view_career_unit.php +++ b/view/view_career_unit.php @@ -1,8 +1,6 @@ <?php -$careerId = required_param("career", PARAM_INT); global $DB, $CFG, $COURSE, $USER; -$requete = $DB->get_record_sql('SELECT * FROM {block_career} WHERE id = ?', array($careerId)); $percent = 70; $nb_pers = 5;