913c2101fd7a8e2e308aad5a02445e8c95bd8665
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

1) ## translation metadata
2) # Revision: $Revision$
3) 
4) #include "head.wmi" TITLE="Translation status"
5) 
6) <div class="main-column">
7) 
8) <h2>Tor: Translation status</h2>
9) <hr />
10) 
11) <:
12) 	my %files;
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

13) 	my @warnings;
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

14) 	for my $lang (@LANGUAGES) {
15) 		opendir(DIR, $lang) or die ("Cannot opendir $lang: $!\n");
16) 		my @files = grep { $_ ne '.' && $_ ne '..' && $_ =~ m/^[^.]/ && -f $lang.'/'.$_} readdir(DIR);
17) 		closedir DIR;
18) 
19) 		for my $file (@files) {
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

20) 			$files{$lang}->{$file}->{'all'} = getMetadata($lang.'/'.$file);
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

21) 			if ($lang eq 'en') {
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

22) 				$files{$lang}->{$file}->{'rev'} = translation_get_masterrevision_file($file);
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

23) 			} else {
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

24) 				$files{$lang}->{$file}->{'based'} = translation_get_basedonrevision_langfile($lang, $file);
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

25) 			};
26) 		};
27) 	};
28) 
29) 	print "<table border=1>\n";
30) 	print "<tr>\n";
31) 	print "<th>File</th>\n";
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

32) 	printf("<th>%s (%s)</th>\n", $_, $LANGUAGES{$_}) for (@LANGUAGES);
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

33) 	print "</tr>\n";
34) 	for my $file (sort {$a cmp $b} keys %{$files{'en'}}) {
Peter Palfrader Do not mark missing transla...

Peter Palfrader authored 18 years ago

35) 		my $obs = file_is_obsolete('en', $file);
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

36) 		print "<tr>";
37) 		printf "<th>%s</th>", $file;
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

38) 		printf '<td%s>Revision %s%s<br>
39) 		        <a href="http://cvs.seul.org/viewcvs/viewcvs.cgi/website/en/%s?root=tor&view=markup">HEAD</a></td>',
40) 			($obs ? ' bgcolor="lightgrey"' : ''),
41) 			$files{'en'}->{$file}->{'rev'},
42) 			($obs ? ' (obsolete)' :''),
43) 			$file;
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

44) 		for my $lang (@LANGUAGES) {
45) 			next if $lang eq 'en';
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

46) 			my $color;
47) 			my $status;
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

48) 			if (exists $files{$lang}->{$file}) {
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

49) 				my $all_info = '';
50) 				for my $key (sort {$a cmp $b} keys %{$files{$lang}->{$file}->{'all'}}) {
51) 					$all_info .= sprintf "%s: %s<br>", $key, $files{$lang}->{$file}->{'all'}->{$key};
52) 				};
53) 
54) 				my $difflink;
55) 				if ($files{$lang}->{$file}->{'based'}  eq  $files{'en'}->{$file}->{'rev'}) {
56) 					$color='lightgreen';
57) 					$status='current';
58) 					$difflink='';
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

59) 				} else {
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

60) 					$color='yellow';
61) 					$status='not current';
62) 					if ($files{$lang}->{$file} ne 'unknown') {
63) 						$difflink=sprintf '<br><a href="http://cvs.seul.org/viewcvs/viewcvs.cgi/website/en/%s?root=tor&r1=%s&r2=%s">changes in original</a>',
64) 							$file, $files{$lang}->{$file}->{'based'}, $files{'en'}->{$file}->{'rev'};
65) 					};
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

66) 				};
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

67) 				printf '<td bgcolor="%s">%s<br>
68) 					<a href="http://cvs.seul.org/viewcvs/viewcvs.cgi/website/%s/%s?root=tor&view=markup">HEAD</a><br>
69) 					%s
70) 					%s</td>',
71) 					$color,
72) 					$status,
73) 					$lang, $file,
74) 					$all_info,
75) 					$difflink;
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

76) 			} else {
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

77) 				$color=($obs ? 'lightgreen' : 'red');
78) 				$status='missing';
79) 				printf '<td bgcolor="%s">%s</td>', $color, $status;
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

80) 			};
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

81) 			delete $files{$lang}->{$file};
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

82) 		};
83) 		print "</tr>";
84) 	};
85) 	print "</table>\n";
86) 
87) 	for my $lang (@LANGUAGES) {
88) 		next if $lang eq 'en';
89) 		if (keys %{$files{$lang}} > 0) {
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

90) 			print "<p>";
91) 			printf "<h2>Additional files in %s (%s)</h2>\n", $lang, $LANGUAGES{$lang};
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

92) 
93) 			print "<table border=1>\n";
94) 			print "<tr>\n";
95) 			print "<th>File</th>\n";
96) 			print "<th>Based on Revision</th>\n";
97) 			print "</tr>\n";
98) 			for my $file (sort {$a cmp $b} keys %{$files{$lang}}) {
99) 				print "<tr>";
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

100) 				printf "<th>%s</th><td>", $file;
101) 				for my $key (sort {$a cmp $b} keys %{$files{$lang}->{$file}->{'all'}}) {
102) 					printf "%s: %s<br>", $key, $files{$lang}->{$file}->{'all'}->{$key};
103) 				};
104) 				printf "</td>";