diff options
author | intrigeri <intrigeri@boum.org> | 2010-07-11 11:58:09 +0200 |
---|---|---|
committer | intrigeri <intrigeri@boum.org> | 2010-07-11 11:58:09 +0200 |
commit | 98cc9460ac67fee606437712882cfa1e5d259729 (patch) | |
tree | c4ef67c3ab12f5b4a1cd9663cb680c94992028dc /IkiWiki/Plugin | |
parent | ff8f6cd6b23f6b1e727649d5e5abaabea7bcf6c5 (diff) |
po: added an optional target percentage to needstranslation
Diffstat (limited to 'IkiWiki/Plugin')
-rw-r--r-- | IkiWiki/Plugin/po.pm | 17 |
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"); } } |