Skip to content

Commit

Permalink
WIKI MDL-24162 added comments deletion to wiki reset function, added …
Browse files Browse the repository at this point in the history
…$data->reset_wiki_tags switch
  • Loading branch information
Dongsheng Cai committed Sep 20, 2010
1 parent 0cdbbc1 commit 7c61b94
Showing 1 changed file with 26 additions and 12 deletions.
38 changes: 26 additions & 12 deletions mod/wiki/lib.php
Original file line number Diff line number Diff line change
Expand Up @@ -155,17 +155,30 @@ function wiki_reset_userdata($data) {
}
$errors = false;
foreach ($wikis as $wiki) {
# Get subwiki information #
$subwikis = $DB->get_records('wiki_subwikis', array('wikiid' => $wiki->id));

foreach ($subwikis as $subwiki) {
if ($pages = $DB->get_records('wiki_pages', array('subwikiid' => $subwiki->id))) {
foreach ($pages as $page) {
$tags = tag_get_tags_array('wiki_page', $page->id);
foreach ($tags as $tagid => $tagname) {
// Delete the related tag_instances related to the wiki page.
$errors = tag_delete_instance('wiki_page', $page->id, $tagid);
$status[] = array('component' => $componentstr, 'item' => get_string('tagsdeleted', 'wiki'), 'error' => $errors);

// remove all comments
if (!empty($data->reset_wiki_comments)) {
if (!$cm = get_coursemodule_from_instance('wiki', $wiki->id)) {
continue;
}
$context = get_context_instance(CONTEXT_MODULE, $cm->id);
$DB->delete_records_select('comments', "contextid = ? AND commentarea='wiki_page'", array($context->id));
$status[] = array('component'=>$componentstr, 'item'=>get_string('deleteallcomments'), 'error'=>false);
}

if (!empty($data->reset_wiki_tags)) {
# Get subwiki information #
$subwikis = $DB->get_records('wiki_subwikis', array('wikiid' => $wiki->id));

foreach ($subwikis as $subwiki) {
if ($pages = $DB->get_records('wiki_pages', array('subwikiid' => $subwiki->id))) {
foreach ($pages as $page) {
$tags = tag_get_tags_array('wiki_page', $page->id);
foreach ($tags as $tagid => $tagname) {
// Delete the related tag_instances related to the wiki page.
$errors = tag_delete_instance('wiki_page', $page->id, $tagid);
$status[] = array('component' => $componentstr, 'item' => get_string('tagsdeleted', 'wiki'), 'error' => $errors);
}
}
}
}
Expand All @@ -177,7 +190,8 @@ function wiki_reset_userdata($data) {

function wiki_reset_course_form_definition(&$mform) {
$mform->addElement('header', 'wikiheader', get_string('modulenameplural', 'wiki'));
$mform->addElement('advcheckbox', 'reset_wiki_tags', get_string('removeallwikitags','wiki'));
$mform->addElement('advcheckbox', 'reset_wiki_tags', get_string('removeallwikitags', 'wiki'));
$mform->addElement('advcheckbox', 'reset_wiki_comments', get_string('deleteallcomments'));
}

/**
Expand Down

0 comments on commit 7c61b94

Please sign in to comment.