$(function() { 
	$("table.basket input").each(function(i){		
		calculate(this);
	});
	show_hide_items_table();
	calculate_summ();
		
	$('table.basket input').each(function(){
		$(this).keyboard('aup', function() {
			var count = parseInt($(this).val());
			if (isNaN(count) || count < 1) count = 1;

			$(this).val(count + 1);
		});

		$(this).keyboard('adown', function() {
			var count = parseInt($(this).val());
			if (isNaN(count) || count < 1) count = 1;

			$(this).val(count - 1);
		});
	});
});

function show_hide_items_table() {
	if ($("#items_in_cart table.basket tr").length >= 3) {
		$("#items_in_cart").show();
		$("#no_items_in_cart").hide();
	} else {
		$("#items_in_cart").hide();
		$("#no_items_in_cart").show();
	}
}

function del_from_cart(img) {
	if (confirm("Вы действительно хотите убрать данную модель из корзины заказа?"))	{
		var $tr  = $(img).closest("tr");
		var id   = $tr.data("id");
		var type = $tr.data("type");
		
		$tr.remove();

		show_hide_items_table();
		calculate_summ();
		
		$.post(
			"/ajax/del_from_cart.php", { 
				product_id: id,
				type: type
			},
			function (data) { 
			}
		);
	}
}

function get_cost_from_element(element) {
	return parseInt($(element)[0].innerHTML.toString().replace(" ", "").replace(" ", "").replace(" ", "").replace(" р", ""));
}

function calculate(input) {
	var count = parseInt(input.value);
	if (isNaN(count) || count < 1) input.value = "";
	var $tr = $(input).closest("tr");
		
	var cost = get_cost_from_element($tr.find("span.cost"));
	
	if ($tr.data("discount-value")) {
		cost -= Math.round(cost * parseInt($tr.data("discount-value"), 10) / 100);
	}
	
	var cost_summ = cost * (input.value ? parseInt(input.value) : 1);
	$tr.find("span.cost_summ").html(get_html_cost(cost_summ));
	
	calculate_summ();
}

function calculate_summ() {
	var table = $("table.basket");
	var summ = 0;
	$(table).find("span.cost_summ").each(function(i){		
		summ += get_cost_from_element(this);
	});
	$("#summ").html(get_html_cost(summ));
	
	if (summ > maxprice) {
		$("#prepay").show();
	} else {
		$("#prepay").hide();
	}
}

function save_count(input) {
	if (input.value == '') input.value = '1'
	
	var $tr   = $(input).closest("tr");
	var id    = $tr.data("id");
	var type  = $tr.data("type");
	var count = input.value;

	$.post(
		"/ajax/set_cart_item_count.php", {
			product_id: id,
			type: type,
			count: count
		}, function (data) {
		}
	);
}

