From 8f2d0e928f0c140c7575b01b5d102a9183e06fc5 Mon Sep 17 00:00:00 2001 From: Marcel de Rooy Date: Wed, 26 Jan 2011 16:16:27 +0100 Subject: [PATCH] Bug 5660: Webinstaller should check if KohaOpacLanguage exists on staff side Content-Type: text/plain; charset="utf-8" --- installer/InstallAuth.pm | 20 ++++++++++++++++---- 1 files changed, 16 insertions(+), 4 deletions(-) diff --git a/installer/InstallAuth.pm b/installer/InstallAuth.pm index 3a55b21..9353200 100644 --- a/installer/InstallAuth.pm +++ b/installer/InstallAuth.pm @@ -109,10 +109,8 @@ InstallAuth - Authenticates Koha users for Install process sub get_template_and_user { my $in = shift; my $query = $in->{'query'}; - my $language = $query->cookie('KohaOpacLanguage'); - my $path = - C4::Context->config('intrahtdocs') . "/prog/" - . ( $language ? $language : "en" ); + my $language =_get_template_language($query->cookie('KohaOpacLanguage')); + my $path = C4::Context->config('intrahtdocs'). "/prog/". $language; my $template = HTML::Template::Pro->new( filename => "$path/modules/" . $in->{template_name}, die_on_bad_params => 1, @@ -159,6 +157,20 @@ sub get_template_and_user { return ( $template, $borrowernumber, $cookie ); } +sub _get_template_language { + #verify if opac language exists in staff (bug 5660) + #conditions are 1) dir exists and 2) enabled in prefs + my ($opaclang)= @_; + my $path= C4::Context->config('intrahtdocs')."/prog/$opaclang"; + my $pref= ','.C4::Context->preference('language').','; + if(-d $path) { + if($pref =~ /,$opaclang,/ ) { + return $opaclang; + } + } + return 'en'; +} + =item checkauth ($userid, $cookie, $sessionID) = &checkauth($query, $noauth, $flagsrequired, $type); -- 1.6.0.6