diff options
Diffstat (limited to 'debian/update_languages')
| -rwxr-xr-x | debian/update_languages | 52 | 
1 files changed, 52 insertions, 0 deletions
| diff --git a/debian/update_languages b/debian/update_languages new file mode 100755 index 0000000..d9fa579 --- /dev/null +++ b/debian/update_languages @@ -0,0 +1,52 @@ +#!/usr/bin/perl -w +use strict; + +die "Must be executed in the 'debian' subdir" unless -d 'upstream'; + +`rm -f upstream/phpbb3_l10n-*.info`; + +my @lists; +my @langs; + +my $index='https://www.phpbb.com/languages/index.php'; +my $trans='/customise/db/translation/'; +my $downl='https://www.phpbb.com/customise/db/download/'; + +# Get language pages and other list pages +open DOWNLOADS, "wget -q -O- $index|"; +while (<DOWNLOADS>) { +	push @langs, $1 if m,<a href="$trans(.+?)/\?sid=\w+?">,; +	push @lists, $1 if m,<a href="\./\.\./languages/index.php\?sid=\w+&(start=\d+)" role="button">,; +} +close DOWNLOADS; + +# Get other language pages +for (@lists) { +	open DOWNLOADS, "wget -q -O- $index\?$_|"; +	while (<DOWNLOADS>) { +		push @langs, $1 if m,<a href="$trans(.+?)/\?sid=\w+?">, +	} +	close DOWNLOADS; +} + +# Get information about language pack +for (@langs) { +	open DOWNLOADS, "wget -q -O- https://www.phpbb.com/customise/db/translation/$_|"; +	my ($url,$code,$md5); +	$md5 =''; +	while (<DOWNLOADS>) { +		$url = $1 if m,<a class="download-button" href="($downl\d+)\?sid=\w+",; +		$md5 = 0 if m,<dt>MD5 checksum:</dt>,; +		if ($md5 eq 0) { +			$md5 = $1 if m,<dd>(\w+)</dd>,; +		} +		$code = $1 if m,<strong>ISO Code</strong> (.+)\n,; +	} +	close DOWNLOADS; +	open INFO, "> upstream/phpbb3_l10n-$code.info"; +	print INFO "Url=$url\n"; +	print INFO "Md5=$md5\n"; +	print INFO "Copyright=GPL-2\n"; +	print INFO "Include=yes\n"; +	close INFO; +} | 
