diff options
author | intrigeri <intrigeri@boum.org> | 2010-12-20 15:21:49 +0100 |
---|---|---|
committer | intrigeri <intrigeri@boum.org> | 2012-04-28 00:18:59 +0200 |
commit | 5b494e1b636f4c26c14c9cf8f964bef0a70c784a (patch) | |
tree | 61f73f8c4cae2357c6f2f5a4a37f71ab402931ad /IkiWiki | |
parent | e09eeb24363a3e0033102c894cef347afd89b0c2 (diff) | |
download | ikiwiki-5b494e1b636f4c26c14c9cf8f964bef0a70c784a.tar ikiwiki-5b494e1b636f4c26c14c9cf8f964bef0a70c784a.tar.gz |
mirrorlist: new mirrorlist_use_cgi boolean setting.
When set to true, let each mirror's ikiwiki CGI find out the correct target page
url themselves.
This resolves the usecase described on
[[todo/mirrorlist_with_per-mirror_usedirs_settings]].
Signed-off-by: intrigeri <intrigeri@boum.org>
Diffstat (limited to 'IkiWiki')
-rw-r--r-- | IkiWiki/Plugin/mirrorlist.pm | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/IkiWiki/Plugin/mirrorlist.pm b/IkiWiki/Plugin/mirrorlist.pm index f54d94ad5..b7e532485 100644 --- a/IkiWiki/Plugin/mirrorlist.pm +++ b/IkiWiki/Plugin/mirrorlist.pm @@ -24,6 +24,19 @@ sub getsetup () { safe => 1, rebuild => 1, }, + mirrorlist_use_cgi => { + type => 'boolean', + example => 1, + description => "generate links that point to the mirrors' ikiwiki CGI", + safe => 1, + rebuild => 1, + }, +} + +sub checkconfig () { + if (! defined $config{mirrorlist_use_cgi}) { + $config{mirrorlist_use_cgi}=0; + } } sub pagetemplate (@) { @@ -46,7 +59,9 @@ sub mirrorlist ($) { join(", ", map { qq{<a href="}. - $config{mirrorlist}->{$_}."/".urlto($page, ""). + ( $config{mirrorlist_use_cgi} ? + $config{mirrorlist}->{$_}."?do=goto&page=$page" : + $config{mirrorlist}->{$_}."/".urlto($page, "") ). qq{">$_</a>} } keys %{$config{mirrorlist}} ). |