From 157aa3a22d6a8ce7d98977e2d4ce3cfcbcbd92ce Mon Sep 17 00:00:00 2001 From: Eloy Lafuente Date: Fri, 19 Feb 2010 19:11:06 +0000 Subject: [PATCH] MDL-21666 backup & restore caps - renaming the import one --- backup/restore.php | 2 +- backup/restore_execute.html | 2 +- backup/restore_precheck.html | 2 +- blocks/admin/block_admin.php | 2 +- course/import.php | 2 +- lib/db/access.php | 48 +++++++++++++++++++----------------- lib/navigationlib.php | 2 +- 7 files changed, 31 insertions(+), 29 deletions(-) diff --git a/backup/restore.php b/backup/restore.php index dd24b89b722..9bbe150a127 100644 --- a/backup/restore.php +++ b/backup/restore.php @@ -80,7 +80,7 @@ print_error("cannotuseadminadminorteacher", '', $loginurl); } else { if (!has_capability('moodle/restore:restorecourse', get_context_instance(CONTEXT_COURSE, $to)) - && !has_capability('moodle/site:import', get_context_instance(CONTEXT_COURSE, $to))) { + && !has_capability('moodle/restore:restoretargetimport', get_context_instance(CONTEXT_COURSE, $to))) { print_error("cannotuseadminadminorteacher", '', $loginurl); } } diff --git a/backup/restore_execute.html b/backup/restore_execute.html index 939972ea083..4f051c141f7 100644 --- a/backup/restore_execute.html +++ b/backup/restore_execute.html @@ -48,7 +48,7 @@ print_error("cannotuseadminadminorteacher", '', $loginurl); } else { if (!has_capability('moodle/restore:restorecourse', get_context_instance(CONTEXT_COURSE, $to)) - && !has_capability('moodle/site:import', get_context_instance(CONTEXT_COURSE, $to))) { + && !has_capability('moodle/restore:restoretargetimport', get_context_instance(CONTEXT_COURSE, $to))) { print_error("cannotuseadminadminorteacher", '', $loginurl); } } diff --git a/backup/restore_precheck.html b/backup/restore_precheck.html index e9dd9635c1b..3a9252110a9 100644 --- a/backup/restore_precheck.html +++ b/backup/restore_precheck.html @@ -21,7 +21,7 @@ print_error("cannotuseadminadminorteacher", '', $loginurl); } else { if (!has_capability('moodle/restore:restorecourse', get_context_instance(CONTEXT_COURSE, $to)) - && !has_capability('moodle/site:import', get_context_instance(CONTEXT_COURSE, $to))) { + && !has_capability('moodle/restore:restoretargetimport', get_context_instance(CONTEXT_COURSE, $to))) { print_error("cannotuseadminadminorteacher", '', $loginurl); } } diff --git a/blocks/admin/block_admin.php b/blocks/admin/block_admin.php index 6a97860808c..b09bfabea28 100644 --- a/blocks/admin/block_admin.php +++ b/blocks/admin/block_admin.php @@ -121,7 +121,7 @@ class block_admin extends block_list { } /// Import data from other courses - if ($course->id !== SITEID and has_capability('moodle/site:import', $this->page->context)) { + if ($course->id !== SITEID and has_capability('moodle/restore:restoretargetimport', $this->page->context)) { $this->content->items[]=''.get_string('import').''; $this->content->icons[]=''; } diff --git a/course/import.php b/course/import.php index 4c8b754a66a..3af9e796c61 100644 --- a/course/import.php +++ b/course/import.php @@ -35,7 +35,7 @@ if (!$course = $DB->get_record('course', array('id'=>$id))) { require_login($course->id); -require_capability('moodle/site:import', get_context_instance(CONTEXT_COURSE, $id)); +require_capability('moodle/restore:restoretargetimport', get_context_instance(CONTEXT_COURSE, $id)); /// Always we begin an import, we delete all backup/restore/import session structures if (isset($SESSION->course_header)) { diff --git a/lib/db/access.php b/lib/db/access.php index 1ae53d581a9..88b05137a5f 100644 --- a/lib/db/access.php +++ b/lib/db/access.php @@ -141,18 +141,6 @@ $capabilities = array( ) ), - 'moodle/site:import' => array( - - 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS, - - 'captype' => 'write', - 'contextlevel' => CONTEXT_COURSE, - 'legacy' => array( - 'editingteacher' => CAP_ALLOW, - 'admin' => CAP_ALLOW - ) - ), - 'moodle/backup:backupcourse' => array( 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS, @@ -206,6 +194,20 @@ $capabilities = array( 'clonepermissionsfrom' => 'moodle/site:restore' ), + 'moodle/restore:restoretargetimport' => array( + + 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS, + + 'captype' => 'write', + 'contextlevel' => CONTEXT_COURSE, + 'legacy' => array( + 'editingteacher' => CAP_ALLOW, + 'admin' => CAP_ALLOW + ), + + 'clonepermissionsfrom' => 'moodle/site:import' + ), + 'moodle/restore:uploadfile' => array( 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS, @@ -220,17 +222,6 @@ $capabilities = array( 'clonepermissionsfrom' => 'moodle/site:backupupload' ), - 'moodle/restore:createuser' => array( - - 'riskbitmask' => RISK_SPAM | RISK_PERSONAL, - - 'captype' => 'write', - 'contextlevel' => CONTEXT_SYSTEM, - 'legacy' => array( - 'admin' => CAP_ALLOW - ) - ), - 'moodle/restore:userinfo' => array( 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS | RISK_CONFIG, @@ -242,6 +233,17 @@ $capabilities = array( ) ), + 'moodle/restore:createuser' => array( + + 'riskbitmask' => RISK_SPAM | RISK_PERSONAL, + + 'captype' => 'write', + 'contextlevel' => CONTEXT_SYSTEM, + 'legacy' => array( + 'admin' => CAP_ALLOW + ) + ), + 'moodle/restore:rolldates' => array( 'captype' => 'write', diff --git a/lib/navigationlib.php b/lib/navigationlib.php index c462dcc7153..844f73e2487 100644 --- a/lib/navigationlib.php +++ b/lib/navigationlib.php @@ -2929,7 +2929,7 @@ class settings_navigation extends navigation_node { } // Import data from other courses - if (has_capability('moodle/site:import', $course->context)) { + if (has_capability('moodle/restore:restoretargetimport', $course->context)) { $url = new moodle_url('/course/import.php', array('id'=>$course->id)); $coursenode->add(get_string('import'), $url, self::TYPE_SETTING, null, null, new pix_icon('i/restore', '')); }