cfde14860aab35e0c02d9f55385a8b7989ec17cb
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>
Pei Hanru The script for viewing chan...

Pei Hanru authored 15 years ago

71) 				<a href="https://svn.torproject.org/cgi-bin/viewvc.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;
Roger Dingledine hm. even though it's perl,...

Roger Dingledine authored 15 years ago

81) 			# Assign high urgency if it's *.wmi, else init to 0
Roger Dingledine hack translation-status to...

Roger Dingledine authored 15 years ago

82) 			if ($file =~ /.wmi$/) {
83) 			  ${$_[0]}{$priority}->{$path}->{'urgency'} = 1000;
84) 			} else {
85) 			  ${$_[0]}{$priority}->{$path}->{'urgency'} = 0;
86) 			}
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

87) 
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

88) 			for my $lang (@LANGUAGES) {
89) 				next if $lang eq 'en';
90) 				my $color;
91) 				my $status;
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

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

Peter Palfrader authored 16 years ago

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

Peter Palfrader authored 18 years ago

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

Peter Palfrader authored 16 years ago

97) 				if (exists $files{$lang}->{$file}) {
98) 					my $all_info = '';
99) 					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

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

Peter Palfrader authored 16 years ago

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

Peter Palfrader authored 18 years ago

103) 
Peter Palfrader Implement translation prior...

Peter Palfrader authored 16 years ago

104) 					my $difflink;
105) 					if ($files{$lang}->{$file}->{'based'}  eq  $files{'en'}->{$file}->{'rev'}) {
106) 						$color='#90EE90';
107) 						$status='current';
Peter Palfrader misc translation fixes

Peter Palfrader authored 18 years ago

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

Peter Palfrader authored 16 years ago

109) 					} else {
110) 						$status='not current';
111) 						if ($files{$lang}->{$file}->{'based'} ne 'unknown') {
Pei Hanru The script for viewing chan...

Pei Hanru authored 15 years ago

112) 							$difflink=sprintf '<br><a href="https://svn.torproject.org/cgi-bin/viewvc.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

113) 								($dir eq '.' ? '' : $dir.'/'), $file, $files{$lang}->{$file}->{'based'}, $files{'en'}->{$file}->{'rev'};
114) 							$color='yellow';
115) 						} else {
116) 							$difflink='';
117) 							$color='#FFA500';
118) 						};
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

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

Peter Palfrader authored 18 years ago

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

Simon Johansson authored 15 years ago

122) 
123) 					${$_[0]}{$priority}->{$path}->{'data'} .= sprintf '<td bgcolor="%s">%s<br>
Pei Hanru The script for viewing chan...

Pei Hanru authored 15 years ago

124) 						<a href="https://svn.torproject.org/cgi-bin/viewvc.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

125) 						%s
126) 						%s
127) 						%s</td>',
128) 						$color,
129) 						$status,
130) 						($dir eq '.' ? '' : $dir.'/'),
131) 						$lang, $file,
132) 						$all_info,
133) 						$difflink,
134) 						$validatorlink;
135) 				} else {
Simon Johansson translation-status is now s...

Simon Johansson authored 15 years ago

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

Roger Dingledine authored 16 years ago

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

Peter Palfrader authored 16 years ago

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

Simon Johansson authored 15 years ago

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

Peter Palfrader authored 18 years ago

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

Peter Palfrader authored 16 years ago

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

Peter Palfrader authored 18 years ago

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

Simon Johansson authored 15 years ago

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

Peter Palfrader authored 18 years ago

148) 		};
149) 	};
150) 
151) 	for my $lang (@LANGUAGES) {
152) 		next if $lang eq 'en';
153) 		if (keys %{$files{$lang}} > 0) {
Bogdan Drozdowski Translation/mainetance upda...

Bogdan Drozdowski authored 16 years ago

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

Peter Palfrader authored 18 years ago

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

Peter Palfrader authored 18 years ago

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

Peter Palfrader authored 18 years ago

165) 				printf "<th>%s</th><td>", $file;
166) 				for my $key (sort {$a cmp $b} keys %{$files{$lang}->{$file}->{'all'}}) {
167) 					printf "%s: %s<br>", $key, $files{$lang}->{$file}->{'all'}->{$key};
168) 				};
169) 				printf "</td>";
Peter Palfrader Add translation-status page

Peter Palfrader authored 18 years ago

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

Peter Palfrader authored 18 years ago

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

Peter Palfrader authored 18 years ago

172) 			};
Peter Palfrader misc translation fixes

Peter Palfrader authored 18 years ago

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

Peter Palfrader authored 18 years ago

174) 		};
175) 	};
Peter Palfrader Update translation status

Peter Palfrader authored 18 years ago

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

Simon Johansson authored 15 years ago

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

Simon Johansson authored 15 years ago

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

Simon Johansson authored 15 years ago

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

Roger Dingledine authored 15 years ago

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

Roger Dingledine authored 15 years ago

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

Roger Dingledine authored 15 years ago

210) do_status(%table_rows, 'torvm', 1);
Roger Dingledine add the press directory to...

Roger Dingledine authored 15 years ago

211) do_status(%table_rows, 'press', 1);
Roger Dingledine when we have gettor pages w...

Roger Dingledine authored 15 years ago

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

Simon Johansson authored 15 years ago

213) #do_status(%table_data, 'eff', 1);
214) #do_status(%table_data, 'gui', 1);
215) sort_and_print(%table_rows);
216) 
Peter Palfrader Update translation status

Peter Palfrader authored 18 years ago

217)