var XMLRequests = new Array();
var timeout = null;

function RemoveFromCart(id)
{
	var item = XMLRequests.push(XMLRequest());
	item--;
	XMLRequests[item].open("GET", "/ajax/cart/del/"+id+"/", true);
	XMLRequests[item].onreadystatechange = function() { ChangeCart(XMLRequests[item], item); var oObj = document.getElementById('obj_'+id); oObj.parentNode.removeChild(oObj); };
	XMLRequests[item].send('');
	return false;
}

function AddToCart(id)
{
	if (timeout) clearTimeout(timeout);
	var item = XMLRequests.push(XMLRequest());
	item--;
	size = 2 == arguments.length ? arguments[1] : 1;
	//alert(size);
	XMLRequests[item].open('GET', '/ajax/cart/add/'+id+'/'+size+'/', true);
	XMLRequests[item].onreadystatechange = function() { ChangeCart(XMLRequests[item], item) };
	XMLRequests[item].send('');
	return false;
}

function ChangeCart(XMLR, item)
{
	if (XMLR.readyState != 4)
		return false;
	var XMLParser = XmlDocument.create();
	XMLParser.loadXML(XMLR.responseText);
	var oNode, id;
	var success = XMLParser.getElementsByTagName('success').item(0).firstChild.nodeValue;
	var size = XMLParser.getElementsByTagName('size').item(0).firstChild.nodeValue;

	if('1' == success)
	{  // все ОК. удаляем файл из списка доступных для заказа.
		document.getElementById("cart").innerHTML = size+printCartSize(size);
		if(null != XMLParser.getElementsByTagName('item').item(0).getAttribute('id'))
		{	// находимся в корзине. обновляем данные по сумме.
			var id = XMLParser.getElementsByTagName('item').item(0).getAttribute('id');
			if(null !== document.getElementById('summ_'+id))
			{
				document.getElementById('summ_'+id).innerHTML = '';
				//alert(document.getElementById('cost_'+id).innerHTML);
				var value = number_format(parseInt(document.getElementById('cost_'+id).innerHTML)*XMLParser.getElementsByTagName('item').item(0).firstChild.nodeValue, 2, '.', ' ');
				document.getElementById('id_'+id).value = XMLParser.getElementsByTagName('item').item(0).firstChild.nodeValue
				document.getElementById('summ_'+id).appendChild(document.createTextNode(value));
				reSumm();
			}
		}
	}
	if(XMLRequests.length <= item+1)
	{  // выводим ошибки при достижении конца запросов (когда получены все ответы)
//		ShowErrors();
//		EmptyFileList();
	}
	return;
}

function printCartSize(size)
{
	var size = new String(size);
	size = size.charAt(size.length-1);
	if(1 == size && 11 != size)
        size = 'товар';
    else if (2 == size || 3 == size || 4 == size)
        size = 'товара';
    else
        size = 'товаров';
	return ' '+size;
}

function doLoadUp(id, num)
{
	if (timeout) clearTimeout(timeout);
	timeout = setTimeout(function() { AddToCart(id, num) }, 1000);
}

function reSumm()
{	// вычисляет общую стоимость заказа.
	var oTrs = document.getElementById('cartItems').childNodes;
	var summ = 0;
	for(i = 0; i < oTrs.length; i++)
	{
		var oTds = oTrs[i].childNodes;
		for(n = 0; n < oTds.length; n++)
		{
			if(null == oTds[n].id || -1 == oTds[n].id.indexOf('summ_')) continue;
			summ += parseFloat(oTds[n].innerHTML.replace(' ', ''));
		}
	}
	document.getElementById('cartSumm').innerHTML = number_format(summ, 2, '.', ' ')+' руб.';
}
