// JavaScript Document
var tiempo_retardo;
var global_idprovincia = 0;


function pasar_por_caja()
{
	document.location.href = '../datos_cliente.php';
}

/*----------------------------UNIDADES CARRITO-----------------------------------*/
function unidades_carrito( idproducto , accion )
{
	if ( accion == "inc" )
	{
		document.getElementById('unidades_'+idproducto).value = parseInt(document.getElementById('unidades_'+idproducto).value) + 1;
	}
	else
	{
		if ( document.getElementById('unidades_'+idproducto).value > 1 )
		{
			document.getElementById('unidades_'+idproducto).value = parseInt(document.getElementById('unidades_'+idproducto).value) - 1;
		}
		//si borran el número ponemos un uno
		if( document.getElementById('unidades_'+idproducto).value == "" )
		{
			document.getElementById('unidades_'+idproducto).value = 1;
		}
	}
	
	clearTimeout(tiempo_retardo);
	tiempo_retardo = setTimeout('ejecuta_cambio_unidades( '+idproducto+' );', 750);
}

/*----------------------------EDICIÓN MANUAL DE UNIDADES---------------------------*/
function edicion_manual_unidades( evento , idproducto )
{
	var charCode = ( evento.which ) ? evento.which : event.keyCode
	if ( charCode > 47 && charCode < 58  )
	{
		clearTimeout(tiempo_retardo);
		tiempo_retardo = setTimeout('ejecuta_cambio_unidades('+idproducto+');',750);

		return true;
	}
	else
	{
		return false; 
	}
}

/*-------------------------EJECUTA CAMBIO UNIDADES AFECTA AL INPUT Y AL MAS MENOS------------------------------*/
function ejecuta_cambio_unidades( idproducto )
{
	var con_edicion_unidades_carrito = new XHConn();
	cargando_carrito();
	var fin_edicion_unidades_carrito = function (oXML) { carga_carrito(); };
	con_edicion_unidades_carrito.connect("actualiza_unidades_carrito.php", "GET", "idproducto="+idproducto+"&unidades="+document.getElementById("unidades_"+idproducto).value , fin_edicion_unidades_carrito);
}
/*-------------------------- CARGAR DATOS EN CARRITO ---------------------------*/
function cargando_carrito()
{
	var cargando = "<img src=\"../_img/cargando3.gif\" />";
	document.getElementById('total_unidades').innerHTML = cargando;
	document.getElementById('total_subtotal').innerHTML = cargando;
	document.getElementById('total').innerHTML =  cargando;	
}

function carga_carrito()
{
	var con_carga_carrito = new XHConn();
	var fin_carga_carrito = function (oXML)
	{
		xml_carrito = oXML.responseXML;
		//Obtenemos del xml los elementos con etiquetas "producto"
		var producto = xml_carrito.getElementsByTagName("producto");
		for (var i = 0; i < producto.length; i++)
		{
			var idproducto = producto[i].getElementsByTagName('idproducto')[0].childNodes[0].nodeValue;
			var precio_unidad = producto[i].getElementsByTagName('precio_unidad')[0].childNodes[0].nodeValue;
			var unidades = producto[i].getElementsByTagName('unidades')[0].childNodes[0].nodeValue;
//			document.getElementById('unidades_'+idproducto).value = unidades;
			document.getElementById('carrito_imp_'+idproducto).innerHTML =  formatea_importe(precio_unidad*unidades);
			document.getElementById('unidades_'+idproducto).value =  unidades;
			
		}
		//Obtenemos del xml la totalización
		var totalizacion = xml_carrito.getElementsByTagName("totalizacion");
		for (var i = 0; i < totalizacion.length; i++)
		{
			var total_unidades = totalizacion[i].getElementsByTagName('unidades')[0].childNodes[0].nodeValue;
			var total_subtotal = totalizacion[i].getElementsByTagName('subtotal')[0].childNodes[0].nodeValue;
			var portes = totalizacion[i].getElementsByTagName('portes')[0].childNodes[0].nodeValue;
			var total = totalizacion[i].getElementsByTagName('total')[0].childNodes[0].nodeValue;
			var descuento_visible = totalizacion[i].getElementsByTagName('descuento_visible')[0].childNodes[0].nodeValue;
			document.getElementById('total_unidades').innerHTML = total_unidades;
			document.getElementById('total_subtotal').innerHTML =  formatea_importe(total_subtotal);
			document.getElementById('total').innerHTML =  formatea_importe(total);
			if( document.getElementById('div_descuento_cupon') )
			{
				if( descuento_visible == 1 )
				{
					document.getElementById('div_descuento_cupon').style.display = "block";
				}
				else
				{
					document.getElementById('div_descuento_cupon').style.display = "none";
				}
			}
		}
		set_mini_carrito();
	};
	con_carga_carrito.connect("xml_carrito.php", "GET", "idprovincia="+global_idprovincia, fin_carga_carrito);
}


/*-----------------------------------------DAMOS FORMATO A LOS PRECIOS----------------------------------------*/
function formatea_importe(num) { 
	num = num.toString().replace(/$|,/g,''); 
	if(isNaN(num)) 
	num = "0"; 
	sign = (num == (num = Math.abs(num))); 
	num = Math.floor(num*100+0.50000000001); 
	cents = num%100; 
	num = Math.floor(num/100).toString(); 
	if(cents<10) 
	cents = "0" + cents; 
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++) 
	num = num.substring(0,num.length-(4*i+3))+'.'+ 
	num.substring(num.length-(4*i+3)); 
	return (((sign)?'':'-') + num + ',' + cents + ' &euro;'); 
}


// Establece datos relevantes del pedido en el mini-carrito (en cabecera)

function set_mini_carrito()
{
	var con_cargar_mini_carrito = new XHConn();
	var fin_cargar_mini_carrito = function (oXML) { document.getElementById('mini_carrito').innerHTML = oXML.responseText; };
	con_cargar_mini_carrito.connect("http://www.climaofertas.com/mini_carrito.php", "GET", "", fin_cargar_mini_carrito);
}

function comprar_multiproducto()
{
	var error_formulario = 1;
	var form = document.getElementById("div_tallas");
	for( var i = 0 ; i < form.elements.length; i++ )
	{
		//El match devuelve null si no encuentra el campo
		var respuesta = form.elements[i].name.match(/^unidades_([0-9]*)$/);
		if( respuesta != null )
		{
			var idproducto = respuesta[1];
			//-------------------------------------------
			//		Validación campos unidades
			//-------------------------------------------			
			var unidades = document.getElementById("unidades_"+idproducto).value;
			unidades = ( unidades != "" )? unidades : 0;
			error_formulario = ( unidades > 0  )? 0 : error_formulario;
		}
	}
	
	//Se ejecuta siempre tenga o no unidades
	form.submit();
}

//-----------------------------------Cupones-------------------------------------------
function autentifica_cupon()
{
	if( document.getElementById("codigo_cupon").value != "" )
	{
		document.getElementById("form_codigo").submit();
	}
	else
	{
		alert("Introduce tu código promocional");	
	}
}
