From: Lyon3 Team Date: Thu, 11 Oct 2012 14:12:48 +0000 (+0200) Subject: Bug 7620: OPACNoResult, Add keyword to query string X-Git-Url: http://git.rot13.org/?a=commitdiff_plain;h=37bd0c8d7e1196648fc3fc24287cf3d8f1afb7d7;p=koha.git 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 Signed-off-by: Jonathan Druart Signed-off-by: Jared Camins-Esakov --- diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref index 9239f12d22..c1870ad01a 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref @@ -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:' + - '
Note: You can insert placeholders {QUERY_KW} that will be replaced with the keywords of the query.' - pref: OPACNoResultsFound type: textarea class: code diff --git a/opac/opac-search.pl b/opac/opac-search.pl index 73d2c5368e..97081766a2 100755 --- a/opac/opac-search.pl +++ b/opac/opac-search.pl @@ -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,