Commit 0f3f98f3 by chrisndodge

Merge pull request #8586 from edx/cdodge/fix-multi-seat_spinner

fix problems with multi-seat purchases when accessibility review was …
parents 80e30a41 42af5b8e
......@@ -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);
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment