Bug 20458

Summary: Improper substitution of QUERY_KW in opac/opac-search.pl
Product: Koha Reporter: Barton Chittenden <barton>
Component: SearchingAssignee: Bugs List <koha-bugs>
Status: NEW --- QA Contact: Testopia <testopia>
Severity: minor    
Priority: P5 - low    
Version: Main   
Hardware: All   
OS: All   
GIT URL: Change sponsored?: ---
Patch complexity: --- Documentation contact:
Documentation submission: Text to go in the release notes:
Version(s) released in:
Circulation function:

Description Barton Chittenden 2018-03-21 16:15:44 UTC
If the system preference OPACNoResultsFound is enabled, all occurrences of the string {QUERY_KW} should be replaced with the query string if the query returns no results.

In opac/opac-search.pl, the regular expression that we're using to remove the keywords 'and' and 'or' isn't properly grouped:

(my $query_kw=$query_desc)=~s/ and|or / /g;

will replace ' and' or 'or '; this should be

(my $query_kw=$query_desc)=~s/ (and|or) / /g;

To reproduce:

Put "{QUERY_KW}" into

OPACNoResultsFound

Then do an opac search for

soy andina

or

tractor trailer

as long as neither of these is actually found, OPACNoResultsFound will show

soy ina

or

tract trailer
Comment 1 Barton Chittenden 2018-03-21 16:50:21 UTC
We should probably do a case insensitive search:

(my $query_kw=$query_desc)=~s/ (and|or) / /gi;