MDL-23362 backup - save grade_item orig category properly, my fault, sorry Andrew
authorEloy Lafuente <stronk7@moodle.org>
Tue, 31 Aug 2010 09:17:11 +0000 (09:17 +0000)
committerEloy Lafuente <stronk7@moodle.org>
Tue, 31 Aug 2010 09:17:11 +0000 (09:17 +0000)
backup/moodle2/restore_stepslib.php
backup/moodle2/restore_subplugin.class.php

index 2e90022..e69bbcd 100644 (file)
@@ -1233,7 +1233,9 @@ class restore_activity_grades_structure_step extends restore_structure_step {
 
         $gradeitem = new grade_item($data);
         $gradeitem->insert('restore');
 
         $gradeitem = new grade_item($data);
         $gradeitem->insert('restore');
-        $this->set_mapping('grade_item', $oldid, $gradeitem->id, $oldparentid);
+        // Set mapping, saving the original category id into parentitemid
+        // gradebook restore (final task) will need it to reorganise items
+        $this->set_mapping('grade_item', $oldid, $gradeitem->id, false, null, $oldparentid);
     }
 
     protected function process_grade_grade($data) {
     }
 
     protected function process_grade_grade($data) {
index a5c8e45..5c95b1f 100644 (file)
@@ -84,8 +84,8 @@ abstract class restore_subplugin {
      * by children. Also will inject the known old context id for the task
      * in case it's going to be used for restoring files later
      */
      * by children. Also will inject the known old context id for the task
      * in case it's going to be used for restoring files later
      */
-    protected function set_mapping($itemname, $oldid, $newid, $restorefiles = false, $filesctxid = null) {
-        $this->step->set_mapping($itemname, $oldid, $newid, $restorefiles, $filesctxid);
+    protected function set_mapping($itemname, $oldid, $newid, $restorefiles = false, $filesctxid = null, $parentid = null) {
+        $this->step->set_mapping($itemname, $oldid, $newid, $restorefiles, $filesctxid, $parentid);
     }
 
     /**
     }
 
     /**