"Page deleter", "version" => "0.7", "author" => "Starbeamrainbowlabs", "description" => "Adds an action to allow administrators to delete pages.", "id" => "page-delete", "code" => function() { add_action("delete", function() { global $pageindex, $settings, $env; if(!$settings->editing) { exit(page_renderer::render_main("Deleting $env->page - error", "
You tried to delete $env->page, but editing is disabled on this wiki.
If you wish to delete this page, please re-enable editing on this wiki first.
Nothing has been changed.
")); } if(!$env->is_admin) { exit(page_renderer::render_main("Deleting $env->page - error", "You tried to delete $env->page, but you are not an admin so you don't have permission to do that.
You should try logging in as an admin.
")); } if(!isset($_GET["delete"]) or $_GET["delete"] !== "yes") { exit(page_renderer::render_main("Deleting $env->page", "You are about to delete $env->page. You can't undo this!
Click here to delete $env->page.
Click here to go back.")); } $page = $env->page; // Delete the associated file if it exists if(!empty($pageindex->$page->uploadedfile)) { unlink($pageindex->$page->uploadedfilepath); } unset($pageindex->$page); //delete the page from the page index file_put_contents("./pageindex.json", json_encode($pageindex, JSON_PRETTY_PRINT)); //save the new page index unlink("./$env->page.md"); //delete the page from the disk exit(page_renderer::render_main("Deleting $env->page - $settings->sitename", "
$env->page has been deleted. Go back to the main page.
")); }); } ]); ?>