From: Joey Hess Date: Mon, 21 Jul 2008 17:50:12 +0000 (-0400) Subject: basically, removal works X-Git-Tag: 2.55~101 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=c924c76bd89d6d607b59c1d68ba32fae0fefc77a;p=ikiwiki.git basically, removal works Still need to consider all the edge cases.. --- diff --git a/IkiWiki/Plugin/remove.pm b/IkiWiki/Plugin/remove.pm index 0dded4fa4..57c43cfdf 100644 --- a/IkiWiki/Plugin/remove.pm +++ b/IkiWiki/Plugin/remove.pm @@ -106,7 +106,23 @@ sub sessioncgi ($$) { #{{{ exit 0; } elsif ($form->submitted eq 'Remove' && $form->validate) { - error("removal not yet implemented"); # TODO + my $page=IkiWiki::titlepage($form->field("page")); + my $file=$pagesources{$page}; + + # Do removal, and update the wiki. + require IkiWiki::Render; + if ($config{rcs}) { + IkiWiki::rcs_remove($file); + IkiWiki::disable_commit_hook(); + IkiWiki::rcs_commit($file, gettext("removed"), + IkiWiki::rcs_prepedit($file), + $session->param("name"), $ENV{REMOTE_ADDR}); + IkiWiki::enable_commit_hook(); + IkiWiki::rcs_update(); + } + IkiWiki::prune("$config{srcdir}/$file"); + IkiWiki::refresh(); + IkiWiki::saveindex(); } else { IkiWiki::showform($form, $buttons, $session, $q); diff --git a/debian/changelog b/debian/changelog index 1c7d03b97..7fd149df5 100644 --- a/debian/changelog +++ b/debian/changelog @@ -3,7 +3,7 @@ ikiwiki (2.55) UNRELEASED; urgency=low * prefix_directives enabled in doc wiki, all preprocessor directives converted. (Simon McVittie) * editpage: Don't show attachments link when attachments are disabled. - * All rcs backends need to implement rcs_rm. (Done for svn, git). + * All rcs backends need to implement rcs_remove. (Done for svn, git). -- Joey Hess Mon, 21 Jul 2008 11:35:46 -0400