X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/cf35ee04cddd7b9b39636499dd24b689443c0e97..c42fd7d7580d081f3e3f624fd74219b0435230f6:/IkiWiki/Plugin/more.pm
diff --git a/IkiWiki/Plugin/more.pm b/IkiWiki/Plugin/more.pm
index 667cd6415..6880e366d 100644
--- a/IkiWiki/Plugin/more.pm
+++ b/IkiWiki/Plugin/more.pm
@@ -3,29 +3,42 @@ package IkiWiki::Plugin::more;
use warnings;
use strict;
-use IkiWiki 2.00;
+use IkiWiki 3.00;
my $linktext = gettext("more");
-sub import { #{{{
- hook(type => "preprocess", id => "more", call => \&preprocess);
-} # }}}
+sub import {
+ hook(type => "getsetup", id => "more", call => \&getsetup);
+ hook(type => "preprocess", id => "more", call => \&preprocess);
+}
+
+sub getsetup () {
+ return
+ plugin => {
+ safe => 1,
+ rebuild => undef,
+ section => "widget",
+ },
+}
-sub preprocess (@) { #{{{
+sub preprocess (@) {
my %params=@_;
$params{linktext} = $linktext unless defined $params{linktext};
- if ($params{page} ne $params{destpage}) {
+ if ($params{page} ne $params{destpage} &&
+ (! exists $params{pages} ||
+ pagespec_match($params{destpage}, $params{pages},
+ location => $params{page}))) {
return "\n".
htmllink($params{page}, $params{destpage}, $params{page},
linktext => $params{linktext},
anchor => "more");
}
else {
- $params{text}=IkiWiki::preprocess($params{page}, $params{destpage},
- IkiWiki::filter($params{page}, $params{destpage}, $params{text}));
- return "\n\n".$params{text};
+ return "\n\n".
+ IkiWiki::preprocess($params{page}, $params{destpage},
+ $params{text});
}
}