Bug 5645: improve converting simple search to Z39.50 search

This patch builds on the patch for bug 10742 by ensuring
that when a search initiated from the staff interface simple
search returns results, if you click on the Z39.50 search
button, the search form is populated with the search string
without "kw,wrdl".

To test:

[1] Perform a search in the staff interface that will return
    results.
[2] Click the Z39.50 search button.
[3] Observe that the search string appears in the title
    field in the Z39.50 search form, but with a prefix of
    "kw,wrdl".
[4] Apply the patch.
[5] Repeat steps 1-2.  This time, the search string appears
    without the index prefix.  This will make the Z39.50 search
    much more likely to work.
[6] Repeat steps 1-2, but with a search that does *not* return
    any hits in the Koha database.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
This commit is contained in:
Galen Charlton 2013-09-07 18:42:32 +00:00
parent 520244503e
commit f791dd4770

View file

@ -563,6 +563,9 @@ for (my $i=0;$i<@servers;$i++) {
exit;
}
# set up parameters if user wishes to re-run the search
# as a Z39.50 search
$template->param (z3950_search_params => C4::Search::z3950_search_args($z3950par || $query_desc));
if ($hits) {
$template->param(total => $hits);
@ -575,7 +578,6 @@ for (my $i=0;$i<@servers;$i++) {
$template->param(limit_desc => $limit_desc);
$template->param(offset => $offset);
$template->param(DisplayMultiPlaceHold => $DisplayMultiPlaceHold);
$template->param (z3950_search_params => C4::Search::z3950_search_args($query_desc));
if ($query_desc || $limit_desc) {
$template->param(searchdesc => 1);
}
@ -650,7 +652,6 @@ for (my $i=0;$i<@servers;$i++) {
# no hits
else {
$template->param(searchdesc => 1,query_desc => $query_desc,limit_desc => $limit_desc);
$template->param (z3950_search_params => C4::Search::z3950_search_args($z3950par || $query_desc));
}
} # end of the if local