mirror of
https://github.com/moodle/moodle.git
synced 2025-04-24 01:44:27 +02:00
MDL-33455 restore: process grade_grades only if user matches.
Note this has been applied both to individual activities grade_grades and to general ones.
This commit is contained in:
parent
f0852f474b
commit
3ea1330949
@ -207,13 +207,13 @@ class restore_gradebook_structure_step extends restore_structure_step {
|
||||
global $DB;
|
||||
|
||||
$data = (object)$data;
|
||||
$oldid = $data->id;
|
||||
$olduserid = $data->userid;
|
||||
|
||||
$data->itemid = $this->get_new_parentid('grade_item');
|
||||
|
||||
$data->userid = $this->get_mappingid('user', $data->userid, NULL);
|
||||
if (!is_null($data->userid)) {
|
||||
$data->usermodified = $this->get_mappingid('user', $data->usermodified, NULL);
|
||||
$data->userid = $this->get_mappingid('user', $data->userid, null);
|
||||
if (!empty($data->userid)) {
|
||||
$data->usermodified = $this->get_mappingid('user', $data->usermodified, null);
|
||||
$data->locktime = $this->apply_date_offset($data->locktime);
|
||||
// TODO: Ask, all the rest of locktime/exported... work with time... to be rolled?
|
||||
$data->overridden = $this->apply_date_offset($data->overridden);
|
||||
@ -222,9 +222,10 @@ class restore_gradebook_structure_step extends restore_structure_step {
|
||||
|
||||
$newitemid = $DB->insert_record('grade_grades', $data);
|
||||
} else {
|
||||
debugging("Mapped user id not found for grade item id '{$data->itemid}'");
|
||||
debugging("Mapped user id not found for user id '{$olduserid}', grade item id '{$data->itemid}'");
|
||||
}
|
||||
}
|
||||
|
||||
protected function process_grade_category($data) {
|
||||
global $DB;
|
||||
|
||||
@ -2370,18 +2371,24 @@ class restore_activity_grades_structure_step extends restore_structure_step {
|
||||
|
||||
protected function process_grade_grade($data) {
|
||||
$data = (object)($data);
|
||||
|
||||
$olduserid = $data->userid;
|
||||
unset($data->id);
|
||||
$data->itemid = $this->get_new_parentid('grade_item');
|
||||
$data->userid = $this->get_mappingid('user', $data->userid);
|
||||
$data->usermodified = $this->get_mappingid('user', $data->usermodified);
|
||||
$data->rawscaleid = $this->get_mappingid('scale', $data->rawscaleid);
|
||||
// TODO: Ask, all the rest of locktime/exported... work with time... to be rolled?
|
||||
$data->overridden = $this->apply_date_offset($data->overridden);
|
||||
|
||||
$grade = new grade_grade($data, false);
|
||||
$grade->insert('restore');
|
||||
// no need to save any grade_grade mapping
|
||||
$data->itemid = $this->get_new_parentid('grade_item');
|
||||
|
||||
$data->userid = $this->get_mappingid('user', $data->userid, null);
|
||||
if (!empty($data->userid)) {
|
||||
$data->usermodified = $this->get_mappingid('user', $data->usermodified, null);
|
||||
$data->rawscaleid = $this->get_mappingid('scale', $data->rawscaleid);
|
||||
// TODO: Ask, all the rest of locktime/exported... work with time... to be rolled?
|
||||
$data->overridden = $this->apply_date_offset($data->overridden);
|
||||
|
||||
$grade = new grade_grade($data, false);
|
||||
$grade->insert('restore');
|
||||
// no need to save any grade_grade mapping
|
||||
} else {
|
||||
debugging("Mapped user id not found for user id '{$olduserid}', grade item id '{$data->itemid}'");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user