From 9376f5a66a15a1a59fabfab6274f2aaf1690973a Mon Sep 17 00:00:00 2001 From: skodak Date: Wed, 3 Oct 2007 20:24:59 +0000 Subject: [PATCH] MDL-11583 fixed use of capability moodle/grade:manageletters - now works in plugin selector --- grade/edit/letter/index.php | 5 ++++- grade/lib.php | 3 ++- lang/en_utf8/role.php | 1 + 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/grade/edit/letter/index.php b/grade/edit/letter/index.php index f5de74e991..6aceee9c31 100644 --- a/grade/edit/letter/index.php +++ b/grade/edit/letter/index.php @@ -12,7 +12,10 @@ if (!$course = get_record('course', 'id', $courseid)) { } require_login($course); $context = get_context_instance(CONTEXT_COURSE, $course->id); -require_capability('moodle/grade:manage', $context); + +if (!has_capability('moodle/grade:manage', $context) and !has_capability('moodle/grade:manageletters', $context)) { + error('Missing permission to view letter grades'); +} $gpr = new grade_plugin_return(array('type'=>'edit', 'plugin'=>'letter', 'courseid'=>$courseid)); diff --git a/grade/lib.php b/grade/lib.php index 786d1381df..79e8b5e5c4 100644 --- a/grade/lib.php +++ b/grade/lib.php @@ -284,6 +284,7 @@ function print_grade_plugin_selector($courseid, $active_type, $active_plugin, $r /// editing scripts - not real plugins if (has_capability('moodle/grade:manage', $context) + or has_capability('moodle/grade:manageletters', $context) or has_capability('moodle/course:managescales', $context) or has_capability('moodle/course:update', $context)) { $menu['edit']='--'.get_string('edit'); @@ -317,7 +318,7 @@ function print_grade_plugin_selector($courseid, $active_type, $active_plugin, $r $menu[$url] = get_string('outcomes', 'grades'); } - if (has_capability('moodle/course:manage', $context)) { + if (has_capability('moodle/grade:manage', $context) or has_capability('moodle/grade:manageletters', $context)) { $url = 'edit/letter/index.php?id='.$courseid; if ($active_type == 'edit' and $active_plugin == 'letter' ) { $active = $url; diff --git a/lang/en_utf8/role.php b/lang/en_utf8/role.php index 7f6e73cac9..e04da18805 100644 --- a/lang/en_utf8/role.php +++ b/lang/en_utf8/role.php @@ -50,6 +50,7 @@ $string['grade:hide'] = 'Hide/unhide grades or items'; $string['grade:import'] = 'Import grades'; $string['grade:lock'] = 'Lock grades or items'; $string['grade:manage'] = 'Manage grade items'; +$string['grade:manageletters'] = 'Manage letter grades'; $string['grade:manageoutcomes'] = 'Manage grade outcomes'; $string['grade:override'] = 'Override grades'; $string['grade:unlock'] = 'Unlock grades or items'; -- 2.39.5