X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=admin%2Fpreferences.pl;h=09d648f8c40ff8ff6fcc5b221b21da0e29a16045;hb=9bc53a0fccc3b673dca43791ebfcb53fd6e0a9ee;hp=f4d1823edaebf29d6de0a46c9ba38bb40bef5276;hpb=7cdea5de355e853f25300821cc641672443177de;p=koha-ffzg.git diff --git a/admin/preferences.pl b/admin/preferences.pl index f4d1823eda..09d648f8c4 100755 --- a/admin/preferences.pl +++ b/admin/preferences.pl @@ -28,6 +28,7 @@ use C4::Languages qw(getTranslatedLanguages); use C4::ClassSource; use C4::Log; use C4::Output; +use C4::Templates; use C4::Budgets qw(GetCurrency); use File::Spec; use IO::File; @@ -41,7 +42,7 @@ our $lang; sub GetTab { my ( $input, $tab ) = @_; - my $tab_template = C4::Output::gettemplate( 'admin/preferences/' . $tab . '.pref', 'intranet', $input ); + my $tab_template = C4::Templates::gettemplate( 'admin/preferences/' . $tab . '.pref', 'intranet', $input ); my $active_currency = GetCurrency(); my $local_currency; @@ -174,7 +175,7 @@ sub TransformPrefsToHTML { sub _get_pref_files { my ( $input, $open_files ) = @_; - my ( $htdocs, $theme, $lang, undef ) = C4::Output::_get_template_file( 'admin/preferences/admin.pref', 'intranet', $input ); + my ( $htdocs, $theme, $lang, undef ) = C4::Templates::_get_template_file( 'admin/preferences/admin.pref', 'intranet', $input ); my %results; @@ -215,11 +216,10 @@ sub SearchPrefs { foreach my $piece ( @$line ) { if ( ref( $piece ) eq 'HASH' ) { - if ( $piece->{'pref'} =~ /^$searchfield$/i ) { - my ( undef, $LINES ) = TransformPrefsToHTML( $data, $searchfield ); - - return { search_jumped => 1, tab => $tab_name, tab_title => $title, LINES => $LINES }; - } elsif ( matches( $piece->{'pref'}, \@terms) ) { + if ( !$piece->{'pref'} ){ + next; + } + if ( matches( $piece->{'pref'}, \@terms) ) { $matched = 1; } elsif ( ref( $piece->{'choices'} ) eq 'HASH' && grep( { $_ && matches( $_, \@terms ) } values( %{ $piece->{'choices'} } ) ) ) { $matched = 1; @@ -248,7 +248,7 @@ sub SearchPrefs { sub matches { my ( $text, $terms ) = @_; - return !grep( { $text !~ /$_/i } @$terms ); + if ( $text ) { return !grep( { $text !~ /$_/i } @$terms ); } } my $dbh = C4::Context->dbh; @@ -259,7 +259,7 @@ my ( $template, $borrowernumber, $cookie ) = get_template_and_user( query => $input, type => "intranet", authnotrequired => 0, - flagsrequired => { parameters => 1 }, + flagsrequired => { parameters => 'parameters_remaining_permissions' }, debug => 1, } ); @@ -295,7 +295,10 @@ my @TABS; if ( $op eq 'search' ) { my $searchfield = $input->param( 'searchfield' ); - $searchfield =~ s/[^a-zA-Z0-9_ -]//g; + $searchfield =~ s/\p{IsC}//g; + $searchfield =~ s/\s+/ /; + $searchfield =~ s/^\s+//; + $searchfield =~ s/\s+$//; $template->param( searchfield => $searchfield );