diff --git a/Koha/QueryParser/Driver/PQF/query_plan/node.pm b/Koha/QueryParser/Driver/PQF/query_plan/node.pm index a50347e18c..353d7602d1 100644 --- a/Koha/QueryParser/Driver/PQF/query_plan/node.pm +++ b/Koha/QueryParser/Driver/PQF/query_plan/node.pm @@ -49,7 +49,7 @@ sub target_syntax { foreach my $field (@{$self->fields}) { $fieldobj = $self->plan->QueryParser->bib1_mapping_by_name('field', $self->classname, $field, $server); $relbump = $self->plan->QueryParser->bib1_mapping_by_name('relevance_bump', $self->classname, $field, $server); - if ($relbump) { + if ($relbump && defined $relbump->{'attr_string'}) { $fieldobj->{'attr_string'} .= ' ' . $relbump->{'attr_string'}; } push @fields, $fieldobj unless (!defined($fieldobj) || ($field eq $self->classname && @{$self->fields} > 1)); diff --git a/t/db_dependent/Search.t b/t/db_dependent/Search.t index f66fc3e08f..608592b7e0 100644 --- a/t/db_dependent/Search.t +++ b/t/db_dependent/Search.t @@ -132,6 +132,10 @@ $contextmodule->mock('preference', sub { return 'holding'; } elsif ($pref eq 'UNIMARCAuthorsFacetsSeparator') { return '--'; + } elsif ($pref eq 'casAuthentication' or $pref eq 'casLogout' or $pref eq 'casServerUrl' ) { + return ''; + } elsif ($pref eq 'template') { + return 'prog'; } else { warn "The syspref $pref was requested but I don't know what to say; this indicates that the test requires updating" unless $pref =~ m/(XSLT|item|branch|holding|image)/i;