X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/cedb48765b52d3e074f43703cf55611b3bce101d..4f269010b4a2b5ae9f2a3e342e3ec15ea72c61bb:/IkiWiki/Plugin/sidebar.pm diff --git a/IkiWiki/Plugin/sidebar.pm b/IkiWiki/Plugin/sidebar.pm index a6efc6b8e..a49726768 100644 --- a/IkiWiki/Plugin/sidebar.pm +++ b/IkiWiki/Plugin/sidebar.pm @@ -6,27 +6,31 @@ package IkiWiki::Plugin::sidebar; use warnings; use strict; -use IkiWiki; +use IkiWiki 2.00; sub import { #{{{ - IkiWiki::hook(type => "pagetemplate", id => "sidebar", - call => \&pagetemplate); + hook(type => "pagetemplate", id => "sidebar", call => \&pagetemplate); } # }}} sub sidebar_content ($) { #{{{ my $page=shift; - my $sidebar_page=IkiWiki::bestlink($page, "sidebar") || return; - my $sidebar_file=$IkiWiki::pagesources{$sidebar_page} || return; - my $sidebar_type=IkiWiki::pagetype($sidebar_file); + my $sidebar_page=bestlink($page, "sidebar") || return; + my $sidebar_file=$pagesources{$sidebar_page} || return; + my $sidebar_type=pagetype($sidebar_file); if (defined $sidebar_type) { - IkiWiki::add_depends($page, $sidebar_page); - my $content=IkiWiki::readfile(IkiWiki::srcfile($sidebar_file)); + # FIXME: This isn't quite right; it won't take into account + # adding a new sidebar page. So adding such a page + # currently requires a wiki rebuild. + add_depends($page, $sidebar_page); + + my $content=readfile(srcfile($sidebar_file)); return unless length $content; - return IkiWiki::htmlize($sidebar_type, + return IkiWiki::htmlize($page, $sidebar_type, + IkiWiki::linkify($sidebar_page, $page, IkiWiki::preprocess($sidebar_page, $page, - IkiWiki::linkify($sidebar_page, $page, $content))); + IkiWiki::filter($sidebar_page, $page, $content)))); } } # }}}