X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/b31dc8d994d1cfd179c330a729dcb8bce0b293c2..50e8095fb8afa894b8200069995a08cd1e10df5d:/IkiWiki/Plugin/inline.pm
diff --git a/IkiWiki/Plugin/inline.pm b/IkiWiki/Plugin/inline.pm
index 5857636de..ebfcee9ed 100644
--- a/IkiWiki/Plugin/inline.pm
+++ b/IkiWiki/Plugin/inline.pm
@@ -5,7 +5,6 @@ package IkiWiki::Plugin::inline;
use warnings;
use strict;
use IkiWiki 1.00;
-use IkiWiki::Render; # for displaytime
use URI;
sub import { #{{{
@@ -82,7 +81,7 @@ sub preprocess_inline (@) { #{{{
my @list;
foreach my $page (keys %pagesources) {
next if $page eq $params{page};
- if (pagespec_match($page, $params{pages})) {
+ if (pagespec_match($page, $params{pages}, $params{page})) {
push @list, $page;
}
}
@@ -97,6 +96,10 @@ sub preprocess_inline (@) { #{{{
return sprintf(gettext("unknown sort type %s"), $params{sort});
}
+ if (yesno($params{reverse})) {
+ @list=reverse(@list);
+ }
+
if (exists $params{skip}) {
@list=@list[$params{skip} .. scalar @list - 1];
}
@@ -157,11 +160,19 @@ sub preprocess_inline (@) { #{{{
if ($actions) {
my $file = $pagesources{$page};
my $type = pagetype($file);
- if ($config{discussion} &&
- $page !~ /.*\/discussion$/ &&
- (length $config{cgiurl} || exists $links{$page."/".gettext("discussion")})) {
- $template->param(have_actions => 1);
- $template->param(discussionlink => htmllink($page, $params{page}, "Discussion", 1, 1));
+ if ($config{discussion}) {
+ my $discussionlink=gettext("discussion");
+ if ($page !~ /.*\/\Q$discussionlink\E$/ &&
+ (length $config{cgiurl} ||
+ exists $links{$page."/".$discussionlink})) {
+ $template->param(have_actions => 1);
+ $template->param(discussionlink =>
+ htmllink($page,
+ $params{page},
+ gettext("Discussion"),
+ noimageinline => 1,
+ forcesubpage => 1));
+ }
}
if (length $config{cgiurl} && defined $type) {
$template->param(have_actions => 1);
@@ -188,19 +199,25 @@ sub preprocess_inline (@) { #{{{
}
}
- if ($feeds && $rss) {
- will_render($params{page}, rsspage($params{page}));
- writefile(rsspage($params{page}), $config{destdir},
- genfeed("rss", $rssurl, $desc, $params{page}, @list));
- $toping{$params{page}}=1 unless $config{rebuild};
- $feedlinks{$params{destpage}}=qq{};
- }
- if ($feeds && $atom) {
- will_render($params{page}, atompage($params{page}));
- writefile(atompage($params{page}), $config{destdir},
- genfeed("atom", $atomurl, $desc, $params{page}, @list));
- $toping{$params{page}}=1 unless $config{rebuild};
- $feedlinks{$params{destpage}}=qq{};
+ if ($feeds) {
+ if (exists $params{feedshow} && @list > $params{feedshow}) {
+ @list=@list[0..$params{feedshow} - 1];
+ }
+
+ if ($rss) {
+ will_render($params{page}, rsspage($params{page}));
+ writefile(rsspage($params{page}), $config{destdir},
+ genfeed("rss", $rssurl, $desc, $params{page}, @list));
+ $toping{$params{page}}=1 unless $config{rebuild};
+ $feedlinks{$params{destpage}}=qq{};
+ }
+ if ($atom) {
+ will_render($params{page}, atompage($params{page}));
+ writefile(atompage($params{page}), $config{destdir},
+ genfeed("atom", $atomurl, $desc, $params{page}, @list));
+ $toping{$params{page}}=1 unless $config{rebuild};
+ $feedlinks{$params{destpage}}=qq{};
+ }
}
return $ret;