From 42af5b8e35c39674164121b16ad5a6193fe7c1dd Mon Sep 17 00:00:00 2001 From: Chris Dodge Date: Fri, 19 Jun 2015 12:55:04 -0400 Subject: [PATCH] fix problems with multi-seat purchases when accessibility review was completed --- lms/templates/shoppingcart/shopping_cart.html | 32 +++++++++++-------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/lms/templates/shoppingcart/shopping_cart.html b/lms/templates/shoppingcart/shopping_cart.html index 2cbfac71f2..14ceab73c4 100644 --- a/lms/templates/shoppingcart/shopping_cart.html +++ b/lms/templates/shoppingcart/shopping_cart.html @@ -105,13 +105,13 @@ from django.utils.translation import ungettext
- +
- - @@ -310,15 +310,15 @@ from django.utils.translation import ungettext var wasBusinessType = false; var studentField = $(this).parent().find("input[type='text']"); var unit_cost = parseFloat(studentField.data('unit-cost')); - var ItemId = studentField.attr('id'); + var ItemId = studentField.data('item-id'); var $button = $(this); - var oldValue = $("#"+ItemId).data('qty'); + var oldValue = studentField.data('qty'); var newVal = 1; // initialize with 1. oldValue = parseFloat(oldValue); hideErrorMsg('students-'+ItemId); if ($.isNumeric(oldValue)){ - if ($button.text() == "+") { + if ($button.data("operation") == "inc") { if(oldValue > 0){ newVal = oldValue + 1; if(newVal > 1000){ @@ -338,7 +338,7 @@ from django.utils.translation import ungettext $button.parent().find("input").val(newVal); isBusinessType = getBusinessType(); update_user_cart(ItemId, newVal, oldValue, unit_cost, wasBusinessType, isBusinessType); - $("#"+ItemId).data('qty', newVal); + studentField.data('qty', newVal); } }); @@ -390,7 +390,7 @@ from django.utils.translation import ungettext typeChanged = true; $('html').css({'cursor':'wait'}); $(".button").css({'cursor':'wait'}); - $('.col-2.relative').find("input[type='submit']").attr('disabled', true); + $('.col-2.relative').find("button[type='submit']").attr('disabled', true); } @@ -406,11 +406,14 @@ from django.utils.translation import ungettext $(".button").css({'cursor':'default'}); $("#processor_form").html(data['form_html']); if(typeChanged){ - var submit_button = $('.col-2.relative').find("input[type='submit']") + var submit_button = $('.col-2.relative').find("button[type='submit']"); submit_button.removeAttr('disabled'); for (var i = 0; i< data['oldToNewIdMap'].length; i++) { - $('#'+data['oldToNewIdMap'][i]['oldId']+'').attr('id',data['oldToNewIdMap'][i]['newId']); - $('a.btn-remove[data-item-id]=' +data['oldToNewIdMap'][i]['oldId']+'').data('item-id', data['oldToNewIdMap'][i]['newId']); + var oldId = data['oldToNewIdMap'][i]['oldId']; + var newId = data['oldToNewIdMap'][i]['newId']; + + $('input.spin-counter[data-item-id]=' + oldId ).data('item-id', newId); + $('button.btn-remove[data-item-id]=' + oldId ).data('item-id', newId); } if(isbusinessType){ $( "div[name='payment']").addClass('hidden'); @@ -447,8 +450,9 @@ from django.utils.translation import ungettext function updateTextFieldQty(event){ if(isSpinnerBtnEnabled){ - var itemId = event.currentTarget.id; - var prevQty = $("#"+itemId).data('qty'); + var el_id = event.currentTarget.id; + var itemId = $("#"+el_id).data('item-id'); + var prevQty = $("#"+el_id).data('qty'); var newQty = event.currentTarget.value; var unitCost = event.currentTarget.dataset.unitCost; var isBusinessType = getBusinessType(); @@ -456,7 +460,7 @@ from django.utils.translation import ungettext var wasBusinessType = !isBusinessType; isSpinnerBtnEnabled = false; update_user_cart(itemId, newQty, prevQty, unitCost, wasBusinessType, isBusinessType); - $("#"+itemId).data('qty', newQty); + $("#"+el_id).data('qty', newQty); } }