async the patron status sidepanel for patron search result selection
authorphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Sat, 16 Jul 2005 23:01:29 +0000 (23:01 +0000)
committerphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Sat, 16 Jul 2005 23:01:29 +0000 (23:01 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@1234 dcc99617-32d9-48b4-a31d-7c20da2025e4

Evergreen/staff_client/chrome/content/evergreen/patron/patron_search.js
Evergreen/staff_client/chrome/content/evergreen/patron/patron_utils.js

index 1c2e74a..abeac7c 100644 (file)
@@ -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(
index fe4a7c3..ed0e2f8 100755 (executable)
@@ -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 = '';