Merge pull request #8586 from edx/cdodge/fix-multi-seat_spinner
fix problems with multi-seat purchases when accessibility review was …
This commit is contained in:
@@ -105,13 +105,13 @@ from django.utils.translation import ungettext
|
||||
<div class="numbers-row" aria-live="polite">
|
||||
<label for="field_${item.id}">${_('Students:')}</label>
|
||||
<div class="counter">
|
||||
<input maxlength="3" title="${_('Input quantity and press enter.')}" max="999" type="text" name="students" value="${item.qty}" id="field_${item.id}" data-unit-cost="${item.unit_cost}" data-qty="${item.qty}" aria-describedby="students-${item.id}">
|
||||
<input maxlength="3" class="spin-counter" title="${_('Input quantity and press enter.')}" max="999" type="text" name="students" value="${item.qty}" id="field_${item.id}" data-unit-cost="${item.unit_cost}" data-qty="${item.qty}" data-item-id="${item.id}" aria-describedby="students-${item.id}">
|
||||
</div>
|
||||
<button class="inc button">
|
||||
<button class="inc button" data-operation="inc">
|
||||
<i class="icon fa fa-caret-up" aria-hidden="true"><span>+</span></i>
|
||||
<span class="sr">Increase</span>
|
||||
</button>
|
||||
<button class="dec button">
|
||||
<button class="dec button" data-operation="dec">
|
||||
<i class="icon fa fa-caret-down"></i>
|
||||
<span class="sr">Decrease</span>
|
||||
</button>
|
||||
@@ -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);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user