X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/7910c2c7f6ffc0dd22682c6513293fd1cb9e985b..51e8a4eeda24f0a2cfdb0e579ddf1e6df9972544:/IkiWiki/Plugin/mirrorlist.pm?ds=inline

diff --git a/IkiWiki/Plugin/mirrorlist.pm b/IkiWiki/Plugin/mirrorlist.pm
index 34a97cc0b..f54d94ad5 100644
--- a/IkiWiki/Plugin/mirrorlist.pm
+++ b/IkiWiki/Plugin/mirrorlist.pm
@@ -3,23 +3,44 @@ package IkiWiki::Plugin::mirrorlist;
 
 use warnings;
 use strict;
-use IkiWiki;
+use IkiWiki 3.00;
 
-sub import { #{{{
+sub import {
+	hook(type => "getsetup", id => "mirrorlist", call => \&getsetup);
 	hook(type => "pagetemplate", id => "mirrorlist", call => \&pagetemplate);
-} # }}}
+}
 
-sub pagetemplate (@) { #{{{
+sub getsetup () {
+	return
+		plugin => {
+			safe => 1,
+			rebuild => 1,
+			section => "web",
+		},
+		mirrorlist => {
+			type => "string",
+			example => {},
+			description => "list of mirrors",
+			safe => 1,
+			rebuild => 1,
+		},
+}
+
+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 "<p>".
+	return ($config{html5} ? '<nav id="mirrorlist">' : '<div>').
 		(keys %{$config{mirrorlist}} > 1 ? gettext("Mirrors") : gettext("Mirror")).
 		": ".
 		join(", ",
@@ -29,7 +50,7 @@ sub mirrorlist ($) { #{{{
 				qq{">$_</a>}
 			} keys %{$config{mirrorlist}}
 		).
-		"</p>";
-} # }}}
+		($config{html5} ? '</nav>' : '</div>');
+}
 
 1