Bug 7597 - Part 2 - move sub writeoff to C4::Accounts
[koha_gimpoz] / misc / translator / LangInstaller.pm
index 010b4a7..c8a204a 100644 (file)
@@ -70,11 +70,11 @@ sub new {
     $self->{interface} = {
         opac => {
             dir    => $context->config('opachtdocs') . '/prog',
-            suffix => '-i-opac-t-prog-v-3002000.po',
+            suffix => '-i-opac-t-prog-v-3006000.po',
         },
         intranet => {
             dir    => $context->config('intrahtdocs') . '/prog',
-            suffix => '-i-staff-t-prog-v-3002000.po',
+            suffix => '-i-staff-t-prog-v-3006000.po',
         }
     };
 
@@ -86,7 +86,7 @@ sub po_filename {
     my $self = shift;
 
     my $context    = C4::Context->new;
-    my $trans_path = $context->config('intranetdir') . '/misc/translator/po';
+    my $trans_path = $Bin . '/po';
     my $trans_file = "$trans_path/" . $self->{lang} . "-pref.po";
     return $trans_file;
 }
@@ -131,7 +131,7 @@ sub add_prefs {
                     }
                 }
             }
-            elsif ( $element ) {
+            elsif ( $element && $pref_name ) {
                 $self->po_append( $self->{file} . "#$pref_name# $element", $comment );
             }
         }
@@ -173,7 +173,7 @@ sub update_tab_prefs {
                     }
                 }
             }
-            elsif ( $element ) {
+            elsif ( $element && $pref_name ) {
                 my $id = $self->{file} . "#$pref_name# $element";
                 my $text = $self->get_trans_text( $id );
                 $p->[$i] = $text if $text;
@@ -189,6 +189,8 @@ sub get_po_from_prefs {
     for my $file ( @{$self->{pref_files}} ) {
         my $pref = LoadFile( $self->{path_pref_en} . "/$file" );
         $self->{file} = $file;
+        # Entries for tab titles
+        $self->po_append( $self->{file}, $_ ) for keys %$pref;
         while ( my ($tab, $tab_content) = each %$pref ) {
             if ( ref($tab_content) eq 'ARRAY' ) {
                 $self->add_prefs( $tab, $tab_content );
@@ -254,6 +256,13 @@ sub install_prefs {
     for my $file ( @{$self->{pref_files}} ) {
         my $pref = LoadFile( $self->{path_pref_en} . "/$file" );
         $self->{file} = $file;
+        # First, keys are replaced (tab titles)
+        $pref = do {
+            my %pref = map { 
+                $self->get_trans_text( $self->{file} ) || $_ => $pref->{$_}
+            } keys %$pref;
+            \%pref;
+        };
         while ( my ($tab, $tab_content) = each %$pref ) {
             if ( ref($tab_content) eq 'ARRAY' ) {
                 $self->update_tab_prefs( $pref, $tab_content );
@@ -358,9 +367,9 @@ sub install {
 sub get_all_langs {
     my $self = shift;
     opendir( my $dh, $self->{path_po} );
-    my @files = grep { $_ =~ /-i-opac-t-prog-v-3002000.po$/ }
+    my @files = grep { $_ =~ /-i-opac-t-prog-v-3006000.po$/ }
         readdir $dh;
-    @files = map { $_ =~ s/-i-opac-t-prog-v-3002000.po$//; $_ } @files;
+    @files = map { $_ =~ s/-i-opac-t-prog-v-3006000.po$//; $_ } @files;
 }