Beim Scannen von Dateien auch ein "require" mit "bin/mozilla" als Pfad direkt erkennen.
[kivitendo-erp.git] / locale / de / locales.pl
index 119dfe9..151db6f 100755 (executable)
@@ -15,6 +15,7 @@ $| = 1;
 $basedir  = "../..";
 $bindir   = "$basedir/bin/mozilla";
 $dbupdir  = "$basedir/sql/Pg-upgrade";
+$dbupdir2 = "$basedir/sql/Pg-upgrade2";
 $menufile = "menu.ini";
 $submitsearch = qr/type\s*=\s*[\"\']?submit/i;
 
@@ -24,7 +25,7 @@ foreach $item (@ARGV) {
 }
 
 opendir DIR, "$bindir" or die "$!";
-@progfiles = grep { /\.pl/; !/(_|^\.)/ } readdir DIR;
+@progfiles = grep { /\.pl$/; !/(_|^\.)/ } readdir DIR;
 seekdir DIR, 0;
 @customfiles = grep /_/, readdir DIR;
 closedir DIR;
@@ -45,6 +46,10 @@ opendir DIR, $dbupdir or die "$!";
 @dbplfiles = grep { /\.pl$/ } readdir DIR;
 closedir DIR;
 
+opendir DIR, $dbupdir2 or die "$!";
+@dbplfiles2 = grep { /\.pl$/ } readdir DIR;
+closedir DIR;
+
 # slurp the translations in
 if (-f 'all') {
   require "all";
@@ -59,6 +64,7 @@ if (-f 'all') {
 
 map({ handle_file($_, $bindir); } @progfiles);
 map({ handle_file($_, $dbupdir); } @dbplfiles);
+map({ handle_file($_, $dbupdir2); } @dbplfiles2);
 
 sub handle_file {
   my ($file, $dir) = @_;
@@ -99,21 +105,20 @@ sub handle_file {
 
   foreach $text (keys %$missing) {
     if ($locale{$text} || $htmllocale{$text}) {
-      unless ($self{texts}{$text}) {
-        $self{texts}{$text} = $missing->{$text};
+      unless ($self->{texts}{$text}) {
+        $self->{texts}{$text} = $missing->{$text};
       }
     }
   }
 
-  my $localefile = $dir eq $bindir ? $file : "dbupgrade";
-  open FH, ">$localefile" or die "$! : $localefile";
+  open FH, ">$file" or die "$! : $file";
 
-  print FH q|$self{texts} = {
+  print FH q|$self->{texts} = {
 |;
 
   foreach $key (sort keys %locale) {
-    if ($self{texts}{$key}) {
-      $text = $self{texts}{$key};
+    if ($self->{texts}{$key}) {
+      $text = $self->{texts}{$key};
     } else {
       $text = $key;
     }
@@ -131,7 +136,7 @@ sub handle_file {
 
   print FH q|};
 
-$self{subs} = {
+$self->{subs} = {
 |;
 
   foreach $key (sort keys %subrt) {
@@ -142,7 +147,7 @@ $self{subs} = {
   }
 
   foreach $key (sort keys %submit) {
-    $text = ($self{texts}{$key}) ? $self{texts}{$key} : $key;
+    $text = ($self->{texts}{$key}) ? $self->{texts}{$key} : $key;
     $text =~ s/'/\\'/g;
     $text =~ s/\\$/\\\\/;
 
@@ -181,11 +186,11 @@ print FH q|# These are all the texts to build the translations files.
 # you can add the translation in this file or in the 'missing' file
 # run locales.pl from this directory to rebuild the translation files
 
-$self{texts} = {
+$self->{texts} = {
 |;
 
 foreach $key (sort keys %alllocales) {
-  $text = $self{texts}{$key};
+  $text = $self->{texts}{$key};
 
   $count++;
 
@@ -323,6 +328,7 @@ sub scanfile {
         my $newfile = $&;
         $newfile =~ s/require\s+\W//;
         $newfile =~ s/\$form->{path}\///;
+        $newfile =~ s|bin/mozilla||;
 #         &scanfile("$bindir/$newfile", 0, $scanned_files);
          $cached{$file}{scan}{"$bindir/$newfile"} = 1;
       } elsif (/use\s+SL::(.*?);/) {
@@ -552,7 +558,7 @@ sub converthtmlfile {
           $copying = 0;
           $alllocales{$text} = 1;
           $htmllocale{$text} = 1;
-          print(OUT $self{"texts"}{$text} || $text);
+          print(OUT $self->{"texts"}{$text} || $text);
           print(OUT "\n") if ("" eq $line);
           $text = "";