fdfd1cd98d322e7357e5c1bfb8194273ff466b34
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

1) ## translation metadata
2) # Revision: $Revision$
3) 
Peter Palfrader Add a note to the kind tran...

Peter Palfrader authored 17 years ago

4) # Note to translators:
5) # translating this page is probably not a good idea, and it never was intended to be translated.
6) # it contains lots of programming logic, which you would have to duplicate, and it's probably
7) # useful only to other translators which most likely will know a bit of english.
8) #
9) # Thanks for your hard work, improve the other pages instead. :)   -- weasel
10) 
Ruben Garcia Added utf8 charset

Ruben Garcia authored 15 years ago

11) #include "head.wmi" TITLE="Tor: Translation status" CHARSET="UTF-8"
Peter Palfrader also use "use warnings"

Peter Palfrader authored 18 years ago

12) #use "functions.wmi"
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

13) 
14) <div class="main-column">
15) 
16) <h2>Tor: Translation status</h2>
17) <hr />
18) 
19) <:
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

20) sub do_status(\%$$) {
21) 	my $dir = $_[1];
22) 	my $may_miss_dir = $_[2];
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

23) 	my %files;
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

24) 
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

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

Peter Palfrader authored 18 years ago

26) 	for my $lang (@LANGUAGES) {
Peter Palfrader Update translation status

Peter Palfrader authored 18 years ago

27) 		opendir(DIR, "$dir/$lang") or
28) 			$may_miss_dir or die ("Cannot opendir $dir/$lang: $!\n");
Bogdan Drozdowski Translation/mainetance upda...

Bogdan Drozdowski authored 16 years ago

29) 		my @files = grep { $_ ne '.' && $_ ne '..' &&
Roger Dingledine patch from mfr to let the t...

Roger Dingledine authored 15 years ago

30) 			$_ !~ /tor-manual/i && $_ !~ /translation-status/i && $_ =~ m/^[^.]/ && -f "$dir/$lang/$_"} readdir(DIR);
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

31) 		closedir DIR;
32) 
33) 		for my $file (@files) {
Peter Palfrader Update translation status

Peter Palfrader authored 18 years ago

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

Peter Palfrader authored 18 years ago

35) 			if ($lang eq 'en') {
Peter Palfrader Update translation status

Peter Palfrader authored 18 years ago

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

Peter Palfrader authored 18 years ago

37) 			} else {
Peter Palfrader Update translation status

Peter Palfrader authored 18 years ago

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

Peter Palfrader authored 18 years ago

39) 			};
40) 		};
41) 	};
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

42) 	my %priorities;
43) 	for my $file (keys %{$files{'en'}}) {
44) 		my $p = $files{'en'}->{$file}->{'all'}->{'Translation-Priority'};
45) 		if (defined $p) {
46) 			$priorities{$p} = 1;
47) 		};
48) 	};
49) 	my @priorities = sort {$a cmp $b} keys %priorities;
Roger Dingledine name the "other" section "n...

Roger Dingledine authored 16 years ago

50) 	push @priorities, 'none';
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

51) 
Andrew Lewman Updated the url to www.tp.o...

Andrew Lewman authored 16 years ago

52) 	my $HTMLBASE = (defined $ENV{'HTMLBASE'} ? $ENV{'HTMLBASE'} : 'https://www.torproject.org/') . ($dir eq '.' ? '' : $dir.'/');
Bogdan Drozdowski Translation/mainetance upda...

Bogdan Drozdowski authored 16 years ago

53) 
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

54) 	for my $priority (@priorities) {
55) 		for my $file (sort {$a cmp $b} keys %{$files{'en'}}) {
56) 			my $file_priority = $files{'en'}->{$file}->{'all'}->{'Translation-Priority'};
57) 			next if (defined $file_priority && $priority ne $file_priority);
Roger Dingledine name the "other" section "n...

Roger Dingledine authored 16 years ago

58) 			next if (!defined $file_priority && $priority ne 'none');
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

59) 			my $path = ($dir eq '.' ? '' : $dir.'/') . $file;
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

60) 
61) 			my $obs = file_is_obsolete($dir, 'en', $file);
62) 			my $validatorlink = '';
63) 			my $htmlfile = $file;
64) 			if ($htmlfile =~ s/\.wml/.html/) {
65) 				$validatorlink = sprintf '<br><a href="http://validator.w3.org/check?uri=%s%s.en">validator</a>',
66) 					$HTMLBASE, $htmlfile;
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

67) 			};
68) 
Simon Johansson Added file information and...

Simon Johansson authored 15 years ago

69) 			my $cell_path = sprintf '<th>%s</th>', $path;
70) 			my $cell_en = sprintf '<td%s>Revision %s%s<br>
Peter Palfrader Use svn.tpo's instead of se...

Peter Palfrader authored 16 years ago

71) 				<a href="https://svn.torproject.org/cgi-bin/viewcvs.cgi/website/trunk/%sen/%s?root=Tor&amp;view=markup">HEAD</a>
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

72) 				%s',
73) 				($obs ? ' bgcolor="#D3D3D3"' : ''),
74) 				$files{'en'}->{$file}->{'rev'},
75) 				($obs ? ' (obsolete)' :''),
76) 				($dir eq '.' ? '' : $dir.'/'),
77) 				$file,
78) 				$validatorlink;
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

79) 
Simon Johansson Added file information and...

Simon Johansson authored 15 years ago

80) 			${$_[0]}{$priority}->{$path}->{'data'} = $cell_path . $cell_en;
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

81) 			${$_[0]}{$priority}->{$path}->{'urgency'} = 0;
82) 
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

83) 			for my $lang (@LANGUAGES) {
84) 				next if $lang eq 'en';
85) 				my $color;
86) 				my $status;
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

87) 				#my $path = ($dir eq '.' ? '' : $dir.'/') . $file;
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

88) 				if ($validatorlink) {
89) 					$validatorlink = sprintf '<br><a href="http://validator.w3.org/check?uri=%s%s.%s">validator</a>',
90) 						$HTMLBASE, $htmlfile, $lang;
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

91) 				};
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

92) 				if (exists $files{$lang}->{$file}) {
93) 					my $all_info = '';
94) 					for my $key (sort {$a cmp $b} keys %{$files{$lang}->{$file}->{'all'}}) {
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

95) 						next if $key eq 'Translation-Priority';
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

96) 						$all_info .= sprintf "%s: %s<br>", $key, $files{$lang}->{$file}->{'all'}->{$key};
97) 					};
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

98) 
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

99) 					my $difflink;
100) 					if ($files{$lang}->{$file}->{'based'}  eq  $files{'en'}->{$file}->{'rev'}) {
101) 						$color='#90EE90';
102) 						$status='current';
Peter Palfrader misc translation fixes

Peter Palfrader authored 18 years ago

103) 						$difflink='';
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

104) 					} else {
105) 						$status='not current';
106) 						if ($files{$lang}->{$file}->{'based'} ne 'unknown') {
Peter Palfrader Use svn.tpo's instead of se...

Peter Palfrader authored 16 years ago

107) 							$difflink=sprintf '<br><a href="https://svn.torproject.org/cgi-bin/viewcvs.cgi/website/trunk/%sen/%s?root=Tor&amp;r1=%s&amp;r2=%s">changes in original</a>',
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

108) 								($dir eq '.' ? '' : $dir.'/'), $file, $files{$lang}->{$file}->{'based'}, $files{'en'}->{$file}->{'rev'};
109) 							$color='yellow';
110) 						} else {
111) 							$difflink='';
112) 							$color='#FFA500';
113) 						};
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

114) 
115) 						${$_[0]}{$priority}->{$path}->{'urgency'} += 1;
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

116) 					};
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

117) 
118) 					${$_[0]}{$priority}->{$path}->{'data'} .= sprintf '<td bgcolor="%s">%s<br>
Peter Palfrader Use svn.tpo's instead of se...

Peter Palfrader authored 16 years ago

119) 						<a href="https://svn.torproject.org/cgi-bin/viewcvs.cgi/website/trunk/%s%s/%s?root=Tor&amp;view=markup">HEAD</a><br>
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

120) 						%s
121) 						%s
122) 						%s</td>',
123) 						$color,
124) 						$status,
125) 						($dir eq '.' ? '' : $dir.'/'),
126) 						$lang, $file,
127) 						$all_info,
128) 						$difflink,
129) 						$validatorlink;
130) 				} else {
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

131) 					#my $path = ($dir eq '.' ? '' : $dir.'/') . $file;
Roger Dingledine if there's no translation f...

Roger Dingledine authored 16 years ago

132) 					$color=(($obs or $priority eq 'none') ?
133) 						'#90EE90' : 'red');
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

134) 					$status='missing';
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

135) 
136) 					${$_[0]}{$priority}->{$path}->{'data'} .= sprintf '<td bgcolor="%s">%s</td>', $color, $status;
137) 					${$_[0]}{$priority}->{$path}->{'urgency'} += ($obs or $priority eq 'none') ? 0 : 2;
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

138) 				};
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

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

Peter Palfrader authored 18 years ago

140) 			};
Simon Johansson Added file information and...

Simon Johansson authored 15 years ago

141) 
142) 			${$_[0]}{$priority}->{$path}->{'data'} .= $cell_en . $cell_path;
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

143) 		};
144) 	};
145) 
146) 	for my $lang (@LANGUAGES) {
147) 		next if $lang eq 'en';
148) 		if (keys %{$files{$lang}} > 0) {
Bogdan Drozdowski Translation/mainetance upda...

Bogdan Drozdowski authored 16 years ago

149) #			print "<p>";
150) 			print "<br><br>";
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

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

Peter Palfrader authored 18 years ago

152) 
153) 			print "<table border=1>\n";
154) 			print "<tr>\n";
155) 			print "<th>File</th>\n";
156) 			print "<th>Based on Revision</th>\n";
157) 			print "</tr>\n";
158) 			for my $file (sort {$a cmp $b} keys %{$files{$lang}}) {
159) 				print "<tr>";
Peter Palfrader Make translation status mor...

Peter Palfrader authored 18 years ago

160) 				printf "<th>%s</th><td>", $file;
161) 				for my $key (sort {$a cmp $b} keys %{$files{$lang}->{$file}->{'all'}}) {
162) 					printf "%s: %s<br>", $key, $files{$lang}->{$file}->{'all'}->{$key};
163) 				};
164) 				printf "</td>";
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

165) 				delete $files{$lang}->{$file};
Peter Palfrader misc translation fixes

Peter Palfrader authored 18 years ago

166) 				print "</tr>\n";
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

167) 			};
Peter Palfrader misc translation fixes

Peter Palfrader authored 18 years ago

168) 			print "</table>\n\n";
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

169) 		};
170) 	};
Peter Palfrader Update translation status

Peter Palfrader authored 18 years ago

171) };
172) 
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

173) sub sort_and_print(\%) {
174) 	my %rows = %{$_[0]};
175) 
176) 	for my $priority (sort {$a cmp $b} keys %rows) {
177) 		print "<h2>Translation priority: $priority</h2>\n";
178) 
179) 		print "<table border=1>\n";
180) 		print "<tr>\n";
181) 		print "<th>File</th>\n";
Simon Johansson Added file information and...

Simon Johansson authored 15 years ago

182) 		printf("<th>%s (%s)</th>\n", $_, $LANGUAGES{$_}) for ('en', grep({ $_ ne 'en' } @LANGUAGES), 'en');
183) 		print "<th>File</th>\n";
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

184) 		print "</tr>\n";
185) 
186) 		for my $row (sort {$rows{$priority}->{$b}->{'urgency'} <=> $rows{$priority}->{$a}->{'urgency'}} keys %{$rows{$priority}}) {
187) 			print "<tr>";
188) 			print $rows{$priority}->{$row}->{'data'};
189) 			delete ${$_[0]}{$priority}->{$row};
190) 			print "</tr>\n\n";
191) 		};
192) 
193) 		print "</table><br>\n\n\n";
194) 	};
195) };
196) 
197) # accumulate the table rows, then sort and print them
198) my %table_rows;
199) do_status(%table_rows, '.', 0);
200) do_status(%table_rows, 'docs', 1);
201) do_status(%table_rows, 'torbrowser', 1);
Roger Dingledine ok, now it builds. great.

Roger Dingledine authored 15 years ago

202) do_status(%table_rows, 'torbutton', 1);
Roger Dingledine ugh. teach me to blindly ap...

Roger Dingledine authored 15 years ago

203) do_status(%table_rows, 'tordnsel', 1);
204) do_status(%table_rows, 'projects', 1);
Roger Dingledine make the torvm stuff build

Roger Dingledine authored 15 years ago

205) do_status(%table_rows, 'torvm', 1);
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

206) #do_status(%table_data, 'eff', 1);
207) #do_status(%table_data, 'gui', 1);
208) sort_and_print(%table_rows);
209) 
Peter Palfrader Update translation status

Peter Palfrader authored 18 years ago

210)