summaryrefslogtreecommitdiff
path: root/debian/update_languages
diff options
context:
space:
mode:
Diffstat (limited to 'debian/update_languages')
-rwxr-xr-xdebian/update_languages52
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+&amp;(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;
+}