MDL-29591 Check for permission before overwriting course idnumber when restoring
This commit is contained in:
committed by
Eloy Lafuente (stronk7)
parent
50f0c58e69
commit
f7aef5c648
@@ -1096,7 +1096,6 @@ class restore_course_structure_step extends restore_structure_step {
|
||||
global $CFG, $DB;
|
||||
|
||||
$data = (object)$data;
|
||||
$oldid = $data->id; // We'll need this later
|
||||
|
||||
$fullname = $this->get_setting_value('course_fullname');
|
||||
$shortname = $this->get_setting_value('course_shortname');
|
||||
@@ -1109,7 +1108,13 @@ class restore_course_structure_step extends restore_structure_step {
|
||||
$data->id = $this->get_courseid();
|
||||
$data->fullname = $fullname;
|
||||
$data->shortname= $shortname;
|
||||
$data->idnumber = '';
|
||||
|
||||
$context = get_context_instance_by_id($this->task->get_contextid());
|
||||
if (has_capability('moodle/course:changeidnumber', $context, $this->task->get_userid())) {
|
||||
$data->idnumber = '';
|
||||
} else {
|
||||
unset($data->idnumber);
|
||||
}
|
||||
|
||||
// Only restrict modules if original course was and target site too for new courses
|
||||
$data->restrictmodules = $data->restrictmodules && !empty($CFG->restrictmodulesfor) && $CFG->restrictmodulesfor == 'all';
|
||||
|
||||
Reference in New Issue
Block a user