]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - IkiWiki/Plugin/editdiff.pm
Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.info
[git.ikiwiki.info.git] / IkiWiki / Plugin / editdiff.pm
index b8ecaa3d747c356e1690c197592eaecfd44c1456..f5d7837fc4c4712de2b693497ce3dd1b7a977b59 100644 (file)
@@ -9,10 +9,19 @@ use HTML::Entities;
 use IPC::Open2;
 
 sub import { #{{{
+       hook(type => "getsetup", id => "editdiff", call => \&getsetup);
        hook(type => "formbuilder_setup", id => "editdiff",
                call => \&formbuilder_setup);
 } #}}}
 
+sub getsetup () { #{{{
+       return
+               plugin => {
+                       safe => 1,
+                       rebuild => 0,
+               },
+} #}}}
+
 sub diff ($$) { #{{{
        my $orig=shift;
        my $content=shift;
@@ -46,11 +55,11 @@ sub diff ($$) { #{{{
 sub formbuilder_setup { #{{{
        my %params=@_;
        my $form=$params{form};
-       my $page=$form->field("page");
 
-       return if $form->field("do") ne "edit";
+       return if ! defined $form->field("do") || $form->field("do") ne "edit";
 
-       $page = IkiWiki::titlepage(IkiWiki::possibly_foolish_untaint($page));
+       my $page=$form->field("page");
+       $page = IkiWiki::possibly_foolish_untaint($page);
        return unless exists $pagesources{$page};
 
        push @{$params{buttons}}, "Diff";