X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/7b06a65221ae16bf447c591dba5712c1d9f00461..6c546c8f3182668c6d21d578b789674894f18c39:/IkiWiki/Plugin/trail.pm diff --git a/IkiWiki/Plugin/trail.pm b/IkiWiki/Plugin/trail.pm index b1bb6d5b5..01e17d614 100644 --- a/IkiWiki/Plugin/trail.pm +++ b/IkiWiki/Plugin/trail.pm @@ -160,7 +160,7 @@ sub preprocess_trailitems (@) { if (exists $params{pagenames}) { push @{$pagestate{$params{page}}{trail}{contents}}, - [pagenames => (split ' ', $params{pagenames})]; + [pagenames => (map { linkpage $_ } split ' ', $params{pagenames})]; } return ""; @@ -319,10 +319,9 @@ sub prerender { } if (defined $pagestate{$trail}{trail}{sort}) { - # re-sort - @$members = pagespec_match_list($trail, 'internal(*)', - list => $members, - sort => $pagestate{$trail}{trail}{sort}); + @$members = IkiWiki::sort_pages( + $pagestate{$trail}{trail}{sort}, + $members); } if (IkiWiki::yesno $pagestate{$trail}{trail}{reverse}) { @@ -344,8 +343,6 @@ sub prerender { $prev = $members->[$i - 1] if $i > 0; my $next = $members->[$i + 1]; - add_depends($member, $trail, deptype("presence")); - $member_to_trails{$member}{$trail} = [$prev, $next]; } @@ -413,6 +410,8 @@ sub pagetemplate (@) { my $page = $params{page}; my $template = $params{template}; + return unless length $page; + if ($template->query(name => 'trails') && ! $recursive) { prerender(); @@ -438,13 +437,11 @@ sub pagetemplate (@) { my ($prevurl, $nexturl, $prevtitle, $nexttitle); if (defined $prev) { - add_depends($params{destpage}, $prev, deptype("presence")); $prevurl = urlto($prev, $page); $prevtitle = title_of($prev); } if (defined $next) { - add_depends($params{destpage}, $next, deptype("presence")); $nexturl = urlto($next, $page); $nexttitle = title_of($next); }