diff options
Diffstat (limited to 'IkiWiki/Plugin')
-rw-r--r-- | IkiWiki/Plugin/mirrorlist.pm | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/IkiWiki/Plugin/mirrorlist.pm b/IkiWiki/Plugin/mirrorlist.pm new file mode 100644 index 000000000..104587f3a --- /dev/null +++ b/IkiWiki/Plugin/mirrorlist.pm @@ -0,0 +1,35 @@ +#!/usr/bin/perl +package IkiWiki::Plugin::mirrorlist; + +use warnings; +use strict; +use IkiWiki; + +sub import { #{{{ + hook(type => "pagetemplate", id => "mirrorlist", call => \&pagetemplate); +} # }}} + +sub pagetemplate (@) { #{{{ + my %params=@_; + my $template=$params{template}; + + $template->param(extrafooter => mirrorlist($params{page})) + if $template->query(name => "extrafooter"); +} # }}} + +sub mirrorlist ($) { #{{{ + my $page=shift; + return "<p>Mirror". + (keys %{$config{mirrorlist}} > 1 ? "s" : ""). + ": ". + join(", ", + map { + qq{<a href="}. + $config{mirrorlist}->{$_}."/".$page. + qq{">$_</a>} + } keys %{$config{mirrorlist}} + ). + "</p>"; +} # }}} + +1 |