]> sipb.mit.edu Git - ikiwiki.git/blobdiff - IkiWiki/Plugin/po.pm
po: override the title template variable for coherent homepage titling
[ikiwiki.git] / IkiWiki / Plugin / po.pm
index 88d021388e48d712e5312dd83a88ceaeb851c315..2b2839f24f1d3a5bfbf03954e04df2fc3cf18b58 100644 (file)
@@ -204,10 +204,7 @@ sub scan (@) {
        if (istranslation($page)) {
                foreach my $destpage (@{$links{$page}}) {
                        if (istranslatable($destpage)) {
-                               # replace one occurence of $destpage in $links{$page}
-                               # (we only want to replace the one that was added by
-                               # IkiWiki::Plugin::link::scan, other occurences may be
-                               # there for other reasons)
+                               # replace the occurence of $destpage in $links{$page}
                                for (my $i=0; $i<@{$links{$page}}; $i++) {
                                        if (@{$links{$page}}[$i] eq $destpage) {
                                                @{$links{$page}}[$i] = $destpage . '.' . lang($page);
@@ -305,6 +302,9 @@ sub pagetemplate (@) {
            && $masterpage eq "index") {
                $template->param('parentlinks' => []);
        }
+       if (ishomepage($page) && $template->query(name => "title")) {
+               $template->param(title => $config{wikiname});
+       }
 } # }}}
 
 # Add the renamed page translations to the list of to-be-renamed pages.
@@ -963,6 +963,14 @@ sub homepageurl (;$) {
        return urlto('', $page);
 }
 
+sub ishomepage ($) {
+       my $page = shift;
+
+       return 1 if $page eq 'index';
+       map { return 1 if $page eq 'index.'.$_ } keys %{$config{po_slave_languages}};
+       return undef;
+}
+
 sub deletetranslations ($) {
        my $deletedmasterfile=shift;