/*****************************************
* Funciones para CESTA DE LA COMPRA
*****************************************/
function add_prod ()
{			
	var productos = new Array
	var items = new Array
	var formulario = document.datos
	
	if (!compFormulario (formulario))
	{
		alert ("Debes rellenar todos los campos del formulario")
		return
	}
					
	prod = formulario.id_prod.value // Referencia del producto
	cantidad = formulario.cantidad.value // Cantidad pedida

	// La la cookie con la cesta actual
	cookie = getCookie ('cesta')
	if (cookie !="" && cookie != null)
	{
		// Extrae la lista de productos
		productos = cookie.split ("æ")
	}

	// busca el producto en la cesta actual para añadirle más cantidad	
	for (n_producto=-1, i=0;i<productos.length;i++)
	{				
		items = productos [i].split ("~")
		if (items[0] == prod) // Sólo si el producto examinado es el actual
		{					
			n_producto = i
			items [1] = parseInt (items [1]) + parseInt (cantidad)
			// Vuelve a componer el texto del producto y sale del bucle
			for (productos [i] = "", a = 0; a < items.length; ++a) productos [i] += items [a] + "~"
			break
		}
	}
	
	// Si no existía nada de ese producto, crea un producto nuevo para la cesta
	if (n_producto == -1) 
	{
		n_producto = productos.length
		productos [n_producto] = prod + "~" + cantidad + "~"
	}
	
	// Lee los campos auxiliares del formulario de pedido y los añade al producto
	descripcion = catchDes (formulario)
	productos [n_producto] += descripcion
	
	// Vuelve a componer la cookie y la envía
	for (cookie = "", i = 0; i < productos.length; i++)	cookie += productos [i] + "æ"
	setCookie ('cesta',cookie, "", "/")
	
	alert ("El producto ha sido añadido al pedido.")
	document.location.href = '/tienda/cesta.asp' 	
}
		
function compFormulario(obj)
{
	for (i = 0; i < obj.length; ++i)
	{
		if (obj.elements[i].type != "button" && obj.elements[i].name != "id_prod" && obj.elements[i].name != "cantidad")
			if (obj.elements [i].value == "") {
				alert (obj.elements [i].name)
			return false
			}
	}
	return true
}

function catchDes (obj)
{
	valor = ""
	for (i=0;i<obj.length;i++)
	{
		if (obj.elements[i].type != "button" && obj.elements[i].name != "id_prod" && obj.elements[i].name != "cantidad")
		{
			valor = valor + obj.elements[i].name + ": " + obj.elements[i].value + "\n"
		}				
	}
	return (valor)
}
