* Add mirrorlist plugin.

master
joey 2006-12-23 01:07:11 +00:00
parent a66c693ee4
commit d83d11e6b8
5 changed files with 56 additions and 0 deletions

View File

@ -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

6
debian/changelog vendored
View File

@ -1,3 +1,9 @@
ikiwiki (1.37) UNRELEASED; urgency=low
* Add mirrorlist plugin.
-- Joey Hess <joeyh@debian.org> Fri, 22 Dec 2006 19:54:41 -0500
ikiwiki (1.36) unstable; urgency=low
* Fix various links on the hyperestradier pages.

View File

@ -111,4 +111,10 @@ use IkiWiki::Setup::Standard {
# For use with the openid plugin, to give an url to a page users
# can use to signup for an OpenID.
#openidsignup => "http://myopenid.com/",
# For use with the mirrorlist plugin, a list of mirrors.
#mirrorlist => {
# mirror1 => "http://hostname1",
# mirror2 => "http://hostname2/mirror",
#},
}

View File

@ -0,0 +1,8 @@
[[template id=plugin name=mirror included=1 author="[[Joey]]"]]
[[tag type/special-purpose]]
This plugin allows adding links a list of mirrors to each page in the
wiki. For each mirror, a name and an url should be specified. Pages are
assumed to exist in the same location under the specified url on each
mirror. The [[ikiwiki.setup]] file has an example of configuring a list of
mirrors.

View File

@ -80,6 +80,7 @@ Links:
<span class="pageinfo">
<!-- from <TMPL_VAR NAME=WIKINAME> -->
Last edited <TMPL_VAR NAME=MTIME>
<TMPL_IF EXTRAFOOTER><TMPL_VAR EXTRAFOOTER></TMPL_IF>
</span>
</div>