diff --git a/mod/wiki/admin.php b/mod/wiki/admin.php index a99605c0e97..1906753ac9f 100644 --- a/mod/wiki/admin.php +++ b/mod/wiki/admin.php @@ -64,6 +64,13 @@ require_capability('mod/wiki:managewiki', $context); //Delete page if a page ID to delete was supplied if (!empty($delete) && confirm_sesskey()) { + if ($pageid != $delete) { + // Validate that we are deleting from the same subwiki. + $deletepage = wiki_get_page($delete) + if (!$deletepage || $deletepage->subwikiid != $page->subwikiid) { + print_error('incorrectsubwikiid', 'wiki'); + } + } wiki_delete_pages($context, $delete, $page->subwikiid); //when current wiki page is deleted, then redirect user to create that page, as //current pageid is invalid after deletion. @@ -105,4 +112,4 @@ $wikipage->print_header(); $wikipage->set_view($option, empty($listall)?true:false); $wikipage->print_content(); -$wikipage->print_footer(); \ No newline at end of file +$wikipage->print_footer();