var count = 0;
var win;

function showCart()
{
	if (win == null)
		win = new Window({className: "alphacube", title: "Корзина покупателя", resizable: false, minimizable: false, maximizable: false, width: 650, height: 350, showEffectOptions: {duration: 0}, hideEffectOptions: {duration: 0}});

	win.setURL("/small_cart/")
	win.showCenter();
}


function add_to_cart(f)
{
	Element.extend(f);

	var url = '/cart/add/';
	var myAjax = new Ajax.Updater({success: 'cart'}, url, {encoding: '', parameters: f.serialize(), onCreate: createRequest, onComplete: completeRequest, onFailure: failureRequest, onSuccess: markCart});
}

function createRequest()
{
	if (count == 0)
		$('addtocart_process').show();

	count++;
}

function completeRequest()
{
	count--;

	if (count == 0)
		$('addtocart_process').hide();
}

function failureRequest(request)
{
	if(request.status == 502)
		alert(request.responseText);
	else
		alert("Произошла ошибка на стороне сервера, пожалуйста попробуйте повторить попытку позже.");

}

function markCart()
{
	$('cart').show();
	showCart();
	new Effect.Highlight('cart');
}

function materialSelect(f)
{
	form = f.form;
	Element.extend(form);

	res = false;

	if(form.configuration)
	{
		form.getElementsBySelector("[name = 'configuration']").each(
			function(s) { if(s.checked) { res = true; } }
		);

		if (!res)
			return;

		res = false;
	}

	form.getElementsBySelector("[name = 'material']").each(
		function(s) { if(s.checked) { res = true; } }
	);

	if(!res)
		return;

	$("AddToCartButton").disabled = false;
}




//function period(pe)
//{
//	new Effect.Highlight('cart');
//	cart.style.background = "#fff";
//}
//
//new PeriodicalExecuter(period, 1);




var cart_count = 0;

function RemoveCart(id)
{
	$$('#item_' + id + " .quantity input").each(function(s) {
		s.value = 0;
	});

	RecalcCart(id);

	return false;
//	$$('#item_' + pos).each(function(s) {
//		s.hide();
//	});
}


function RecalcCart(id)
{
	var v = '#item_' + id;
	var quantity = 0;
	var price = 0;
	var subtotal = 0;
	var total = $("cart_total").innerText;

	$$(v + " .quantity input").each(function(s) {
		quantity = Number(s.value.replace(/\D/g, ''));
		if(quantity < 0 || isNaN(quantity))
		{
			quantity = 0;
		}
		s.value = quantity;
	});

	$$(v + " .price").each(function(s) {
		price = s.innerText;
	});

	$$(v + " .subtotal").each(function(s) {
		subtotal = s.innerText;
	});

	$$(v + " .subtotal").each(function(s) {
		s.innerText = price * quantity;
	});

	$("cart_total").innerText = total - subtotal + price * quantity;

	$$(v + " .util input").each(function(s) {
		s.hide();
	});

	var url = '/cart/update/';
	var params = "id=" + id + "&count=" + quantity;

	var myAjax = new Ajax.Request(url, {encoding: '', parameters: params, onCreate: createUpdateRequest, onComplete: completeUpdateRequest, onFailure: failureRequest});

	new Effect.Highlight("item_" + id, {endcolor: '#ffffff', restorecolor: '#ffffff'});
}


function createUpdateRequest(transport)
{
	cart_count++;
}

function completeUpdateRequest()
{
	cart_count--;

	if(cart_count == 0)
	{
		$$("td.util input").each(function(s) {
			s.show();
//#			s.style.background = "
		});
	}
}