From 07ee3b4e29f233a0f06d3a23c28c29c143ffcf5d Mon Sep 17 00:00:00 2001 From: Eloy Lafuente Date: Mon, 13 Sep 2010 21:16:28 +0000 Subject: [PATCH] MDL-24189 data module restore - Fix 1.x comments and ratings restore. Were missing user remappings. --- mod/data/backuplib.php | 1 + mod/data/restorelib.php | 30 ++++++++++++++++++++++-------- 2 files changed, 23 insertions(+), 8 deletions(-) diff --git a/mod/data/backuplib.php b/mod/data/backuplib.php index 5f00367cbba..996ce241901 100644 --- a/mod/data/backuplib.php +++ b/mod/data/backuplib.php @@ -243,6 +243,7 @@ function backup_data_comments($bf,$preferences,$recordid){ fwrite ($bf,full_tag("RECORDID",8,false,$com_sub->recordid)); fwrite ($bf,full_tag("USERID",8,false,$com_sub->userid)); fwrite ($bf,full_tag("CONTENT",8,false,$com_sub->content)); + fwrite ($bf,full_tag("FORMAT",8,false,$com_sub->format)); fwrite ($bf,full_tag("CREATED",8,false,$com_sub->created)); fwrite ($bf,full_tag("MODIFIED",8,false,$com_sub->modified)); //End submission diff --git a/mod/data/restorelib.php b/mod/data/restorelib.php index 0b2bdcc768f..984a5b894c7 100644 --- a/mod/data/restorelib.php +++ b/mod/data/restorelib.php @@ -404,9 +404,15 @@ function data_ratings_restore_mods ($oldid, $newid, $info, $rec_info) { $rat_info = $ratings[$i]; - $rating -> recordid = $newid; - $rating -> userid = backup_todb($rat_info['#']['USERID']['0']['#']); - $rating -> rating = backup_todb($rat_info['#']['RATING']['0']['#']); + $rating->recordid = $newid; + $rating->userid = backup_todb($rat_info['#']['USERID']['0']['#']); + $rating->rating = backup_todb($rat_info['#']['RATING']['0']['#']); + + // Need to remap the user + $user = backup_getid($restore->backup_unique_code,"user",$rating->userid); + if ($user) { + $rating->userid = $user->new_id; + } if (! insert_record ("data_ratings",$rating)) { $status = false; @@ -431,11 +437,19 @@ function data_comments_restore_mods ($oldid, $newid, $info, $rec_info) { $com_info = $comments[$i]; - $comment -> recordid = $newid; - $comment -> userid = backup_todb($com_info['#']['USERID']['0']['#']); - $comment -> content = backup_todb($com_info['#']['CONTENT']['0']['#']); - $comment -> created = backup_todb($com_info['#']['CREATED']['0']['#']); - $comment -> modified = backup_todb($com_info['#']['MODIFIED']['0']['#']); + $comment->recordid = $newid; + $comment->userid = backup_todb($com_info['#']['USERID']['0']['#']); + $comment->content = backup_todb($com_info['#']['CONTENT']['0']['#']); + $comment->format = backup_todb($com_info['#']['FORMAT']['0']['#']); + $comment->created = backup_todb($com_info['#']['CREATED']['0']['#']); + $comment->modified = backup_todb($com_info['#']['MODIFIED']['0']['#']); + + // Need to remap the user + $user = backup_getid($restore->backup_unique_code,"user",$comment->userid); + if ($user) { + $comment->userid = $user->new_id; + } + if (! insert_record ("data_comments",$comment)) { $status = false; } -- 2.11.4.GIT