(function($, Drupal){
Drupal.behaviors.cartBehaviours = {
attach: function (context, settings) {
$(window).once('cartIndicatorBehaviour').on('load ajaxSuccess', function() {
var cartQty = 0;
$('.cart-indicator-qty').each(function() {
var itemQty = parseInt($(this).val());
cartQty = cartQty + itemQty;
});
if ( cartQty ) {
$('#indicator').show();
$('.indicator-number').text(cartQty);
} else {
$('#indicator').hide();
$('.indicator-number').text(cartQty);
}
//$('
').insertAfter('#shopping-cart .js-form-type-number input');
});
$('#shopping-cart .js-form-type-number input').once('qtyChangerBehaviour').each(function() {
$(this).after('');
});
$('#shopping-cart .js-form-type-number').once('qtySelectorBehaviour').each(function() {
var spinner = $(this),
input = spinner.find('input[type="number"]'),
btnUp = spinner.find('.quantity-up'),
btnDown = spinner.find('.quantity-down'),
min = input.attr('min'),
max = input.attr('max');
btnUp.click(function() {
var oldValue = parseFloat(input.val());
if (oldValue >= max) {
var newVal = oldValue;
} else {
var newVal = oldValue + 1;
}
spinner.find("input").val(newVal);
spinner.find("input").trigger("change");
});
btnDown.click(function() {
var oldValue = parseFloat(input.val());
if (oldValue <= min) {
var newVal = oldValue;
} else {
var newVal = oldValue - 1;
}
spinner.find("input").val(newVal);
spinner.find("input").trigger("change");
});
});
$('.add-to-cart').once('addToCartBehaviour').click(function() {
var productId = $(this).data('product-id');
$('#add-to-cart').val(productId);
$('#update-cart').click();
});
$('#continue a').once('guestContinueBehaviour').click(function(e) {
$('#customer-prompt').fadeOut();
e.preventDefault();
});
$('#customer-prompt').once('closePromptBehaviour').click(function (e) {
if (!$(e.target).closest('#customer-prompt > div > div').length) {
$('#customer-prompt').fadeOut().html('');
}
});
}
}
})(jQuery, Drupal);