Skip to content

Instantly share code, notes, and snippets.

@gterrill
Last active December 16, 2015 21:20
Show Gist options
  • Save gterrill/5499051 to your computer and use it in GitHub Desktop.
Save gterrill/5499051 to your computer and use it in GitHub Desktop.
Ajax add to cart capturing booking line item properties
function addToCart(e){
if (typeof e !== 'undefined') e.preventDefault();
if (!$('form[action="/cart/add"]').valid()) {
return;
}
var form = $(this).parents('form'),
data = [];
data.push(["id", form.find('[name="id"]').val()].join('='));
data.push(["quantity", form.find('[name="quantity"]').val() || 1].join('='));
if (form.find('[name="properties[booking-start]"]').length > 0) {
data.push(["properties[booking-start]", bta.toLocalIsoString(form.find('[name="properties[booking-start]"]').datepicker('getDate'), false)].join('='));
data.push(["properties[booking-finish]", bta.toLocalIsoString(form.find('[name="properties[booking-finish]"]').datepicker('getDate'), false)].join('='));
}
$.ajax({
type: 'POST',
url: '/cart/add.js',
async: false,
cache: false,
data: data.join('&'),
dataType: 'json',
error: addToCartFail,
success: addToCartSuccess
});
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment