From 304d152163195224e1c9cea7a30e6c8fe4522ac2 Mon Sep 17 00:00:00 2001 From: Bernardo Gonzalez Kriegel Date: Sun, 27 Apr 2014 17:56:23 -0300 Subject: [PATCH] Bug 12017 - 8 - Remove use of getAllLanguages from installer getAllLanguages is only used on installer/install.pl, and some tests. Result parameters are passed to C4/Install.pm, but its use is futile, language check on Installer.pm uses parameters that are not present on return value of getAllLanguages, and returned value fwk_code is undefined To test: 1. Apply the patch 2. Do translated install (eg using de-DE or es-ES) a. translate first, b. then create a new database, c. grant permissions, d. change koha-conf to use new db, e. reload staff, f. proceed to web install, g. select translated language, h. use marc21, i. finish, 3. Login and check that marc frameworks are translated The translated install must proceed without problems. Removed only the very first occurence of template parameter fwk_language because of it's null value. --- C4/Installer.pm | 20 +++----------------- installer/install.pl | 7 ++----- 2 files changed, 5 insertions(+), 22 deletions(-) diff --git a/C4/Installer.pm b/C4/Installer.pm index 2add0e8..f573fec 100644 --- a/C4/Installer.pm +++ b/C4/Installer.pm @@ -32,11 +32,10 @@ C4::Installer use C4::Installer; my $installer = C4::Installer->new(); - my $all_languages = getAllLanguages(); my $error = $installer->load_db_schema(); my $list; #fill $list with list of sql files - my ($fwk_language, $error_list) = $installer->load_sql_in_order($all_languages, @$list); + my $list = $installer->load_sql_in_order(@$list); $installer->set_version_syspref(); $installer->set_marcflavour_syspref('MARC21'); @@ -258,7 +257,7 @@ sub load_db_schema { =head2 load_sql_in_order - my ($fwk_language, $list) = $installer->load_sql_in_order($all_languages, @sql_list); + my $list = $installer->load_sql_in_order(@sql_list); Given a list of SQL scripts supplied in C<@sql_list>, loads each of them into the database and sets the FrameworksLoaded system preference to names @@ -277,14 +276,10 @@ The return value C<$list> is an arrayref containing a hashref for each a list of hashrefs containing a list of each script load and any error messages associated with the loading of each script. -B The C<$fwk_language> code probably doesn't belong and needs to be -moved to a different method. - =cut sub load_sql_in_order { my $self = shift; - my $all_languages = shift; my @sql_list = @_; my $lang; @@ -322,15 +317,6 @@ sub load_sql_in_order { chop $systempreference; my @list; map { push @list, { "level" => $_, "fwklist" => $hashlevel{$_} } } keys %hashlevel; - my $fwk_language; - for my $each_language (@$all_languages) { - - # warn "CODE".$each_language->{'language_code'}; - # warn "LANG:".$lang; - if ( $lang eq $each_language->{'language_code'} ) { - $fwk_language = $each_language->{language_locale_name}; - } - } my $updateflag = $self->{'dbh'}->do( "UPDATE systempreferences set value=\"$systempreference\" where variable='FrameworksLoaded'" @@ -342,7 +328,7 @@ sub load_sql_in_order { my $rq = $self->{'dbh'}->prepare($string); $rq->execute; } - return ($fwk_language, \@list); + return \@list; } =head2 set_marcflavour_syspref diff --git a/installer/install.pl b/installer/install.pl index c9c1361..b7167be 100755 --- a/installer/install.pl +++ b/installer/install.pl @@ -11,7 +11,7 @@ use IPC::Cmd; use C4::Context; use C4::Output; use C4::Templates; -use C4::Languages qw(getAllLanguages getTranslatedLanguages); +use C4::Languages qw(getTranslatedLanguages); use C4::Installer; my $query = new CGI; @@ -20,8 +20,6 @@ my $step = $query->param('step'); my $language = $query->param('language'); my ( $template, $loggedinuser, $cookie ); -my $all_languages = getAllLanguages(); - if ( defined($language) ) { C4::Templates::setlanguagecookie( $query, $language, "install.pl?step=1" ); } @@ -201,9 +199,8 @@ elsif ( $step && $step == 3 ) { # 1ST install, 3rd sub-step : insert the SQL files the user has selected # - my ($fwk_language, $list) = $installer->load_sql_in_order($all_languages, $query->param('framework')); + my $list = $installer->load_sql_in_order($query->param('framework')); $template->param( - "fwklanguage" => $fwk_language, "list" => $list ); $template->param( "$op" => 1 ); -- 1.7.9.5