diff --git a/backup/moodle2/restore_stepslib.php b/backup/moodle2/restore_stepslib.php index 14c7ca7f7be..f1072a198b7 100644 --- a/backup/moodle2/restore_stepslib.php +++ b/backup/moodle2/restore_stepslib.php @@ -234,7 +234,13 @@ class restore_gradebook_structure_step extends restore_structure_step { $data->timecreated = $this->apply_date_offset($data->timecreated); $data->timemodified = $this->apply_date_offset($data->timemodified); - $newitemid = $DB->insert_record('grade_grades', $data); + $gradeexists = $DB->record_exists('grade_grades', array('userid' => $data->userid, 'itemid' => $data->itemid)); + if ($gradeexists) { + $message = "User id '{$data->userid}' already has a grade entry for grade item id '{$data->itemid}'"; + $this->log($message, backup::LOG_DEBUG); + } else { + $newitemid = $DB->insert_record('grade_grades', $data); + } } else { debugging("Mapped user id not found for user id '{$olduserid}', grade item id '{$data->itemid}'"); }