summaryrefslogtreecommitdiff
path: root/IkiWiki/Plugin/editpage.pm
diff options
context:
space:
mode:
authorintrigeri <intrigeri@boum.org>2009-03-08 09:50:27 +0100
committerintrigeri <intrigeri@boum.org>2009-03-08 09:50:27 +0100
commitae474d8e14631ff519ed7d54bb64eaa0538f56d9 (patch)
tree09637db5faf2632b67b581cf04463fe4493584d4 /IkiWiki/Plugin/editpage.pm
parent0314ed459ba1c49fad9170a54cc05f1c9e9c96bf (diff)
parent08e4472fc469c630ebef93e16a66a5a69d9cb33a (diff)
Merge commit 'upstream/master' into prv/po
Conflicts: IkiWiki/Plugin/editpage.pm debian/control debian/copyright doc/todo/need_global_renamepage_hook.mdwn Signed-off-by: intrigeri <intrigeri@boum.org>
Diffstat (limited to 'IkiWiki/Plugin/editpage.pm')
-rw-r--r--IkiWiki/Plugin/editpage.pm66
1 files changed, 1 insertions, 65 deletions
diff --git a/IkiWiki/Plugin/editpage.pm b/IkiWiki/Plugin/editpage.pm
index 480e82804..0068a6b11 100644
--- a/IkiWiki/Plugin/editpage.pm
+++ b/IkiWiki/Plugin/editpage.pm
@@ -51,73 +51,9 @@ sub refresh () {
# Back to ikiwiki namespace for the rest, this code is very much
# internal to ikiwiki even though it's separated into a plugin,
-# and other plugins use the functions below.
+# and other plugins use the function below.
package IkiWiki;
-sub check_canedit ($$$;$) {
- my $page=shift;
- my $q=shift;
- my $session=shift;
- my $nonfatal=shift;
-
- my $canedit;
- run_hooks(canedit => sub {
- return if defined $canedit;
- my $ret=shift->($page, $q, $session);
- if (defined $ret) {
- if ($ret eq "") {
- $canedit=1;
- }
- elsif (ref $ret eq 'CODE') {
- $ret->() unless $nonfatal;
- $canedit=0;
- }
- elsif (defined $ret) {
- error($ret) unless $nonfatal;
- $canedit=0;
- }
- }
- });
- return defined $canedit ? $canedit : 1;
-}
-
-sub check_content (@) {
- my %params=@_;
-
- return 1 if ! exists $hooks{checkcontent}; # optimisation
-
- if (exists $pagesources{$params{page}}) {
- my @diff;
- my %old=map { $_ => 1 }
- split("\n", readfile(srcfile($pagesources{$params{page}})));
- foreach my $line (split("\n", $params{content})) {
- push @diff, $line if ! exists $old{$_};
- }
- $params{diff}=join("\n", @diff);
- }
-
- my $ok;
- run_hooks(checkcontent => sub {
- return if defined $ok;
- my $ret=shift->(%params);
- if (defined $ret) {
- if ($ret eq "") {
- $ok=1;
- }
- elsif (ref $ret eq 'CODE') {
- $ret->() unless $params{nonfatal};
- $ok=0;
- }
- elsif (defined $ret) {
- error($ret) unless $params{nonfatal};
- $ok=0;
- }
- }
-
- });
- return defined $ok ? $ok : 1;
-}
-
sub cgi_editpage ($$) {
my $q=shift;
my $session=shift;