]> sipb.mit.edu Git - ikiwiki.git/blob - IkiWiki/Plugin/more.pm
Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.info
[ikiwiki.git] / IkiWiki / Plugin / more.pm
1 #!/usr/bin/perl
2 package IkiWiki::Plugin::more;
3
4 use warnings;
5 use strict;
6 use IkiWiki 3.00;
7
8 my $linktext = gettext("more");
9
10 sub import {
11         hook(type => "getsetup", id => "more", call => \&getsetup);
12         hook(type => "preprocess", id => "more", call => \&preprocess);
13 }
14
15 sub getsetup () {
16         return
17                 plugin => {
18                         safe => 1,
19                         rebuild => undef,
20                         section => "widget",
21                 },
22 }
23
24 sub preprocess (@) {
25         my %params=@_;
26
27         $params{linktext} = $linktext unless defined $params{linktext};
28
29         if ($params{page} ne $params{destpage}) {
30                 return "\n".
31                         htmllink($params{page}, $params{destpage}, $params{page},
32                                 linktext => $params{linktext},
33                                 anchor => "more");
34         }
35         else {
36                 $params{text}=IkiWiki::preprocess($params{page}, $params{destpage},
37                         IkiWiki::filter($params{page}, $params{destpage}, $params{text}));
38                 return "<a name=\"more\"></a>\n\n".$params{text};
39         }
40 }
41
42 1