From 2f33f8eef8b002909f730579b7cb898c12cb621b Mon Sep 17 00:00:00 2001 From: Jonathan Rosenbaum Date: Sat, 5 Aug 2017 06:44:59 +0000 Subject: [PATCH] If volunteer hours remaining is 0, spinner is disabled on spin or zeroed on input. --- js/transaction.js | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/js/transaction.js b/js/transaction.js index a1a9eb0..b39f3c7 100644 --- a/js/transaction.js +++ b/js/transaction.js @@ -681,7 +681,7 @@ $(function() { amount.val(redeemable_value); - // volunteer hours redeemed + // volunteer hours redeemed before discount for special_volunteer_hours_qualification kicks in } else { amount.val(price - redeemable_value); } @@ -889,9 +889,19 @@ $(function() { $("#redeemable_hours").hide(); if (obj) { - var volunteer_hours = obj.volunteer_hours; + var volunteer_hours = obj.volunteer_hours; + if ((volunteer_hours && volunteer_hours.length)) { + var max; + if (remaining || remaining === 0) { + max = remaining; + } else { + max = obj.current_year_volunteer_hours; + } + + console.log("MAX " + max); + $("#volunteer_hours").prop("title",title).html("Volunteer Hours"); $(".ui-spinner").show(); @@ -900,12 +910,16 @@ $(function() { step: 0.001, incremental: true, numberFormat: "n", - max: obj.current_year_volunteer_hours, + max: max, min: 0, spin: function( event, ui ) { // function redeemable(obj, spinner_value) - redeemable(obj, ui.value, event, volunteer); + if (max > 0) { + redeemable(obj, ui.value, event, volunteer); + } else { + $(this).spinner("disable"); + } } }).on('input', function (e) { @@ -924,7 +938,11 @@ $(function() { console.log("spinner value " + spinner_value); // function redeemable(obj, spinner_value) - redeemable(obj, spinner_value, event, volunteer); + if (max > 0 || max === undefined) { + redeemable(obj, spinner_value, event, volunteer); + } else { + $(this).spinner("disable"); + } var val = this.value, $this = $(this),