View | Details | Raw Unified | Return to bug 16088
Collapse All | Expand All

(-)a/C4/Languages.pm (-8 / +4 lines)
Lines 26-31 use Carp; Link Here
26
use CGI;
26
use CGI;
27
use List::MoreUtils qw( any );
27
use List::MoreUtils qw( any );
28
use C4::Context;
28
use C4::Context;
29
use Koha::CGI;
29
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $DEBUG);
30
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $DEBUG);
30
31
31
eval {
32
eval {
Lines 570-576 sub accept_language { Link Here
570
sub getlanguage {
571
sub getlanguage {
571
    my ($cgi) = @_;
572
    my ($cgi) = @_;
572
573
573
    $cgi //= new CGI;
574
    my $interface = C4::Context->interface;
574
    my $interface = C4::Context->interface;
575
    my $theme = C4::Context->preference( ( $interface eq 'opac' ) ? 'opacthemes' : 'template' );
575
    my $theme = C4::Context->preference( ( $interface eq 'opac' ) ? 'opacthemes' : 'template' );
576
    my $language;
576
    my $language;
Lines 584-600 sub getlanguage { Link Here
584
        @languages = split /,/, $preference_value;
584
        @languages = split /,/, $preference_value;
585
    }
585
    }
586
586
587
    # Chose language from the URL
587
    # Chose language from the URL or the cookie
588
    $language = $cgi->param( 'language' );
588
    $language = $cgi ? $cgi->param( 'language' ) || $cgi->cookie('KohaOpacLanguage') : Koha::CGI->language;
589
    $language =~ s/[^a-zA-Z_-]*//; # sanitize cookie
589
    if ( defined $language && any { $_ eq $language } @languages) {
590
    if ( defined $language && any { $_ eq $language } @languages) {
590
        return $language;
591
        return $language;
591
    }
592
    }
592
593
593
    # cookie
594
    if ($language = $cgi->cookie('KohaOpacLanguage') ) {
595
        $language =~ s/[^a-zA-Z_-]*//; # sanitize cookie
596
    }
597
598
    # HTTP_ACCEPT_LANGUAGE
594
    # HTTP_ACCEPT_LANGUAGE
599
    if ( !$language && $ENV{HTTP_ACCEPT_LANGUAGE} ) {
595
    if ( !$language && $ENV{HTTP_ACCEPT_LANGUAGE} ) {
600
        $language = accept_language( $ENV{HTTP_ACCEPT_LANGUAGE},
596
        $language = accept_language( $ENV{HTTP_ACCEPT_LANGUAGE},
(-)a/catalogue/search.pl (-3 / +2 lines)
Lines 160-167 use URI::Escape; Link Here
160
my $DisplayMultiPlaceHold = C4::Context->preference("DisplayMultiPlaceHold");
160
my $DisplayMultiPlaceHold = C4::Context->preference("DisplayMultiPlaceHold");
161
# create a new CGI object
161
# create a new CGI object
162
# FIXME: no_undef_params needs to be tested
162
# FIXME: no_undef_params needs to be tested
163
use CGI qw('-no_undef_params' -utf8 );
163
use Koha::CGI qw('-no_undef_params' -utf8 );
164
my $cgi = new CGI;
164
my $cgi = Koha::CGI->new;
165
165
166
# decide which template to use
166
# decide which template to use
167
my $template_name;
167
my $template_name;
168
- 

Return to bug 16088