From 3dd3ab8ac83a84d98165b9745f11ec93ae7cd95a Mon Sep 17 00:00:00 2001 From: stronk7 Date: Sun, 3 Feb 2008 18:44:14 +0000 Subject: [PATCH] Only insert outcome_course if it doesn't exist. MDL-13308 ; merged from 19_STABLE --- backup/restorelib.php | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/backup/restorelib.php b/backup/restorelib.php index 36c0d6df7a..1828f8dd8a 100644 --- a/backup/restorelib.php +++ b/backup/restorelib.php @@ -1579,6 +1579,9 @@ define('RESTORE_GROUPS_GROUPINGS', 3); $recordset_size); if ($recs) { foreach ($recs as $rec) { + // Initialize the DB object + $dbrec = new object(); + //Get the full record from backup_ids $data = backup_getid($restore->backup_unique_code,'grade_outcomes_courses',$rec->old_id); if ($data) { @@ -1590,13 +1593,19 @@ define('RESTORE_GROUPS_GROUPINGS', 3); $oldoutcomesid = backup_todb($info['GRADE_OUTCOMES_COURSE']['#']['OUTCOMEID']['0']['#']); $newoutcome = backup_getid($restore->backup_unique_code,"grade_outcomes",$oldoutcomesid); - unset($dbrec); + $dbrec->courseid = $restore->course_id; $dbrec->outcomeid = $newoutcome->new_id; - insert_record('grade_outcomes_courses', $dbrec); + + //Only insert the record if it doesn't exist (can exist if restoring to existing course) + if (!record_exists('grade_outcomes_courses', 'courseid', $dbrec->courseid, 'outcomeid', $dbrec->outcomeid)) { + insert_record('grade_outcomes_courses', $dbrec); + } } + //Increment counters $counter++; + //Do some output if ($counter % 1 == 0) { if (!defined('RESTORE_SILENTLY')) { -- 2.39.5