From af53d23f6888e1d2ca08f4d8ac2d651318dff437 Mon Sep 17 00:00:00 2001 From: skodak Date: Thu, 1 Jan 2009 22:43:00 +0000 Subject: [PATCH] MDL-16262 fixed resetting of single simple discussions --- mod/forum/lib.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/mod/forum/lib.php b/mod/forum/lib.php index 1a02985b5e..33890be898 100644 --- a/mod/forum/lib.php +++ b/mod/forum/lib.php @@ -6836,11 +6836,12 @@ function forum_reset_userdata($data) { // remove ratings $DB->delete_records_select('forum_ratings', "post IN ($postssql)", $params); - // all posts - $DB->delete_records_select('forum_posts', "discussion IN ($discussionssql)", $params); + // all posts - initial posts must be kept in single simple discussion forums + $DB->delete_records_select('forum_posts', "discussion IN ($discussionssql) AND parent <> 0", $params); // first all children + $DB->delete_records_select('forum_posts', "discussion IN ($discussionssql AND f.type <> 'single') AND parent = 0", $params); // now the initial posts for non single simple - // finally all discussions - $DB->delete_records_select('forum_discussions', "forum IN ($forumssql)", $params); + // finally all discussions except single simple forums + delete_records_select('forum_discussions', "forum IN ($forumssql AND f.type <> 'single')", $params); // remove all grades from gradebook if (empty($data->reset_gradebook_grades)) { -- 2.39.5