From a54deaa4e27baffc324a16a0561fdd912b16f41d Mon Sep 17 00:00:00 2001 From: phasefx Date: Sat, 16 Jul 2005 23:01:29 +0000 Subject: [PATCH] async the patron status sidepanel for patron search result selection git-svn-id: svn://svn.open-ils.org/ILS/trunk@1234 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- .../chrome/content/evergreen/patron/patron_search.js | 17 ++++++++++++++--- .../chrome/content/evergreen/patron/patron_utils.js | 9 +++++++++ 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/Evergreen/staff_client/chrome/content/evergreen/patron/patron_search.js b/Evergreen/staff_client/chrome/content/evergreen/patron/patron_search.js index 1c2e74a298..abeac7ce5e 100644 --- a/Evergreen/staff_client/chrome/content/evergreen/patron/patron_search.js +++ b/Evergreen/staff_client/chrome/content/evergreen/patron/patron_search.js @@ -76,10 +76,21 @@ function patron_search_patron_search_results_init(p) { p.search_results.register_patron_select_callback( function (ev) { sdump('D_PATRON_SEARCH','Firing patron_select_callback\n'); - var patrons = get_list_from_tree_selection( p.search_results.paged_tree.tree ); - p._patron = retrieve_patron_by_id( patrons[ patrons.length - 1 ].getAttribute('record_id') ) + /* Clear Current Patron */ + p.retrieve_button.disabled = true; + p._patron = fake_patron(); render_fm( p.w.document, { 'au' : p._patron } ); - p.retrieve_button.disabled = false; + /* Get selection */ + var patrons = get_list_from_tree_selection( p.search_results.paged_tree.tree ); + retrieve_patron_by_id( + patrons[ patrons.length - 1 ].getAttribute('record_id'), + function (request) { + /* Set new patron */ + p._patron = request.getResultObject(); + render_fm( p.w.document, { 'au' : p._patron } ); + p.retrieve_button.disabled = false; + } + ) } ); p.search_results.register_flesh_patron_function( diff --git a/Evergreen/staff_client/chrome/content/evergreen/patron/patron_utils.js b/Evergreen/staff_client/chrome/content/evergreen/patron/patron_utils.js index fe4a7c3cba..ed0e2f87fc 100755 --- a/Evergreen/staff_client/chrome/content/evergreen/patron/patron_utils.js +++ b/Evergreen/staff_client/chrome/content/evergreen/patron/patron_utils.js @@ -1,5 +1,14 @@ sdump('D_TRACE','Loading patron_utils.js\n'); +function fake_patron() { + var p = new au(); + p.family_name( 'Retrieving' ); + p.checkouts( [] ); + p.hold_requests( [] ); + p.credit_forward_balance('0.00'); + return p; +} + function patron_get_full_name( au ) { sdump('D_PATRON_UTILS',arg_dump(arguments)); var name = ''; -- 2.11.0