function updateShoppingCart() {
	$.ajax({
		type: "POST",
		url: "/basket/basket_summary/",
		async: true,
		success: function(data) {
			$("#shopping-cart").html(data);
		}
	});
}

function updateBasketQuantities(q, id) {
	$.ajax({
		type:   "POST",
                url:    "/basket/update_quantity/",
                data:   {
			id: id,
			quantity: q
                },
		dataType: "JSON",
                async:  false,
                success: function(data) {
			data = eval("("+data+")");
			total = data.total;
			price = data.price;
			/*
			total = $.evalJSON(data).toddtal;
			price = $.evalJSON(data).price;
			*/
			$("#product_"+id).children("li.unittotal").html(total);
			$("#product_"+id).children("li.unitprice").html(price);
			updateBasketSubTotal();
			updateShoppingCart();
		}
	});
}

function updateBasketSubTotal() {
	$.ajax({
		type: "POST",
		url: "/basket/update_sub_total/",
		async: true,
		success: function(data) {
			$("span.subtotal b").html(data);
		}
	});
}

function setBasketInputs() {
	var input_values = Array();
	$('li.unit input.editable').bind("keyup", function() {
		var m = /(\d+)(.*)$/.exec($(this).val());
		if (m != null) {
			$(this).val(m[1]);
			id = /^product_(\d+)$/.exec($(this).parent().parent().attr("id"));
			id = id[1];
			updateBasketQuantities($(this).val(), id);
		}
	});
	$('li.unit input.editable').bind("blur", function() {
		var m = /(\d+)(.*)$/.exec($(this).val());
		if (m == null || $(this).val() <= 0) {
			$(this).val(1);
		} else {
			$(this).val(m[1]);
		}
		id = /^product_(\d+)$/.exec($(this).parent().parent().attr("id"));
		id = id[1];
		updateBasketQuantities($(this).val(), id);
	});
}

$(document).ready(function() {
	setBasketInputs();
});

