]> sipb.mit.edu Git - ikiwiki.git/commitdiff
Merge commit 'intrigeri/po'
authorJoey Hess <joey@gnu.kitenet.net>
Thu, 27 Aug 2009 19:51:55 +0000 (15:51 -0400)
committerJoey Hess <joey@gnu.kitenet.net>
Thu, 27 Aug 2009 19:51:55 +0000 (15:51 -0400)
IkiWiki/Plugin/po.pm

index 1b313a97931eb23df15bb3a4a5d169b9ba5d432f..12f41f6de2d73c30ac543536d4940e49c0ae9a0a 100644 (file)
@@ -51,8 +51,6 @@ sub import {
        hook(type => "formbuilder_setup", id => "po", call => \&formbuilder_setup, last => 1);
        hook(type => "formbuilder", id => "po", call => \&formbuilder);
 
-       $origsubs{'bestlink'}=\&IkiWiki::bestlink;
-       inject(name => "IkiWiki::bestlink", call => \&mybestlink);
        $origsubs{'beautify_urlpath'}=\&IkiWiki::beautify_urlpath;
        inject(name => "IkiWiki::beautify_urlpath", call => \&mybeautify_urlpath);
        $origsubs{'targetpage'}=\&IkiWiki::targetpage;
@@ -153,6 +151,10 @@ sub checkconfig () {
                warn(gettext('po_link_to=negotiated requires usedirs to be enabled, falling back to po_link_to=default'));
                $config{po_link_to}='default';
        }
+       unless ($config{po_link_to} eq 'default') {
+               $origsubs{'bestlink'}=\&IkiWiki::bestlink;
+               inject(name => "IkiWiki::bestlink", call => \&mybestlink);
+       }
 
        push @{$config{wiki_file_prune_regexps}}, qr/\.pot$/;
 
@@ -543,13 +545,13 @@ sub formbuilder (@) {
 # `----
 
 # Implement po_link_to 'current' and 'negotiated' settings.
+# Not injected otherwise.
 sub mybestlink ($$) {
        my $page=shift;
        my $link=shift;
 
        my $res=$origsubs{'bestlink'}->(masterpage($page), $link);
        if (length $res
-           && ($config{po_link_to} eq "current" || $config{po_link_to} eq "negotiated")
            && istranslatable($res)
            && istranslation($page)) {
                return $res . "." . lang($page);