function local_gas_extends_navigation(global_navigation $navigation) { global $DB, $USER, $COURSE, $SESSION; $prconfig = $DB->count_records('config_plugins', array('plugin' => 'local_gas')); if ($prconfig > 0 && G\isuservalid($USER->id)) { $node = $navigation->find('local_gas', navigation_node::TYPE_CONTAINER); if (!$node) { $node = $navigation->add(get_string('pluginname', 'local_gas'), null, navigation_node::TYPE_CONTAINER, get_string('pluginname', 'local_gas'), 'local_gas'); } $node->add(get_string('generalInfo', 'local_gas'), new moodle_url('/local/gas/index.php'), null, null, "generalInfo"); if (G\isstudent($USER->id)) { $node->add(get_string('assessment', 'local_gas'), new moodle_url('/local/gas/student.php'), null, null, "assessment"); } if (G\isteacher($USER->id)) { $node->add(get_string('courseAssessment', 'local_gas'), new moodle_url('/local/gas/teacherassessment.php'), null, null, "courseAssessment"); $node->add(get_string('courseAssessmentReport', 'local_gas'), new moodle_url('/local/gas/coursereport.php'), null, null, "courseAssessmentReport"); } if (has_capability('local/gas:administrator', context_course::instance($COURSE->id))) { $node->add(get_string('attributeManagement', 'local_gas'), new moodle_url('/local/gas/attributemanagement.php'), null, null, "attributeManagement"); } } }
public function test_load_generic_course_sections() { $coursenode = $this->node->find('5', navigation_node::TYPE_COURSE); $course = new stdClass; $course->id = '5'; $course->numsections = 10; $course->modinfo = $this->modinfo5; $this->node->load_generic_course_sections($course, $coursenode, 'topic', 'topic'); $this->assertEqual($coursenode->children->count(),1); }
public function test_load_section_activities() { $node = $this->node->find('5', navigation_node::TYPE_COURSE); $course = new stdClass(); $course->id = '5'; $course->numsections = 10; $section = $node->add('Test Section 1', null, navigation_node::TYPE_SECTION, null, $this->cache->coursesections5[1]->id); $modinfo = $this->cache->modinfo5; $modinfo->sections[1] = array(289, 290); $modinfo->cms[289] = clone $modinfo->cms[288]; $modinfo->cms[289]->id = 289; $modinfo->cms[289]->sectionnum = 1; $modinfo->cms[290]->modname = 'forum'; $modinfo->cms[289]->instance = 20; $modinfo->cms[290] = clone $modinfo->cms[288]; $modinfo->cms[290]->id = 290; $modinfo->cms[290]->modname = 'resource'; $modinfo->cms[290]->sectionnum = 1; $modinfo->cms[290]->instance = 21; $modinfo->instances['forum'][20] = clone $modinfo->instances['forum'][19]; $modinfo->instances['forum'][20]->id = 20; $modinfo->instances['resource'] = array(); $modinfo->instances['resource'][21] = clone $modinfo->instances['forum'][19]; $modinfo->instances['resource'][21]->id = 21; $this->cache->modinfo5 = $modinfo; $course->modinfo = serialize($modinfo); $activities = $this->node->exposed_load_section_activities($section, 1, $modinfo); foreach ($activities as $activity) { if ($this->assertIsA($activity, 'navigation_node')) { $this->assertEqual($activity->type, navigation_node::TYPE_ACTIVITY); $this->assertReference($activity, $section->get($activity->key)); } } }
public function navigation_tree(global_navigation $navigation, $expansionlimit, array $options = array()) { $homenode = $navigation->find('home', navigation_node::TYPE_SETTING); //$myhomenode=$navigation->find('myhome', navigation_node::TYPE_SETTING); if ($homenode) { $homenode->remove(); $navigation = $homenode->parent; } //if($myhomenode){ // $myhomenode->remove(); // $navigation=$myhomenode->parent; // } return parent::navigation_tree($navigation, $expansionlimit, $options); }