aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki/Plugin/po.pm
diff options
context:
space:
mode:
authorintrigeri <intrigeri@boum.org>2010-07-11 11:58:09 +0200
committerintrigeri <intrigeri@boum.org>2010-07-11 11:58:09 +0200
commit98cc9460ac67fee606437712882cfa1e5d259729 (patch)
treec4ef67c3ab12f5b4a1cd9663cb680c94992028dc /IkiWiki/Plugin/po.pm
parentff8f6cd6b23f6b1e727649d5e5abaabea7bcf6c5 (diff)
downloadikiwiki-98cc9460ac67fee606437712882cfa1e5d259729.tar
ikiwiki-98cc9460ac67fee606437712882cfa1e5d259729.tar.gz
po: added an optional target percentage to needstranslation
Diffstat (limited to 'IkiWiki/Plugin/po.pm')
-rw-r--r--IkiWiki/Plugin/po.pm17
1 files changed, 15 insertions, 2 deletions
diff --git a/IkiWiki/Plugin/po.pm b/IkiWiki/Plugin/po.pm
index ecfbb6f78..9cb047992 100644
--- a/IkiWiki/Plugin/po.pm
+++ b/IkiWiki/Plugin/po.pm
@@ -1287,16 +1287,29 @@ sub match_currentlang ($$;@) {
sub match_needstranslation ($$;@) {
my $page=shift;
+ my $wanted=shift;
+
+ if (defined $wanted && $wanted ne "") {
+ if ($wanted !~ /^\d+$/) {
+ return IkiWiki::FailReason->new("parameter is not an integer");
+ }
+ elsif ($wanted > 100) {
+ return IkiWiki::FailReason->new("parameter is greater than 100");
+ }
+ }
+ else {
+ $wanted=100;
+ }
my $percenttranslated=IkiWiki::Plugin::po::percenttranslated($page);
if ($percenttranslated eq 'N/A') {
return IkiWiki::FailReason->new("file is not a translatable page");
}
- elsif ($percenttranslated < 100) {
+ elsif ($percenttranslated < $wanted) {
return IkiWiki::SuccessReason->new("file has $percenttranslated translated");
}
else {
- return IkiWiki::FailReason->new("file is fully translated");
+ return IkiWiki::FailReason->new("file is translated enough");
}
}