prevent pile up of onclick handlers resulting in multiple payments
authorberick <berick@esilibrary.com>
Tue, 5 Apr 2011 14:50:23 +0000 (10:50 -0400)
committerberick <berick@esilibrary.com>
Tue, 5 Apr 2011 14:50:23 +0000 (10:50 -0400)
Open-ILS/web/opac/skin/kcls/js/myopac.js

index 26ed394..6d90732 100644 (file)
@@ -1670,6 +1670,7 @@ function getSelectedFineTransactions() {
 }
 
 var payFinesDrawn = false;
+var ccPaymentOnClick;
 function drawPayFinesPage(patron, total, xacts, onPaymentSubmit) {
     if (typeof(this.authtoken) == "undefined")
         this.authtoken = patron.session;
@@ -1739,7 +1740,10 @@ function drawPayFinesPage(patron, total, xacts, onPaymentSubmit) {
             $('pay_fines_confirm_amount').innerHTML = 
                 dojo.query("span", "oils-selfck-cc-payment-summary")[0].innerHTML;
 
-            dojo.connect(payConfirmSubmit, 'onClick', 
+            if(ccPaymentOnClick) // prevent dupe's
+                dojo.disconnect(ccPaymentOnClick);
+
+            ccPaymentOnClick = dojo.connect(payConfirmSubmit, 'onClick', 
                 function() { 
                     if (typeof(progressDialog) != "undefined") progressDialog.show(true);
                     unHideMe($('pay_fines_now'));