From e77bcaa30df368e6a3522deb83b0b9001311c421 Mon Sep 17 00:00:00 2001 From: skodak <skodak> Date: Tue, 24 Jul 2007 09:30:46 +0000 Subject: [PATCH] MDL-10579 capabilities for grade import plugins --- grade/import/csv/db/access.php | 15 +++++++++++++++ grade/import/csv/index.php | 23 +++++++++++++---------- grade/import/csv/version.php | 6 ++++++ grade/import/xml/db/access.php | 17 +++++++++++++++++ grade/import/xml/index.php | 23 ++++++++++++++--------- grade/import/xml/version.php | 6 ++++++ 6 files changed, 71 insertions(+), 19 deletions(-) create mode 100644 grade/import/csv/version.php create mode 100644 grade/import/xml/db/access.php create mode 100644 grade/import/xml/version.php diff --git a/grade/import/csv/db/access.php b/grade/import/csv/db/access.php index 139597f9cb..63ab19a368 100644 --- a/grade/import/csv/db/access.php +++ b/grade/import/csv/db/access.php @@ -1,2 +1,17 @@ +<?php // $Id$ + +$gradeimport_csv_capabilities = array( + + 'gradeimport/csv:view' => array( + 'captype' => 'write', + 'contextlevel' => CONTEXT_COURSE, + 'legacy' => array( + 'editingteacher' => CAP_ALLOW, + 'admin' => CAP_ALLOW + ) + ) +); + +?> diff --git a/grade/import/csv/index.php b/grade/import/csv/index.php index 1bbaa02061..21b15c3897 100755 --- a/grade/import/csv/index.php +++ b/grade/import/csv/index.php @@ -1,17 +1,20 @@ -<?php -require_once('../../../config.php'); -include_once($CFG->libdir.'/gradelib.php'); +<?php //$Id$ +require_once '../../../config.php'; +require_once $CFG->dirroot.'/grade/lib.php'; +require_once '../grade_import_form.php'; +require_once '../lib.php'; $id = required_param('id', PARAM_INT); // course id -$course = get_record('course', 'id', $id); // actual course -// capability check -require_login($id); -require_capability('moodle/grade:import', get_context_instance(CONTEXT_COURSE, $course->id)); +if (!$course = get_record('course', 'id', $id)) { + print_error('nocourseid'); +} + +require_login($course); +$context = get_context_instance(CONTEXT_COURSE, $id); +require_capability('moodle/grade:import', $context); +require_capability('gradeimport/csv:view', $context); -require_once('../grade_import_form.php'); -require_once($CFG->dirroot.'/grade/lib.php'); -require_once('../lib.php'); // sort out delimiter $csv_encode = '/\&\#44/'; diff --git a/grade/import/csv/version.php b/grade/import/csv/version.php new file mode 100644 index 0000000000..fda21d0e8f --- /dev/null +++ b/grade/import/csv/version.php @@ -0,0 +1,6 @@ +<?PHP // $Id$ + +$plugin->version = 2007072401; +$plugin->requires = 2007072402; + +?> diff --git a/grade/import/xml/db/access.php b/grade/import/xml/db/access.php new file mode 100644 index 0000000000..c221c46452 --- /dev/null +++ b/grade/import/xml/db/access.php @@ -0,0 +1,17 @@ +<?php // $Id$ + +$gradeimport_xml_capabilities = array( + + 'gradeimport/xml:view' => array( + 'captype' => 'write', + 'contextlevel' => CONTEXT_COURSE, + 'legacy' => array( + 'editingteacher' => CAP_ALLOW, + 'admin' => CAP_ALLOW + ) + ) +); + +?> + + diff --git a/grade/import/xml/index.php b/grade/import/xml/index.php index e03b383df9..b859173896 100755 --- a/grade/import/xml/index.php +++ b/grade/import/xml/index.php @@ -1,21 +1,26 @@ -<?php +<?php //$Id$ /** * code in development * does xml plugin need some flexibility/mapping of columns? */ -require_once('../../../config.php'); + +require_once '../../../config.php'; +require_once $CFG->dirroot.'/grade/lib.php'; +require_once '../grade_import_form.php'; +require_once '../lib.php'; $id = required_param('id', PARAM_INT); // course id -$course = get_record('course', 'id', $id); // actual course -// capability check -require_login($id); -require_capability('moodle/grade:import', get_context_instance(CONTEXT_COURSE, $course->id)); +if (!$course = get_record('course', 'id', $id)) { + print_error('nocourseid'); +} + +require_login($course); +$context = get_context_instance(CONTEXT_COURSE, $id); +require_capability('moodle/grade:import', $context); +require_capability('gradeimport/xml:view', $context); -require_once('../lib.php'); -require_once('../grade_import_form.php'); -require_once($CFG->dirroot.'/grade/lib.php'); // print header $strgrades = get_string('grades', 'grades'); diff --git a/grade/import/xml/version.php b/grade/import/xml/version.php new file mode 100644 index 0000000000..fda21d0e8f --- /dev/null +++ b/grade/import/xml/version.php @@ -0,0 +1,6 @@ +<?PHP // $Id$ + +$plugin->version = 2007072401; +$plugin->requires = 2007072402; + +?> -- 2.39.5