MDL-58947 Search: Label URLs not correctly calculated
authorsam marshall <s.marshall@open.ac.uk>
Mon, 15 May 2017 16:45:45 +0000 (17:45 +0100)
committersam marshall <s.marshall@open.ac.uk>
Mon, 15 May 2017 16:45:45 +0000 (17:45 +0100)
mod/label/classes/search/activity.php

index 95821b5..2ddd706 100644 (file)
@@ -45,9 +45,14 @@ class activity extends \core_search\base_activity {
      * @return \moodle_url
      */
     public function get_doc_url(\core_search\document $doc) {
+        // Get correct URL to section that contains label, from course format.
         $cminfo = $this->get_cm($this->get_module_name(), strval($doc->get('itemid')), $doc->get('courseid'));
-        return new \moodle_url('/course/view.php', array('id' => $doc->get('courseid')), 'module-' . $cminfo->id);
+        $format = course_get_format($cminfo->get_course());
+        $url = $format->get_view_url($cminfo->sectionnum);
 
+        // Add the ID of the label to the section URL.
+        $url->set_anchor('module-' . $cminfo->id);
+        return $url;
     }
 
     /**