document.observe('dom:loaded', function() { 
	if ($("summ")) {
		$$("table.basket")[0].getElementsBySelector("input").each(function(input, i){
			calculate(input);
		});
		
		show_hide_items_table();
	}
});

function show_hide_items_table() {
	if ($("items_in_cart").down("table").getElementsBySelector("tr").length > 1) {
		$("items_in_cart").show();
		$("no_items_in_cart").hide();
	} else {
		$("items_in_cart").hide();
		$("no_items_in_cart").show();
	}
}

function add_to_cart(img) {
	$(img).hide();
	
	var id = $(img).up("td").up("td").id.toString().replace("item_", "");
	
	new Ajax.Request('/ajax/add_to_cart.php', {
		method: "post",
		parameters: {
			id: id
		},
		onSuccess: function(transport) {
			$(img).next().show();
			$("cart_n").hide();
			$("cart_a").show();
		}
	});
}

function del_from_cart(img) {
	var table = $(img).up("table");
	
	var id = $(img).up("tr").id.toString().replace("item_", "");
	$(img).up("tr").remove();

	$(table).getElementsBySelector("tr").each(function(tr, i){
		if (i === 0) return;
		
		$(tr).removeClassName("a").removeClassName("b").addClassName(i % 2 ? "a" : "b");
	});
	
	show_hide_items_table();

	new Ajax.Request('/ajax/del_from_cart.php', {
		method: "post",
		parameters: {
			id: id
		}
	});
}

function get_html_cost(cost) {
	var cost1 = Math.floor(cost / 100);
	var cost2 = cost % 100;
	if (cost2 < 10) cost2 = "0" + cost2;
	
	return "" + cost1 + "<sup>" + cost2 + "</sup>";
}

function get_cost_from_element(element) {
	return parseInt($(element).innerHTML.toString().replace("`", "").replace(/<\/?sup>/i, ""));
}

function calculate(input) {
	var count = parseInt(input.value);
	if (isNaN(count) || count < 1) input.value = "";
	
	var tr = $(input).up("tr");

	var cost = get_cost_from_element($(tr).down("span.cost"));
	var cost_summ = cost * (input.value ? parseInt(input.value) : 1);
	cost_summ -= Math.floor(cost_summ * $(tr).down("span.discount").innerHTML) / 100;
	$(tr).down("span.cost_summ").update(get_html_cost(cost_summ));
	
	calculate_summ(input);
}

function calculate_summ(obj) {
	var table = $(obj).up("table");
	
	var summ = 0;
	$(table).getElementsBySelector("span.cost_summ").each(function(span, i){
		summ += get_cost_from_element(span);
	});
	
	$("summ").update(get_html_cost(summ));
}

function save_count(input) {
	if (input.value == '') input.value = '1'
	
	var id = $(input).up("tr").id.toString().replace("item_", "");
	var count = input.value;
	
	new Ajax.Request('/ajax/set_cart_item_count.php', {
		method: "post",
		parameters: {
			id: id,
			count: count
		}
	});
}

