X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/903213e63fd6c409046f66e73881aba33c3926de..05b6e8ceee2bec4442727e2475abf8a8861d5e0a:/IkiWiki/Plugin/mirrorlist.pm diff --git a/IkiWiki/Plugin/mirrorlist.pm b/IkiWiki/Plugin/mirrorlist.pm index 7e53fe068..92be7913e 100644 --- a/IkiWiki/Plugin/mirrorlist.pm +++ b/IkiWiki/Plugin/mirrorlist.pm @@ -3,18 +3,19 @@ package IkiWiki::Plugin::mirrorlist; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; -sub import { #{{{ +sub import { hook(type => "getsetup", id => "mirrorlist", call => \&getsetup); hook(type => "pagetemplate", id => "mirrorlist", call => \&pagetemplate); -} # }}} +} -sub getsetup () { #{{{ +sub getsetup () { return plugin => { safe => 1, rebuild => 1, + section => "web", }, mirrorlist => { type => "string", @@ -23,17 +24,21 @@ sub getsetup () { #{{{ safe => 1, rebuild => 1, }, -} #}}} +} -sub pagetemplate (@) { #{{{ +sub pagetemplate (@) { my %params=@_; my $template=$params{template}; - $template->param(extrafooter => mirrorlist($params{page})) - if $template->query(name => "extrafooter"); -} # }}} + if ($template->query(name => "extrafooter") && + keys %{$config{mirrorlist}} > 0) { + my $value=$template->param("extrafooter"); + $value.=mirrorlist($params{page}); + $template->param(extrafooter => $value); + } +} -sub mirrorlist ($) { #{{{ +sub mirrorlist ($) { my $page=shift; return "

". (keys %{$config{mirrorlist}} > 1 ? gettext("Mirrors") : gettext("Mirror")). @@ -46,6 +51,6 @@ sub mirrorlist ($) { #{{{ } keys %{$config{mirrorlist}} ). "

"; -} # }}} +} 1