/** * Called during restore (near end of restore). Updates any necessary ids * and writes the updated tree to the database. May output warnings if * necessary (e.g. if a course-module cannot be found after restore). * * @param string $restoreid Restore identifier * @param int $courseid Target course id * @param \base_logger $logger Logger for any warnings * @param int $dateoffset Date offset to be added to any dates (0 = none) */ public function update_after_restore($restoreid, $courseid, \base_logger $logger, $dateoffset) { $tree = $this->get_availability_tree(); // Set static data for use by get_restore_date_offset function. self::$restoreinfo = array('restoreid' => $restoreid, 'dateoffset' => $dateoffset); $changed = $tree->update_after_restore($restoreid, $courseid, $logger, $this->get_thing_name()); if ($changed) { // Save modified data. $structure = $tree->save(); $this->set_in_database(json_encode($structure)); } }
/** * Called during restore (near end of restore). Updates any necessary ids * and writes the updated tree to the database. May output warnings if * necessary (e.g. if a course-module cannot be found after restore). * * @param string $restoreid Restore identifier * @param int $courseid Target course id * @param \base_logger $logger Logger for any warnings * @param int $dateoffset Date offset to be added to any dates (0 = none) * @param \base_task $task Restore task */ public function update_after_restore($restoreid, $courseid, \base_logger $logger, $dateoffset, \base_task $task) { $tree = $this->get_availability_tree(); // Set static data for use by get_restore_date_offset function. self::$restoreinfo = array('restoreid' => $restoreid, 'dateoffset' => $dateoffset, 'task' => $task); $changed = $tree->update_after_restore($restoreid, $courseid, $logger, $this->get_thing_name()); if ($changed) { // Save modified data. if ($tree->is_empty()) { // If the tree is empty, but the tree has changed, remove this condition. $this->set_in_database(null); } else { $structure = $tree->save(); $this->set_in_database(json_encode($structure)); } } }