Bug 25277: Don't specify a field in query if none passed
== test plan ==
To test:
0 - Have Koha running with ES 6 enabled
1 - Launch the z3950 responder:
perl misc/z3950_responder.pl --config-dir /kohadevbox/koha/etc/z3950 --debug
2 - Connect using yaz-client:
yaz-client localhost:2100
2.1 Alternative, if you add the responder as a Z39.50 server in Koha and
do a catalogue Z39.50 search. Don't forget to search in the keywords
field. Not the title field.
3 - base biblios
4 - find bruce
5 - No results
6 - Stop the responder
7 - Apply patch
8 - Repeat
9 - This time you get results
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This commit is contained in:
parent
0a24e721dd
commit
68bcc31dfc
|
|
@ -40,7 +40,7 @@ sub to_koha {
|
|||
my ($self, $mappings) = @_;
|
||||
|
||||
my $attrs = $self->{'attributes'};
|
||||
my $fields = $mappings->{use}{default} // '_all';
|
||||
my $fields = $mappings->{use}{default};
|
||||
my $split = 0;
|
||||
my $prefix = '';
|
||||
my $suffix = '';
|
||||
|
|
@ -62,7 +62,7 @@ sub to_koha {
|
|||
}
|
||||
}
|
||||
|
||||
$fields = [$fields] unless ref($fields) eq 'ARRAY';
|
||||
$fields = [$fields] unless !defined $fields || ref($fields) eq 'ARRAY';
|
||||
|
||||
if ($split) {
|
||||
my @terms;
|
||||
|
|
@ -72,8 +72,12 @@ sub to_koha {
|
|||
next if (!$word);
|
||||
$word = $self->escape($word);
|
||||
my @words;
|
||||
foreach my $field (@{$fields}) {
|
||||
push(@words, "$field:($prefix$word$suffix)");
|
||||
if( $fields ) {
|
||||
foreach my $field (@{$fields}) {
|
||||
push(@words, "$field:($prefix$word$suffix)");
|
||||
}
|
||||
} else {
|
||||
push(@words, "($prefix$word$suffix)");
|
||||
}
|
||||
push (@terms, join(' OR ', @words));
|
||||
}
|
||||
|
|
@ -82,6 +86,7 @@ sub to_koha {
|
|||
|
||||
my @terms;
|
||||
$term = $self->escape($term);
|
||||
return "($prefix$term$suffix)" unless $fields;
|
||||
foreach my $field (@{$fields}) {
|
||||
push(@terms, "$field:($prefix$term$suffix)");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@ authorities:
|
|||
3: Heading
|
||||
9: LC-card-number
|
||||
12: Local-number
|
||||
default: _all
|
||||
biblios:
|
||||
# BIB-1 use attributes to index fields
|
||||
use:
|
||||
|
|
@ -43,4 +42,3 @@ biblios:
|
|||
1031: itype
|
||||
1033: Host-Item-Number
|
||||
1045: control-number
|
||||
default: _all
|
||||
|
|
|
|||
Loading…
Reference in New Issue