@@ -, +, @@ server searches. I) Apply the patch Keyword (Any) : egypt @attr 4=1 --- C4/Breeding.pm | 23 ++++++++++++++++------ admin/z3950servers.pl | 2 +- .../prog/en/modules/admin/z3950servers.tt | 10 ++++++++-- 3 files changed, 26 insertions(+), 9 deletions(-) --- a/C4/Breeding.pm +++ a/C4/Breeding.pm @@ -156,10 +156,14 @@ sub Z3950Search { ); my @servers = $rs->all; foreach my $server ( @servers ) { + my $server_zquery = $zquery; + if(my $attributes = $server->{attributes}){ + $server_zquery = "$attributes $zquery"; + } $oConnection[$s] = _create_connection( $server ); $oResult[$s] = $server->{servertype} eq 'zed'? - $oConnection[$s]->search_pqf( $zquery ): + $oConnection[$s]->search_pqf( $server_zquery ): $oConnection[$s]->search(new ZOOM::Query::CQL( _translate_query( $server, $squery ))); $s++; @@ -579,11 +583,18 @@ sub Z3950SearchAuth { while ( $server = $sth->fetchrow_hashref ) { $oConnection[$s] = _create_connection( $server ); - $oResult[$s] = - $server->{servertype} eq 'zed'? - $oConnection[$s]->search_pqf( $zquery ): - $oConnection[$s]->search(new ZOOM::Query::CQL( - _translate_query( $server, $squery ))); + if ( $server->{servertype} eq 'zed' ) { + my $server_zquery = $zquery; + if ( my $attributes = $server->{attributes} ) { + $server_zquery = "$attributes $zquery"; + } + $oResult[$s] = $oConnection[$s]->search_pqf( $server_zquery ): + } + else { + $oResult[$s] = $oConnection[$s]->search( + new ZOOM::Query::CQL(_translate_query( $server, $squery )) + ); + } $encoding[$s] = ($server->{encoding}?$server->{encoding}:"iso-5426"); $servers[$s] = $server; $s++; --- a/admin/z3950servers.pl +++ a/admin/z3950servers.pl @@ -66,7 +66,7 @@ if( $op eq 'delete_confirmed' && $id ) { $id = 0; } elsif ( $op eq 'add_validated' ) { my @fields=qw/host port db userid password rank syntax encoding timeout - recordtype checked servername servertype sru_options sru_fields + recordtype checked servername servertype sru_options sru_fields attributes add_xslt/; my $formdata = _form_data_hashref( $input, \@fields ); if( $id ) { --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/z3950servers.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/z3950servers.tt @@ -85,6 +85,10 @@
  • + [% IF (server.servertype||type) == 'zed' %] +
  • +
  • + [% END %]