diff --git a/backup/moodle2/restore_stepslib.php b/backup/moodle2/restore_stepslib.php index fe4f504f57357..86c2dac48ef50 100644 --- a/backup/moodle2/restore_stepslib.php +++ b/backup/moodle2/restore_stepslib.php @@ -190,6 +190,15 @@ protected function process_grade_item($data) { $data->id = $newitemid = $existinggradeitem->id; $DB->update_record('grade_items', $data); } + } else if ($data->itemtype == 'manual') { + // Manual items aren't assigned to a cm, so don't go duplicating them in the target if one exists. + $gi = array( + 'itemtype' => $data->itemtype, + 'courseid' => $data->courseid, + 'itemname' => $data->itemname, + 'categoryid' => $data->categoryid, + ); + $newitemid = $DB->get_field('grade_items', 'id', $gi); } if (empty($newitemid)) {