diff options
author | Thomas Huriaux <thuriaux> | 2005-04-21 09:55:50 +0000 |
---|---|---|
committer | Thomas Huriaux <thuriaux> | 2005-04-21 09:55:50 +0000 |
commit | 203f58778681fb2283d0ccece900e8ec19a2293e (patch) | |
tree | afdab879c36bc50597d9163b2ec133c1d9efc1bd /stattrans.pl | |
parent | 66fd096a2150e9da3c93eca2750ceb1835169dc4 (diff) |
Fix the "no longer exists" bug
Check if translation version is not too high
Assume english is the original in case of missing translation-check header
CVS version numbers
stattrans.pl: 1.64 -> 1.65
Diffstat (limited to 'stattrans.pl')
-rwxr-xr-x | stattrans.pl | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/stattrans.pl b/stattrans.pl index 07ba83f6aa9..e19bdf75ba3 100755 --- a/stattrans.pl +++ b/stattrans.pl @@ -125,8 +125,14 @@ sub getwmlfiles } else { $version{"$lang/$file"} = $altcvs->revision($f); if (!$transcheck->revision()) { - $original{"english/$file"} = $lang; - $transversion{"english/$file"} ||= "1.1"; + $transcheckenglish = Webwml::TransCheck->new("english/$file"); + if (!$transcheckenglish->revision() and (-e "english/$file")) { + $transversion{"$lang/$file"} = "1.1"; + $original{"$lang/$file"} = "english"; + } else { + $original{"english/$file"} = $lang; + $transversion{"english/$file"} ||= "1.1"; + } } } if ($transcheck->maintainer()) { @@ -174,12 +180,14 @@ sub check_translation if ( $major_number != $major_translated_number ) { return "This translation is too out of date"; + } elsif ( $last_number - $last_translated_number < 0 ) { + return "Wrong translation version"; } elsif ( $last_number - $last_translated_number >= $max_versions ) { return "This translation is too out of date"; } elsif ( $last_number - $last_translated_number >= $min_versions ) { return "The original is newer than this translation"; } - } elsif ( !$version && $transversion) { + } elsif ( !$version && $translation) { return "The original no longer exists"; } return ""; @@ -285,8 +293,12 @@ foreach $lang (@search_in) { $o_body .= sprintf "<td>%s</td>", $transversion{"$lang/$file"}; $o_body .= sprintf "<td>%s</td>", $version{"$orig/$file"}; $o_body .= sprintf "<td>%s</td>", $msg; - $o_body .= sprintf "<td> <a href=\"http://cvs.debian.org/webwml/$orig/%s.diff\?r1=%s\&r2=%s\&cvsroot=webwml\&diff_format=%s\">%s -> %s</a></td>", $file, $transversion{"$lang/$file"}, $version{"$orig/$file"}, $config{'difftype'}, $transversion{"$lang/$file"}, $version{"$orig/$file"}; - $o_body .= sprintf "<td><a href=\"http://cvs.debian.org/webwml/$orig/%s?cvsroot=webwml#rev%s\">[L]</a></td>", $file, $version{"$orig/$file"}; + if ($msg eq "Wrong translation version" || $msg eq "The original no longer exists") { + $o_body .= "<td></td><td></td>"; + } else { + $o_body .= sprintf "<td> <a href=\"http://cvs.debian.org/webwml/$orig/%s.diff\?r1=%s\&r2=%s\&cvsroot=webwml\&diff_format=%s\">%s -> %s</a></td>", $file, $transversion{"$lang/$file"}, $version{"$orig/$file"}, $config{'difftype'}, $transversion{"$lang/$file"}, $version{"$orig/$file"}; + $o_body .= sprintf "<td><a href=\"http://cvs.debian.org/webwml/$orig/%s?cvsroot=webwml#rev%s\">[L]</a></td>", $file, $version{"$orig/$file"}; + } $o_body .= sprintf "<td align=center>%s</td>", $maintainer{"$lang/$file"} || ""; $o_body .= "</tr>\n"; $outdated{$lang}++; |