po: fixed link to home page when po_link_to=negotiated, added testcase
authorintrigeri <intrigeri@boum.org>
Tue, 11 Nov 2008 17:42:14 +0000 (18:42 +0100)
committerintrigeri <intrigeri@boum.org>
Tue, 11 Nov 2008 17:42:14 +0000 (18:42 +0100)
Signed-off-by: intrigeri <intrigeri@boum.org>
IkiWiki/Plugin/po.pm
t/po.t

index a8d9b9cd99fa0a545e3e7e0b6e9f38446288b9d6..96ba467c58d63f4c2ec07a78d281c8d60759d3ef 100644 (file)
@@ -406,6 +406,7 @@ sub mybeautify_urlpath ($) { #{{{
        my $res=$origsubs{'beautify_urlpath'}->($url);
        if ($config{po_link_to} eq "negotiated") {
                $res =~ s!/\Qindex.$config{po_master_language}{code}.$config{htmlext}\E$!/!;
+               $res =~ s!/\Qindex.$config{htmlext}\E$!/!;
        }
        return $res;
 } #}}}
diff --git a/t/po.t b/t/po.t
index be446f10817f04d9ecb842907c166fb6bd278a35..02115e16f4a5399af6476238bdadabd33a59f4e4 100755 (executable)
--- a/t/po.t
+++ b/t/po.t
@@ -150,10 +150,11 @@ $msgprefix="urlto (po_link_to=current)";
 is(urlto('', 'index'), './index.en.html', "$msgprefix index -> ''");
 is(urlto('', 'nontranslatable'), './../index.en.html', "$msgprefix nontranslatable -> ''");
 is(urlto('', 'translatable.fr'), './../index.fr.html', "$msgprefix translatable.fr -> ''");
+$config{po_link_to}='negotiated';
 $msgprefix="urlto (po_link_to=negotiated)";
-is(urlto('', 'index'), './index.en.html', "$msgprefix index -> ''");
-is(urlto('', 'nontranslatable'), './../index.en.html', "$msgprefix nontranslatable -> ''");
-is(urlto('', 'translatable.fr'), './../index.fr.html', "$msgprefix translatable.fr -> ''");
+is(urlto('', 'index'), './', "$msgprefix index -> ''");
+is(urlto('', 'nontranslatable'), './../', "$msgprefix nontranslatable -> ''");
+is(urlto('', 'translatable.fr'), './../', "$msgprefix translatable.fr -> ''");
 
 ### bestlink
 $config{po_link_to}='current';