navigation MDL-21565 Update this xxx is now automatically added to the nav for all modules by default and is renamed to settings as that is what was being used in the tabs system presently anyway.
The following minor changes were also made: * Added roles links to the navigation automatically * Handling of block context for settings navigation * Tidied up init code for settings navigation
This commit is contained in:
+8
-19
@@ -3346,20 +3346,21 @@ function assignment_supports($feature) {
|
||||
}
|
||||
}
|
||||
|
||||
function assignment_extend_settings_navigation($navnode, $module) {
|
||||
/**
|
||||
* Adds module specific settings to the settings block
|
||||
*
|
||||
* @param settings_navigation $settings The settings navigation object
|
||||
* @param navigation_node $assignmentnode The node to add module settings to
|
||||
*/
|
||||
function assignment_extend_settings_navigation(settings_navigation $settings, navigation_node $assignmentnode) {
|
||||
global $PAGE, $DB, $USER, $CFG;
|
||||
|
||||
$allgroups = false;
|
||||
|
||||
$assignmentrow = $DB->get_record("assignment", array("id" => $PAGE->cm->instance));
|
||||
require_once "$CFG->dirroot/mod/assignment/type/$assignmentrow->assignmenttype/assignment.class.php";
|
||||
|
||||
$assignmentclass = 'assignment_'.$assignmentrow->assignmenttype;
|
||||
$assignmentinstance = new $assignmentclass($PAGE->cm->id, $assignmentrow, $PAGE->cm, $PAGE->course);
|
||||
|
||||
$assignmentnodekey = $navnode->add(get_string('assignmentadministration', 'assignment'));
|
||||
$assignmentnode = $navnode->get($assignmentnodekey);
|
||||
$assignmentnode->forceopen = true;
|
||||
|
||||
if (!empty($USER->id) && !has_capability('moodle/legacy:guest', $PAGE->cm->context, NULL, false)) {
|
||||
|
||||
$allgroups = false;
|
||||
@@ -3383,17 +3384,5 @@ function assignment_extend_settings_navigation($navnode, $module) {
|
||||
if (is_object($assignmentinstance) && method_exists($assignmentinstance, 'extend_settings_navigation')) {
|
||||
$assignmentinstance->extend_settings_navigation($assignmentnode);
|
||||
}
|
||||
|
||||
// Add update this activity link
|
||||
if (has_capability('moodle/course:manageactivities', $PAGE->cm->context)) {
|
||||
$modulename = get_string('modulename', 'assignment');
|
||||
$string = get_string('updatethis', '', $modulename);
|
||||
$url = new moodle_url("$CFG->wwwroot/course/mod.php", array('update' => $PAGE->cm->id, 'return' => true, 'sesskey' => sesskey()));
|
||||
$assignmentnode->add($string, $url, navigation_node::TYPE_SETTING);
|
||||
}
|
||||
|
||||
if (count($assignmentnode->children)<1) {
|
||||
$navnode->remove_child($assignmentnodekey);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user