X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/832d4d31d177d5d5f848250496048a00e9d70e2f..98f0d672dfcbc178b80a2d5f9a8b2f2633c8f039:/IkiWiki/Plugin/editpage.pm?ds=sidebyside diff --git a/IkiWiki/Plugin/editpage.pm b/IkiWiki/Plugin/editpage.pm index 658d664af..480e82804 100644 --- a/IkiWiki/Plugin/editpage.pm +++ b/IkiWiki/Plugin/editpage.pm @@ -93,7 +93,7 @@ sub check_content (@) { foreach my $line (split("\n", $params{content})) { push @diff, $line if ! exists $old{$_}; } - $params{content}=join("\n", @diff); + $params{diff}=join("\n", @diff); } my $ok; @@ -105,11 +105,12 @@ sub check_content (@) { $ok=1; } elsif (ref $ret eq 'CODE') { - $ret->(); + $ret->() unless $params{nonfatal}; $ok=0; } elsif (defined $ret) { - error($ret); + error($ret) unless $params{nonfatal}; + $ok=0; } } @@ -117,33 +118,6 @@ sub check_content (@) { return defined $ok ? $ok : 1; } -sub check_cansave ($$$$) { - my $page=shift; - my $content=shift; - my $q=shift; - my $session=shift; - - my $cansave; - run_hooks(cansave => sub { - return if defined $cansave; - my $ret=shift->($page, $content, $q, $session); - if (defined $ret) { - if ($ret eq "") { - $cansave=1; - } - elsif (ref $ret eq 'CODE') { - $ret->(); - $cansave=0; - } - else { - error($ret); - $cansave=0; - } - } - }); - return $cansave; -} - sub cgi_editpage ($$) { my $q=shift; my $session=shift; @@ -439,7 +413,6 @@ sub cgi_editpage ($$) { } my $content=$form->field('editcontent'); - check_cansave($page, $content, $q, $session); check_content(content => $content, page => $page, cgi => $q, session => $session, subject => $message);