From 05679cce8d1b4903f65262bebbdc384f88238b9d Mon Sep 17 00:00:00 2001 From: Jason Etheridge Date: Tue, 3 Jan 2012 15:46:25 -0500 Subject: [PATCH] More aggressive recalc of standing penalties In the staff client, the Refresh button in the patron display will explicitly ask the server to recalculate standing penalties for the patron. Other automatic refresh-like behavior meant to synchronize parts of the patron display will not do this. This change tweaks the logic to ask for a recalculation with all refresh-like behavior in the patron display, and will catch such things as staff changing the user's permisssion profile. An example of how you might test this: Admin -> Local Administration -> Group Penalty Thresholds New Penalty Threshold Group: Volunteers Org Unit: CONS Penalty: PATRON_EXCEEDS_FINES Threshold: 1 Save Register user with Profile of Patrons Load patron, Bills, Bill Patron, Amount: 5, Submit this Bill Edit Main (Profile) Permission Group: Volunteers, Save The interface should refresh and show a Maximum Bills penalty in the patron summary. Signed-off-by: Jason Etheridge Signed-off-by: Bill Erickson --- Open-ILS/xul/staff_client/server/patron/display.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Open-ILS/xul/staff_client/server/patron/display.js b/Open-ILS/xul/staff_client/server/patron/display.js index 3cf9f96f69..1eec41fb5f 100644 --- a/Open-ILS/xul/staff_client/server/patron/display.js +++ b/Open-ILS/xul/staff_client/server/patron/display.js @@ -174,10 +174,6 @@ patron.display.prototype = { ['command'], function(ev) { try { document.getElementById("PatronNavBarScrollbox").ensureElementIsVisible( document.getElementById("PatronNavBar_refresh" ) ); } catch(E) {}; - obj.network.simple_request( - 'RECALCULATE_STANDING_PENALTIES', - [ ses(), obj.patron.id() ] - ); obj.refresh_all(); } ], @@ -805,6 +801,10 @@ patron.display.prototype = { var obj = this; obj.controller.view.patron_name.setAttribute('value', $("patronStrings").getString('staff.patron.display.init.retrieving')); document.documentElement.setAttribute('class',''); + obj.network.simple_request( + 'RECALCULATE_STANDING_PENALTIES', + [ ses(), obj.patron.id() ] + ); try { obj.summary_window.refresh(); } catch(E) { obj.error.sdump('D_ERROR', E + '\n'); } try { obj.refresh_deck(); } catch(E) { obj.error.sdump('D_ERROR', E + '\n'); } }, -- 2.11.0