mirror of
https://github.com/moodle/moodle.git
synced 2025-08-04 08:26:37 +02:00
categories MDL-24936 Added turn editing on/off links to the category settings in the settings block
This commit is contained in:
parent
79b067e911
commit
1b32bc234a
2 changed files with 22 additions and 13 deletions
|
@ -3505,37 +3505,52 @@ class settings_navigation extends navigation_node {
|
|||
$categorynode = $this->add(print_context_name($this->context));
|
||||
$categorynode->force_open();
|
||||
|
||||
if (can_edit_in_category()) {
|
||||
$url = new moodle_url('/course/category.php', array('id'=>$this->context->instanceid, 'sesskey'=>sesskey()));
|
||||
if ($this->page->user_is_editing()) {
|
||||
$url->param('categoryedit', '0');
|
||||
$editstring = get_string('turneditingoff');
|
||||
} else {
|
||||
$url->param('categoryedit', '1');
|
||||
$editstring = get_string('turneditingon');
|
||||
}
|
||||
$categorynode->add($editstring, $url, self::TYPE_SETTING, null, null, new pix_icon('i/edit', ''));
|
||||
}
|
||||
|
||||
if ($this->page->user_is_editing() && has_capability('moodle/category:manage', $this->context)) {
|
||||
$categorynode->add(get_string('editcategorythis'), new moodle_url('/course/editcategory.php', array('id' => $this->context->instanceid)));
|
||||
$categorynode->add(get_string('addsubcategory'), new moodle_url('/course/editcategory.php', array('parent' => $this->context->instanceid)));
|
||||
$editurl = new moodle_url('/course/editcategory.php', array('id' => $this->context->instanceid));
|
||||
$categorynode->add(get_string('editcategorythis'), $editurl, self::TYPE_SETTING, null, 'edit', new pix_icon('i/edit', ''));
|
||||
|
||||
$addsubcaturl = new moodle_url('/course/editcategory.php', array('parent' => $this->context->instanceid));
|
||||
$categorynode->add(get_string('addsubcategory'), $addsubcaturl, self::TYPE_SETTING, null, 'addsubcat', new pix_icon('i/withsubcat', ''));
|
||||
}
|
||||
|
||||
// Assign local roles
|
||||
if (has_capability('moodle/role:assign', $this->context)) {
|
||||
$assignurl = new moodle_url('/'.$CFG->admin.'/roles/assign.php', array('contextid'=>$this->context->id));
|
||||
$categorynode->add(get_string('assignroles', 'role'), $assignurl, self::TYPE_SETTING);
|
||||
$categorynode->add(get_string('assignroles', 'role'), $assignurl, self::TYPE_SETTING, null, 'roles', new pix_icon('i/roles', ''));
|
||||
}
|
||||
|
||||
// Override roles
|
||||
if (has_capability('moodle/role:review', $this->context) or count(get_overridable_roles($this->context))>0) {
|
||||
$url = new moodle_url('/'.$CFG->admin.'/roles/permissions.php', array('contextid'=>$this->context->id));
|
||||
$categorynode->add(get_string('permissions', 'role'), $url, self::TYPE_SETTING);
|
||||
$categorynode->add(get_string('permissions', 'role'), $url, self::TYPE_SETTING, null, 'permissions', new pix_icon('i/permissions', ''));
|
||||
}
|
||||
// Check role permissions
|
||||
if (has_any_capability(array('moodle/role:assign', 'moodle/role:safeoverride','moodle/role:override', 'moodle/role:assign'), $this->context)) {
|
||||
$url = new moodle_url('/'.$CFG->admin.'/roles/check.php', array('contextid'=>$this->context->id));
|
||||
$categorynode->add(get_string('checkpermissions', 'role'), $url, self::TYPE_SETTING);
|
||||
$categorynode->add(get_string('checkpermissions', 'role'), $url, self::TYPE_SETTING, null, 'checkpermissions', new pix_icon('i/checkpermissions', ''));
|
||||
}
|
||||
|
||||
// Cohorts
|
||||
if (has_capability('moodle/cohort:manage', $this->context) or has_capability('moodle/cohort:view', $this->context)) {
|
||||
$categorynode->add(get_string('cohorts', 'cohort'), new moodle_url('/cohort/index.php', array('contextid' => $this->context->id)));
|
||||
$categorynode->add(get_string('cohorts', 'cohort'), new moodle_url('/cohort/index.php', array('contextid' => $this->context->id)), self::TYPE_SETTING, null, 'cohort', new pix_icon('i/cohort', ''));
|
||||
}
|
||||
|
||||
// Manage filters
|
||||
if (has_capability('moodle/filter:manage', $this->context) && count(filter_get_available_in_context($this->context))>0) {
|
||||
$url = new moodle_url('/filter/manage.php', array('contextid'=>$this->context->id));
|
||||
$categorynode->add(get_string('filters', 'admin'), $url, self::TYPE_SETTING);
|
||||
$categorynode->add(get_string('filters', 'admin'), $url, self::TYPE_SETTING, null, 'filters', new pix_icon('i/filter', ''));
|
||||
}
|
||||
|
||||
return $categorynode;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue