Bug 7620: OPACNoResult, Add keyword to query string

When search failed, this patch gets the keyword(s) and add them
to the string entered by the user to OPACNoResultFound

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
This commit is contained in:
Lyon3 Team 2012-10-11 16:12:48 +02:00 committed by Jared Camins-Esakov
parent adf4790c28
commit 37bd0c8d7e
2 changed files with 11 additions and 0 deletions

View file

@ -239,6 +239,7 @@ OPAC:
- a library select pulldown menu on the OPAC masthead.
-
- 'Display this HTML when no results are found for a search in the OPAC:'
- '<br />Note: You can insert placeholders {QUERY_KW} that will be replaced with the keywords of the query.'
- pref: OPACNoResultsFound
type: textarea
class: code

View file

@ -761,6 +761,16 @@ for (my $i=0;$i<@servers;$i++) {
}
# no hits
else {
my $nohits = C4::Context->preference('OPACNoResultsFound');
if ($nohits and $nohits=~/{QUERY_KW}/){
# extracting keywords in case of relaunching search
(my $query_kw=$query_desc)=~s/ and|or / /g;
$query_kw = Encode::decode_utf8($query_kw);
my @query_kw=($query_kw=~ /([-\w]+\b)(?:[^,:]|$)/g);
$query_kw=join('+',@query_kw);
$nohits=~s/{QUERY_KW}/$query_kw/g;
$template->param('OPACNoResultsFound' =>$nohits);
}
$template->param(
searchdesc => 1,
query_desc => $query_desc,