diff options
author | Joey Hess <joey@kitenet.net> | 2011-03-24 19:44:32 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2011-03-24 19:44:32 -0400 |
commit | 7821965ef0c8c49b233d8abb621af33f1f7a31bd (patch) | |
tree | 99fc202151cbb3f09baeeec188788a79fd3d7119 /IkiWiki | |
parent | f39d02583abee54d1c7792dcc171db6bba226091 (diff) |
fix targetpage replacement to support 3 argument form
Oddly, this hadn't caused any visible breakage. Possibly inline,
which is the only thing to use targetpage, resolves the function
to the "real" one before po gets loaded?
Diffstat (limited to 'IkiWiki')
-rw-r--r-- | IkiWiki/Plugin/po.pm | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/IkiWiki/Plugin/po.pm b/IkiWiki/Plugin/po.pm index 0ea35b21c..9ccc79268 100644 --- a/IkiWiki/Plugin/po.pm +++ b/IkiWiki/Plugin/po.pm @@ -624,20 +624,24 @@ sub mybeautify_urlpath ($) { return $res; } -sub mytargetpage ($$) { +sub mytargetpage ($$;$) { my $page=shift; my $ext=shift; + my $filename=shift; if (istranslation($page) || istranslatable($page)) { my ($masterpage, $lang) = (masterpage($page), lang($page)); - if (! $config{usedirs} || $masterpage eq 'index') { + if (defined $filename) { + return $masterpage . "/" . $filename . "." . $lang . "." . $ext; + } + elsif (! $config{usedirs} || $masterpage eq 'index') { return $masterpage . "." . $lang . "." . $ext; } else { return $masterpage . "/index." . $lang . "." . $ext; } } - return $origsubs{'targetpage'}->($page, $ext); + return $origsubs{'targetpage'}->($page, $ext, $filename); } sub myurlto ($;$$) { |