/*--------------------------------Definido, diseñado y creado por Rubén Martín Guerrero 15/06/2008------------------------------*/


function enviar (com,pro,loc,carateristica,entrada,salida,tipo,rutaxml,frmAdultos,frmNinos){

var codigopagina;
var mensaje;

if(document.getElementById('nacional').style.display == 'block')
{
	codigopagina='NAC';
	mensaje="Provincia/Area";
}
else
{
	codigopagina='INT';
	mensaje="Ciudad";
}

if(entrada!='' && salida != '' && com != ''){

var direccion = "http://www.viajeselcorteingles.es/viajes/vuelos_hoteles/programas/listado_hoteles.asp?codwebor=ESP&paquetesDinamicos=N&descuentoResid=N";
	direccion += "&copagina=" + codigopagina;			
	
	if (tipo == 'EF' || tipo == 'HE'){
		if (tipo == 'HE') direccion += "&cadena=002";
		if (tipo == 'EF') direccion += "&cadena=001";
		direccion += "&folleto=";
	}
	else{
		if (tipo != ''){
			var folleto = damefolleto (tipo,entrada,rutaxml);
			direccion += "&folleto=" + folleto;
		}
		else direccion += "&folleto=";
	}

	direccion += "&codPais=" + com;
	direccion += "&codiArea=" + pro;

	direccion = controla_descripcion(com,pro,loc,direccion);

	if(carateristica!="")
	{	
		direccion += "&caracteristica2=" + carateristica;
	}

	var Fentrada = cambiaFecha (entrada)
	direccion += "&fechaIni=" + Fentrada;

	var Fsalida = cambiaFecha (salida)
	direccion += "&fechaFin=" + Fsalida;
	direccion += "&numHabit=" + 1;
	var totalninos=document.BuscVueloHotel.ninos.value;
	var ninos = parseInt(totalninos);
	var totalocupacion=parseInt(frmAdultos.value);
	totalocupacion=totalocupacion+ninos;

	if(totalocupacion>5) alert("La suma de adultos y niños que pueden ocupar una habitación no puede superar un total de 5 personas");
	else {
		direccion += "&numAdultos1=" + frmAdultos;
		if (ninos!=0)
		{	
			direccion += "&numNinos1=" + ninos;
			direccion = controlaEdadNinos (ninos,direccion)
//alert(direccion);
			parent.location.href = direccion;
		}
		else{
			direccion += "&numNinos1=0";
			direccion += "&edadesNinos1=";
//alert(direccion);
			window.open(direccion,'','toolbar=yes,location=yes,status=yes,resizable=yes,scrollbars=yes,menubar=yes');
		}
	}
}
else alert("Los siguientes campos son obligatorios:\n- Fecha de Entrada\n- Fecha de Salida\n- " + mensaje);
}



function enviar_avion_hotel (ori,com,pro,loc,carateristica,entrada,salida,tipo,rutaxml_fechas,rutaxml_destinos,frmAdultos,frmNinos)
{
//Hay que crear otra forma mas para enviar los parametross a la funcio envion_dinamicos.
//hay que revisa todos los controles para poder atacar a la transaccion.
//plantear hacer un reloada en el onload del body

var codigopagina;
var mensaje;
var escala="";
if (document.BuscVueloHotel.escalas.checked==true)
		escala=0;

if(document.getElementById('nacional').style.display == 'block')
{
	codigopagina='NAC';
	mensaje="Aeropuerto";
}
else
{
	codigopagina='INT';
	mensaje="Ciudad";
}

if(entrada!="" && salida !="" && com !="" && pro!=""){
	
	var direccion = "http://www.viajeselcorteingles.es/viajes/vuelos_hoteles/programas/listado_hoteles.asp?codwebor=ESP&paquetesDinamicos=S&descuentoResid=N";
	direccion += "&copagina=" + codigopagina;			
	direccion += "&origen=" + document.BuscVueloHotel.ori.value;
	direccion += "&descOrigen=" + document.BuscVueloHotel.ori.options[document.BuscVueloHotel.ori.selectedIndex].text;
	direccion += "&vuelosDirectos=" + escala;
	direccion += "&codPais=" + com;
	direccion += "&codiArea=" + pro;
	direccion = controla_descripcion_avion_hotel(com,pro,loc,direccion,rutaxml_destinos);
	
	if(carateristica!="")
	{	
		direccion += "&caracteristica2=" + carateristica;
	}

	var Fentrada = cambiaFecha (entrada)
	direccion += "&fechaIni=" + Fentrada;

	var Fsalida = cambiaFecha (salida)
	direccion += "&fechaFin=" + Fsalida;

	direccion += "&numHabit=" + 1;
	var totalninos=document.BuscVueloHotel.ninos.value;
	var ninos = parseInt(totalninos);
	var totalocupacion=parseInt(frmAdultos.value);
	totalocupacion=totalocupacion+ninos;

	if(totalocupacion>5) alert("La suma de adultos y niños que pueden ocupar una habitación no puede superar un total de 5 personas");
	else {
		direccion += "&numAdultos1=" + frmAdultos;
		if (ninos!=0)
		{	
			direccion += "&numNinos1=" + ninos;
			direccion = controlaEdadNinos (ninos,direccion);
//alert(direccion);
			parent.location.href = direccion;
		}
		else{
			direccion += "&numNinos1=0";
			direccion += "&edadesNinos1=";
//alert(direccion);
			window.open(direccion,'','toolbar=yes,location=yes,status=yes,resizable=yes,scrollbars=yes,menubar=yes');
		}
	}
}
else alert("Los siguientes campos son obligatorios:\n- Fecha de Entrada\n- Fecha de Salida\n- " + mensaje);
}

function controla_descripcion(com,pro,loc,direccion)
{	

	if(document.getElementById('nacional').style.display == 'block')
	{
		if(document.BuscVueloHotel.loc.selectedIndex==0)
		{
			direccion += "&descripcion=" + document.BuscVueloHotel.pro.options[document.BuscVueloHotel.pro.selectedIndex].text;	
			direccion += "&codiZona=" + loc;
		}
		else
			{
		  		direccion += "&descripcion=" + document.BuscVueloHotel.loc.options[document.BuscVueloHotel.loc.selectedIndex].text;	
				direccion += "&codiZona=" + loc;
			}
	}
	else
	{
		if(BuscVueloHotel.loca_inter.selectedIndex=='0')
		{
			direccion += "&descripcion=" + document.BuscVueloHotel.ciudad.options[document.BuscVueloHotel.ciudad.selectedIndex].text;	
			direccion += "&codiZona=" + loc;
		}
		else
		{
		  		direccion += "&descripcion=" + document.BuscVueloHotel.loca_inter.options[document.BuscVueloHotel.loca_inter.selectedIndex].text;	
				direccion += "&codiZona=" + loc;
		}
	}	
	
	return direccion;
}

function controla_descripcion_avion_hotel(com,pro,loc,direccion,rutaxml_destinos)
{	

	if(document.getElementById('nacional').style.display == 'block')
	{
		if(document.BuscVueloHotel.loc.selectedIndex=='0')
		{
			direccion += "&descripcion=" + document.BuscVueloHotel.pro.options[document.BuscVueloHotel.pro.selectedIndex].text;	
			direccion += "&codiZona=" + loc;
		}
		else
			if(document.BuscVueloHotel.loc.selectedIndex==(document.BuscVueloHotel.loc.length - 1))
			{
				
				direccion += "&descripcion=" + encuentra_pais(com,rutaxml_destinos);	
				direccion += "&codiZona=T";
			}
			else
			{
		  		direccion += "&descripcion=" + document.BuscVueloHotel.loc.options[document.BuscVueloHotel.loc.selectedIndex].text;	
				direccion += "&codiZona=" + loc;
			}
	}
	else
	{
		if(document.BuscVueloHotel.loca_inter.selectedIndex=='0')
		{
			direccion += "&descripcion=" + document.BuscVueloHotel.ciudad.options[document.BuscVueloHotel.ciudad.selectedIndex].text;	
			direccion += "&codiZona=" + loc;
		}
		else
		{
			if(document.BuscVueloHotel.loca_inter.selectedIndex==(document.BuscVueloHotel.loca_inter.length - 1))
			{	
				direccion += "&descripcion=" + encuentra_pais(com,rutaxml_destinos);	
				direccion += "&codiZona=T";
			}
			else
			{
		  		direccion += "&descripcion=" + document.BuscVueloHotel.loca_inter.options[document.BuscVueloHotel.loca_inter.selectedIndex].text;	
				direccion += "&codiZona=" + loc;
			}
		}
	}	
	
	return direccion;
}

function encuentra_pais(com,ruta)
{
	var i=0;
	var descripcion_pais='';
	var xmldescripcion = null;
	var xmldescripcion = xmlcomunidad_provincia.getElementsByTagName('comunidad');
	var longitud= xmldescripcion.length;
	for (i=0; i<longitud; i++)
	{
			if (xmldescripcion[i].getAttribute('cod_comunidad')== com)
			{
				descripcion_pais=xmldescripcion[i].getAttribute('nombre_comunidad');
			}
	}
	return descripcion_pais;
}




function damefolleto (folleto,entrada,rutaxml){

	var aj=ajax(rutaxml);

if (navigator.appName != 'Microsoft Internet Explorer' )
	{
    	if(!aj)
		{
        	alert('error');
			return;
    	}
    	aj.open('get',rutaxml,false);
    	aj.onreadystatechange=function(){
        if(aj.readyState==4){
            xmlfechas=aj.responseXML;
        }
         
    	}
    	aj.send(null);
	}
	else
	{
		xmlfechas=aj;
	}
var folletos= xmlfechas.getElementsByTagName('FOLLETO');
var fecini, fechfin;
var total = folletos.length;
var i=0,encontrado = 0;
var folleto_actual;
entrada = fecha_cal (entrada)

while (i<total && encontrado == 0){
	if (folletos[i].getAttribute('nombre') == folleto){
		fechini = folletos[i].getAttribute('inicio');
		fechini = fechini.substr (6,2) + "/" + fechini.substr (4,2) + "/" + fechini.substr (0,4)
		fechini = fecha_cal (fechini)
		fechfin = folletos[i].getAttribute('fin');
		fechfin = fechfin.substr (6,2) + "/" + fechfin.substr (4,2) + "/" + fechfin.substr (0,4)
		fechfin = fecha_cal (fechfin)
		if (entrada > fechini && entrada < fechfin) folleto_actual = folletos[i].getAttribute('codfolleto');
	}
	i++;
}
return folleto_actual;
}

function cambiaFecha (fecha){
	var Fentrada=fecha.split('/');
	if(Fentrada[1] < 10)
		Fentrada[1]=Fentrada[1];
	if(Fentrada[0] < 10)
		Fentrada[0]=Fentrada[0];
		
	var fechaFinal = Fentrada[2] + Fentrada[1] + Fentrada[0];
	
	return fechaFinal;
}

function controlaEdadNinos (ninos,direccion)
{

	switch (ninos)
	{
		case 1:	
				direccion += "&edadesNinos1=" + (parseInt(document.BuscVueloHotel.nin1.value)+1) + '|';	
				return direccion
				break;
		case 2:	
				direccion += "&edadesNinos1=" + (parseInt(document.BuscVueloHotel.nin1.value)+1) + '|' + (parseInt(document.BuscVueloHotel.nin2.value)+1) + '|';
				return direccion
				break;
		case 3: 
				direccion += "&edadesNinos1=" + (parseInt(document.BuscVueloHotel.nin1.value)+1) + '|' + (parseInt(document.BuscVueloHotel.nin2.value)+1) + '|' + (parseInt(document.BuscVueloHotel.nin3.value)+1) + '|';
				return direccion
				break;
	}
}

