diff options
-rw-r--r-- | core/ajax/translations.php (renamed from core/l10n/javascript.php) | 0 | ||||
-rw-r--r-- | l10n/da/log.po (renamed from log/l10n/da.po) | 0 | ||||
-rw-r--r-- | l10n/de/core.po (renamed from core/l10n/de.po) | 0 | ||||
-rw-r--r-- | l10n/de/log.po (renamed from log/l10n/de.po) | 0 | ||||
-rw-r--r-- | l10n/l10n.pl | 104 | ||||
-rw-r--r-- | l10n/nl/core.po (renamed from core/l10n/nl.po) | 0 | ||||
-rw-r--r-- | l10n/nl/log.po (renamed from log/l10n/messages.pot) | 0 | ||||
-rw-r--r-- | l10n/nl/settings.po (renamed from settings/l10n/nl.po) | 0 | ||||
-rw-r--r-- | l10n/templates/admin.pot (renamed from admin/l10n/messages.pot) | 0 | ||||
-rw-r--r-- | l10n/templates/core.pot (renamed from core/l10n/messages.pot) | 0 | ||||
-rw-r--r-- | l10n/templates/log.pot (renamed from log/l10n/nl.po) | 0 | ||||
-rw-r--r-- | l10n/templates/settings.pot (renamed from settings/l10n/messages.pot) | 0 | ||||
-rw-r--r-- | lib/l10n.php | 8 | ||||
-rw-r--r-- | log/l10n/log | 4 |
14 files changed, 108 insertions, 8 deletions
diff --git a/core/l10n/javascript.php b/core/ajax/translations.php index a1e84487f63..a1e84487f63 100644 --- a/core/l10n/javascript.php +++ b/core/ajax/translations.php diff --git a/log/l10n/da.po b/l10n/da/log.po index 5a88aedee94..5a88aedee94 100644 --- a/log/l10n/da.po +++ b/l10n/da/log.po diff --git a/core/l10n/de.po b/l10n/de/core.po index 19b12ca4aac..19b12ca4aac 100644 --- a/core/l10n/de.po +++ b/l10n/de/core.po diff --git a/log/l10n/de.po b/l10n/de/log.po index a901754f1a6..a901754f1a6 100644 --- a/log/l10n/de.po +++ b/l10n/de/log.po diff --git a/l10n/l10n.pl b/l10n/l10n.pl new file mode 100644 index 00000000000..5463e34e4dc --- /dev/null +++ b/l10n/l10n.pl @@ -0,0 +1,104 @@ +#!/usr/bin/perl +use strict; +use Locale::PO; +use Cwd; +use Data::Dumper; + +sub crawl{ + my( $dir ) = @_; + my @found = (); + + opendir( DIR, $dir ); + my @files = readdir( DIR ); + closedir( DIR ); + + foreach my $i ( @files ){ + next if substr( $i, 0, 1 ) eq '.'; + if( -d $dir.'/'.$i ){ + push( @found, crawl( $dir.'/'.$i )); + } + elsif( $i eq 'xgettextfiles' ){ + push( @found, $dir ); + } + } + + return @found; +} + +my $task = shift( @ARGV ); +my $place = '..'; + +die( "Usuage: l10n.pl task\ntask: read, write\n") unless $task && $place; + +# Where are i18n-files? +my @dirs = crawl( $place ); + +# Languages +mkdir( 'templates' ) unless -d 'templates'; + +my @languages = (); +opendir( DIR, '.' ); +my @files = readdir( DIR ); +closedir( DIR ); +foreach my $i ( @files ){ + push( @languages, $i ) if -d $i && substr( $i, 0, 1 ) ne '.'; +} + +# Our current position +my $whereami = cwd(); + +if( $task eq 'read' ){ + foreach my $dir ( @dirs ){ + my @temp = split( /\//, $dir ); + pop( @temp ); + my $app = pop( @temp ); + chdir( $dir ); + foreach my $language ( @languages ){ + my $output = "${whereami}/$language/$app.po"; + $output .= 't' if $language eq 'templates'; + + if( -e $output ){ + `xgettext --files-from=xgettextfiles --join-existing --output="$output" --keyword=t` + } + else{ + `xgettext --files-from=xgettextfiles --output="$output" --keyword=t` + } + } + chdir( $whereami ); + } +} +elsif( $task eq 'write' ){ + foreach my $dir ( @dirs ){ + my @temp = split( /\//, $dir ); + pop( @temp ); + my $app = pop( @temp ); + chdir( $dir ); + foreach my $language ( @languages ){ + next if $language eq 'templates'; + + my $input = "${whereami}/$language/$app.po"; + next unless -e $input; + + my $hash = Locale::PO->load_file_ashash( $input ); + + # Create array + my @strings = (); + foreach my $key ( keys( %{$hash} )){ + next if $key eq '""'; + next if $hash->{$key}->msgstr() eq '""'; + push( @strings, $hash->{$key}->msgid()." => ".$hash->{$key}->msgstr()); + } + + # Write PHP file + open( OUT, ">$lang.php" ); + print OUT "<?php \$TRANSLATIONS = array(\n"; + print OUT join( ",\n", @strings ); + print OUT "\n);\n"; + close( OUT ); + } + chdir( $whereami ); + } +} +else{ + print "unknown task!\n"; +} diff --git a/core/l10n/nl.po b/l10n/nl/core.po index 7a819e81dd8..7a819e81dd8 100644 --- a/core/l10n/nl.po +++ b/l10n/nl/core.po diff --git a/log/l10n/messages.pot b/l10n/nl/log.po index 2da2355a3ab..2da2355a3ab 100644 --- a/log/l10n/messages.pot +++ b/l10n/nl/log.po diff --git a/settings/l10n/nl.po b/l10n/nl/settings.po index 5b38f84b775..5b38f84b775 100644 --- a/settings/l10n/nl.po +++ b/l10n/nl/settings.po diff --git a/admin/l10n/messages.pot b/l10n/templates/admin.pot index c30a4454311..c30a4454311 100644 --- a/admin/l10n/messages.pot +++ b/l10n/templates/admin.pot diff --git a/core/l10n/messages.pot b/l10n/templates/core.pot index 591a1c724e3..591a1c724e3 100644 --- a/core/l10n/messages.pot +++ b/l10n/templates/core.pot diff --git a/log/l10n/nl.po b/l10n/templates/log.pot index 2da2355a3ab..2da2355a3ab 100644 --- a/log/l10n/nl.po +++ b/l10n/templates/log.pot diff --git a/settings/l10n/messages.pot b/l10n/templates/settings.pot index 705d583ee76..705d583ee76 100644 --- a/settings/l10n/messages.pot +++ b/l10n/templates/settings.pot diff --git a/lib/l10n.php b/lib/l10n.php index 729310825dd..ff0238241a6 100644 --- a/lib/l10n.php +++ b/lib/l10n.php @@ -81,9 +81,9 @@ class OC_L10N{ } } - if( file_exists( $SERVERROOT.'/l10n/l10n-'.$lang.'.php' )){ + if( file_exists( $SERVERROOT.'/core/l10n/l10n-'.$lang.'.php' )){ // Include the file, save the data from $CONFIG - include( $SERVERROOT.'/l10n/l10n-'.$lang.'.php' ); + include( $SERVERROOT.'/core/l10n/l10n-'.$lang.'.php' ); if( isset( $LOCALIZATIONS ) && is_array( $LOCALIZATIONS )){ $this->localizations = array_merge( $this->localizations, $LOCALIZATIONS ); } @@ -231,8 +231,8 @@ class OC_L10N{ global $SERVERROOT; // find the i18n dir - $i18ndir = $SERVERROOT.'/l10n/'; - if( $app != 'core' && $app != '' ){ + $i18ndir = $SERVERROOT.'/core/l10n/'; + if( $app != '' ){ // Check if the app is in the app folder if( file_exists( $SERVERROOT.'/apps/'.$app.'/l10n/' )){ $i18ndir = $SERVERROOT.'/apps/'.$app.'/l10n/'; diff --git a/log/l10n/log b/log/l10n/log deleted file mode 100644 index f70eb6af3fe..00000000000 --- a/log/l10n/log +++ /dev/null @@ -1,4 +0,0 @@ -[General] -LangCode=de -ProjectID=oc_log -TargetLangCode=de |