X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/e3713772f76fa9cc3587e48d0326035a352270d9..9a62836d288fbced42b04a172baf52063ef71c61:/IkiWiki/Plugin/cutpaste.pm

diff --git a/IkiWiki/Plugin/cutpaste.pm b/IkiWiki/Plugin/cutpaste.pm
index 1737775d5..92667a1ef 100644
--- a/IkiWiki/Plugin/cutpaste.pm
+++ b/IkiWiki/Plugin/cutpaste.pm
@@ -4,22 +4,30 @@ package IkiWiki::Plugin::cutpaste;
 use warnings;
 use strict;
 use IkiWiki 2.00;
-use UNIVERSAL;
 
 my %savedtext;
 
 sub import { #{{{
+	hook(type => "getsetup", id => "cutpaste", call => \&getsetup);
 	hook(type => "preprocess", id => "cut", call => \&preprocess_cut, scan => 1);
 	hook(type => "preprocess", id => "copy", call => \&preprocess_copy, scan => 1);
 	hook(type => "preprocess", id => "paste", call => \&preprocess_paste);
 } # }}}
 
+sub getsetup () { #{{{
+	return
+		plugin => {
+			safe => 1,
+			rebuild => undef,
+		},
+} #}}}
+
 sub preprocess_cut (@) { #{{{
 	my %params=@_;
 
 	foreach my $param (qw{id text}) {
 		if (! exists $params{$param}) {
-			return "[[cut ".sprintf(gettext('%s parameter is required'), $param)."]]";
+			error sprintf(gettext('%s parameter is required'), $param);
 		}
 	}
 
@@ -34,7 +42,7 @@ sub preprocess_copy (@) { #{{{
 
 	foreach my $param (qw{id text}) {
 		if (! exists $params{$param}) {
-			return "[[copy ".sprintf(gettext('%s parameter is required'), $param)."]]";
+			error sprintf(gettext('%s parameter is required'), $param);
 		}
 	}
 
@@ -50,15 +58,15 @@ sub preprocess_paste (@) { #{{{
 
 	foreach my $param (qw{id}) {
 		if (! exists $params{$param}) {
-			return "[[paste ".sprintf(gettext('%s parameter is required'), $param)."]]";
+			error sprintf(gettext('%s parameter is required'), $param);
 		}
 	}
 
 	if (! exists $savedtext{$params{page}}) {
-		return "[[paste ".gettext('no text was copied in this page')."]]";
+		error gettext('no text was copied in this page');
 	}
 	if (! exists $savedtext{$params{page}}->{$params{id}}) {
-		return "[[paste ".sprintf(gettext('no text was copied in this page with id %s'), $params{id})."]]";
+		error sprintf(gettext('no text was copied in this page with id %s'), $params{id});
 	}
 
 	return IkiWiki::preprocess($params{page}, $params{destpage},