From 72b2e2898eba83a716fb5ad87c9a85124594bca1 Mon Sep 17 00:00:00 2001 From: Owen Leonard Date: Wed, 31 Jul 2019 16:01:39 +0000 Subject: [PATCH] Bug 23405: Circulation autocomplete for patron lookup broken if cardnumber is empty This patch modifies the JavaScript behind the patron search results autocomplete widget which is displayed when typing in the search header's "Check out" tab. The script is modified to use the patron's borrowernumber instead of cardnumber when redirecting to the checkout page. Instead of copying the patron's card number into the search form and triggering a submit, the autocomplete output uses direct links to each result. To better handle patrons with no card number, the output is modified to show card number with parentheses only if card number is present. To test you should have a patron in your database which has no card number. Make sure CircAutocompl is enabled. - From the circulation home page, type a patron name in the "Check out" form and wait for autocomplete search results to display. - Patrons with a card number should be listed in the format: Surname, First name (Card number) Address. - Patrons without a card number should be listed as: Surname, First name Address. - Clicking on either kind of result should link you the checkout screen for that patron. --- koha-tmpl/intranet-tmpl/prog/en/includes/js_includes.inc | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/js_includes.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/js_includes.inc index f91f734788d..1ca12ff3c62 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/js_includes.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/js_includes.inc @@ -87,17 +87,17 @@ var obj = $( "#findborrower" ).autocomplete({ source: "/cgi-bin/koha/circ/ysearch.pl", minLength: 3, - select: function( event, ui ) { - $( "#findborrower" ).val( ui.item.cardnumber ); - $("#patronsearch").submit(); - return false; - } }).data( "ui-autocomplete" ); if( obj ) { obj._renderItem = function( ul, item ) { + var cardnumber = ""; + if( item.cardnumber != "" ){ + // Display card number in parentheses if it exists + cardnumber = " (" + item.cardnumber + ") "; + } return $( "
  • " ) .data( "ui-autocomplete-item", item ) - .append( "" + item.surname + ", " + item.firstname + " (" + item.cardnumber + ") " + item.dateofbirth + " " + item.address + " " + item.city + " " + item.zipcode + " " + item.country + "" ) + .append( "" + item.surname + ", " + item.firstname + cardnumber + " " + item.dateofbirth + " " + item.address + " " + item.city + " " + item.zipcode + " " + item.country + "" ) .appendTo( ul ); }; } -- 2.11.0