From: Joey Hess <joey@gnu.kitenet.net>
Date: Sun, 16 Aug 2009 02:18:05 +0000 (-0400)
Subject: po: Better fix for missing underlay translation problem.
X-Git-Tag: 3.1415926~107
X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/commitdiff_plain/4ff3e2a540d154d49dfc70fb89dcc8422f2047e3?ds=inline;hp=--cc

po: Better fix for missing underlay translation problem.

If a page is taken from the underlay, and one of the specified languages
does not have po files in the underlay, it would create a broken link
to the translated version of the page for that language.

With this change, there's no broken link.
---

4ff3e2a540d154d49dfc70fb89dcc8422f2047e3
diff --git a/IkiWiki/Plugin/po.pm b/IkiWiki/Plugin/po.pm
index ce32aab05..aa3d72b90 100644
--- a/IkiWiki/Plugin/po.pm
+++ b/IkiWiki/Plugin/po.pm
@@ -891,7 +891,7 @@ sub percenttranslated ($) {
 	my $page=shift;
 
 	$page=~s/^\///;
-	return gettext("0") unless istranslation($page);
+	return gettext("N/A") unless istranslation($page);
 	my $file=srcfile($pagesources{$page});
 	my $masterfile = srcfile($pagesources{masterpage($page)});
 	my %options = (
@@ -934,7 +934,7 @@ sub otherlanguagesloop ($) {
 				master => 1,
 			};
 		}
-		else {
+		elsif (istranslation($otherpage)) {
 			push @ret, {
 				url => urlto_with_orig_beautiful_urlpath($otherpage, $page),
 				code => $lang,
diff --git a/doc/plugins/po.mdwn b/doc/plugins/po.mdwn
index 684593bf3..3766ad295 100644
--- a/doc/plugins/po.mdwn
+++ b/doc/plugins/po.mdwn
@@ -307,7 +307,8 @@ pages as edit links, as if those pages do not exist.
 That's really confusing, especially as clicking such a link
 brings up an edit form to create a new, english page.
 
-This is with po_link_to=current or negotiated. With default, it doesn't happen..
+This is with po_link_to=current or negotiated. With default, it doesn't
+happen.. --[[Joey]] 
 
 Double commits of po files
 --------------------------
@@ -321,7 +322,7 @@ and then committed again. The second commit makes this change:
 	+"Content-Transfer-Encoding: ENCODING\n"
 
 Same thing happens when a change to an existing page triggers a po file
-update.
+update. --[[Joey]] 
 
 Documentation
 -------------