MDL-16262 fixed resetting of single simple discussions

This commit is contained in:
skodak 2009-01-01 22:43:00 +00:00
parent 1033221c21
commit af53d23f68

View file

@ -6836,11 +6836,12 @@ function forum_reset_userdata($data) {
// remove ratings // remove ratings
$DB->delete_records_select('forum_ratings', "post IN ($postssql)", $params); $DB->delete_records_select('forum_ratings', "post IN ($postssql)", $params);
// all posts // all posts - initial posts must be kept in single simple discussion forums
$DB->delete_records_select('forum_posts', "discussion IN ($discussionssql)", $params); $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 // finally all discussions except single simple forums
$DB->delete_records_select('forum_discussions', "forum IN ($forumssql)", $params); delete_records_select('forum_discussions', "forum IN ($forumssql AND f.type <> 'single')", $params);
// remove all grades from gradebook // remove all grades from gradebook
if (empty($data->reset_gradebook_grades)) { if (empty($data->reset_gradebook_grades)) {