/** * Constructs navigational breadcrumbs */ function get_navigation_default() { global $CFG, $CURMAN; //get the parent courseid if possible $parent = $this->get_cm_id(); $action = $this->optional_param('action', '', PARAM_CLEAN); $cancel = $this->optional_param('cancel', '', PARAM_CLEAN); $navigation = parent::get_navigation_default(); if (empty($parent) || !empty($action) && $action != 'default' && empty($cancel)) { //viewing the class page directly return $navigation; } $coursepage = new coursepage(array('id' => $parent)); $course_navigation = $coursepage->get_navigation_view(); //combine course and class navigation return array_merge($course_navigation, $navigation); }
public function get_navigation_default() { global $CFG, $CURMAN; $parent = $this->optional_param('id', 0, PARAM_INT); $navigation = parent::get_navigation_default(); $level = context_level_base::get_custom_context_level('cluster', 'block_curr_admin'); if ($parent) { $context = get_context_instance($level, $parent); $ancestorids = substr(str_replace('/', ',', $context->path), 1); $sql = "SELECT cluster.*\n FROM {$CFG->prefix}context ctx\n JOIN {$CURMAN->db->prefix_table(CLSTTABLE)} cluster ON ctx.instanceid = cluster.id\n WHERE ctx.id IN ({$ancestorids}) AND ctx.contextlevel={$level}\n ORDER BY ctx.depth"; $ancestors = $CURMAN->db->get_records_sql($sql); $ancestors = $ancestors ? $ancestors : array(); $target = $this->get_new_page(array('action' => 'view')); foreach ($ancestors as $ancestor) { $target->params['id'] = $ancestor->id; $navigation[] = array('name' => htmlspecialchars($ancestor->name), 'link' => $target->get_url()); } } return $navigation; }
/** * Overrides the default navigation to include curriculum breadcrumbs if appropriate */ function get_navigation_default() { global $CFG, $CURMAN; $parent = $this->get_cm_id(); $action = $this->optional_param('action', '', PARAM_CLEAN); $cancel = $this->optional_param('cancel', '', PARAM_CLEAN); $navigation = parent::get_navigation_default(); if (empty($parent) || !empty($action) && empty($cancel)) { //not viewing from within curriculum return $navigation; } $curriculumpage = new curriculumpage(array('id' => $parent)); $curriculum_navigation = $curriculumpage->get_navigation_view(); //merge the curriculum and track breadcrumbs return array_merge($curriculum_navigation, $navigation); }