/*--------------------------------Definido, diseñado y creado por Rubén Martín Guerrero 15/06/2008------------------------------*/

var xmlcomunidad_provincia = null;
var xmllocalidad = null;
var xmlorigenes = null;


/*---------------------------------------------Funciones Destino Sólo Hotel------------------------------------------------------*/

function pinta_comunidades (BuscHotel,texto_inicio,rutaxml){//Pinta comunidades o paises sin ningun tipo de control

//Bloque de codigo que llama a funcion para generar objeto ajax  y recupera la informacion del xml indicado	

	var aj=ajax();
	
    if(!aj){
        alert('error');
        return;
    }

    aj.open('get',rutaxml,false);

	aj.send(null); 

	xmlcomunidad_provincia=aj.responseXML.documentElement;

//Fin bloque codigo ajax

	var comunidades= xmlcomunidad_provincia.getElementsByTagName('comunidad');
	var long_com = comunidades.length;
	var i=0;

	BuscHotel.options[0] = new Option(texto_inicio,'')

	for (i=0; i<long_com; i++)
	{
		BuscHotel.options[i+1]=new Option(comunidades[i].getAttribute('nombre_comunidad'),comunidades[i].getAttribute('cod_comunidad'));
	}

}


function pinta_provincias_com (BuscHotel,cod_comunidad,texto_inicio,rutaxml){//Pinta provincias o ciudad teniendo encuenta el pais
//Bloque de codigo que llama a funcion para generar objeto ajax  y recupera la informacion del xml indicado	
	var aj=ajax();
	
    if(!aj){
        alert('error');
        return;
    }

    aj.open('get',rutaxml,false);

	aj.send(null); 

	xmlcomunidad_provincia=aj.responseXML.documentElement;

//Fin bloque codigo ajax

	var areas = new Array ();
	var pos_array = 0;
	var provincias= xmlcomunidad_provincia.getElementsByTagName('provincia');
	var long_pro = provincias.length;

	var i=0;

	BuscHotel.options[0] = new Option(texto_inicio,'')

	for (i=0; i<long_pro; i++)
	{
		if(provincias[i].getAttribute('cod_comunidad')==cod_comunidad)
		{
//alert(provincias[i].getAttribute('folleto'));
//alert(provincias[i].getAttribute('cod_comunidad'));
			if(provincias[i].getAttribute('folleto').indexOf('MC')!=-1 || provincias[i].getAttribute('folleto').indexOf('II')!=-1)
			//if(provincias[i].getAttribute('folleto').indexOf('MC')!=-1)
			{
				areas[pos_array]=provincias[i].getAttribute('nombre_provincia') + "-" + provincias[i].getAttribute('cod_provincia');
				pos_array=pos_array+1;
			}
		}
	}
	areas = ordenaArray (areas);
	pintaArea (areas,BuscHotel);	

}

function pinta_provincias (BuscHotel,texto_inicio,rutaxml){

//Bloque de codigo que llama a funcion para generar objeto ajax  y recupera la informacion del xml indicado	
	var aj=ajax();
	
    if(!aj){
        alert('error');
        return;
    }

    aj.open('get',rutaxml,false);

	aj.send(null); 

	xmlcomunidad_provincia=aj.responseXML.documentElement;

//Fin bloque codigo ajax
	var areas = new Array ();
	var pos_array = 0;
	var provincias= xmlcomunidad_provincia.getElementsByTagName('provincia');
	var long_pro = provincias.length;

	var i=0;

	BuscHotel.options[0] = new Option(texto_inicio,'')

	for (i=0; i<long_pro; i++)
	{	
		if(provincias[i].getAttribute('folleto').indexOf('MC')!=-1 || provincias[i].getAttribute('folleto').indexOf('II')!=-1)
		//if(provincias[i].getAttribute('folleto').indexOf('MC')!=-1)
		{
			areas[pos_array]=provincias[i].getAttribute('nombre_provincia') + "-" + provincias[i].getAttribute('cod_provincia');
			pos_array=pos_array+1;
		}
	}

	areas = ordenaArray (areas);
	pintaArea (areas,BuscHotel);	
}

function pintaArea (areas,BuscHotel){
	var long_area = areas.length;
	var dato;

	for (i=0; i<long_area; i++)	{
		dato = areas[i].split ("-");
		BuscHotel.options[i+1]=new Option(dato[0],dato[1]);
//alert(BuscHotel.options[i+1].value);
	}
}

function pinta_localidad (BuscHotel,cod_provincia,texto_inicio,ruta_localidades){
	borracombo(BuscHotel);
if(cod_provincia.selectedIndex==0)
{
	BuscHotel.options[0] = new Option('(Opcional)','')
}
else
{
	
	var encontrado=0;
	var folletos="";
	var ruta_xml=ruta_localidades + cod_provincia.value + ".xml";

//Bloque de codigo que llama a funcion para generar objeto ajax  y recupera la informacion del xml indicado	
	var aj=ajax();
	
    if(!aj){
        alert('error');
        return;
    }

    aj.open('get',ruta_xml,false);

	aj.send(null); 

	xmllocalidad=aj.responseXML.documentElement;

//Fin bloque codigo ajax

	var localidades= xmllocalidad.getElementsByTagName('localidad');
	var long_loc = localidades.length;
	var i=0;
	var j=1;

	BuscHotel.options[0] = new Option(texto_inicio,'')

	for (i=0; i<long_loc; i++)
	{
		if(localidades[i].getAttribute('vendible')=='SI' )
		{
			if(localidades[i].getAttribute('folleto').indexOf('MC')!=-1 || localidades[i].getAttribute('folleto').indexOf('II')!=-1)
			//if(localidades[i].getAttribute('folleto').indexOf('MC')!=-1)
			{
				BuscHotel.options[j]=new Option(localidades[i].getAttribute('nombre_localidad'),localidades[i].getAttribute('cod'));
				if (encontrado != 0)
				{
					folletos += ',';
				}
				folletos += localidades[i].getAttribute('folleto');
				encontrado=1;
				j=j+1;
			}
		}
	}
	if (encontrado != 0)
	pintaFolletos (folletos,document.BuscHotel.folletovalido)
}
}


function controlaZona (zona,BuscHotel){

	borracombo(BuscHotel);
	var localidades= xmllocalidad.getElementsByTagName('localidad');
	var long_loc = localidades.length;
	var i=0;

	for (i=0; i<long_loc; i++)
	{
		if(localidades[i].getAttribute('cod')==zona)
			pintaFolletos(localidades[i].getAttribute("folleto"),BuscHotel);
	}
}

function pintaFolletos (folletos,BuscHotel){

	var folleto = folletos.split(",");
	var tot_folletos = folleto.length;
	var folletos_pintados = new Array ();
	var cont_folleto;
	var cont_select = 1
	var encontrado;

	borracombo (BuscHotel);
	///BuscHotel.options[0] = new Option("(Folletossss)","")

	for (i=0; i<tot_folletos;i++){
		if (folleto [i] != 'BH' && folleto [i] != 'FS'){
			cont_folleto = folletos_pintados.length;
			if (cont_folleto == 0){
				pintaNombreFolleto(BuscHotel,folleto[i],cont_select);
				cont_select++;
				folletos_pintados [cont_folleto] = folleto [i];
			}
			else
			{
				encontrado = 0;
				for (j=0;j<cont_folleto;j++){
					if (folleto[i] == folletos_pintados[j]) encontrado++
				}
				if (encontrado == 0){
					pintaNombreFolleto(BuscHotel,folleto[i],cont_select);
					cont_select++;
					folletos_pintados [cont_folleto] = folleto [i];	
				}
			}
		}
	}
}

function pintaNombreFolleto (BuscHotel,folleto,cont){
	/*switch (folleto){
		case "EM": 	BuscHotel.options[cont]=new Option("Urbano",folleto);	
					break;
		case "FM": 	BuscHotel.options[cont]=new Option("Hotel de Montaña",folleto);	
					break;
		case "FR": 	BuscHotel.options[cont]=new Option("Turismo Rural",folleto);	
					break;
		case "MC": 	BuscHotel.options[cont]=new Option("Hotel en la playa",folleto);	
					break;
		case "FP": 	BuscHotel.options[cont]=new Option("Parador",folleto);	
					break;
		case "PA": 	BuscHotel.options[cont]=new Option("Port Aventura",folleto);	
					break;
		case "II": 	BuscHotel.options[cont]=new Option("Islas",folleto);	
					break;
		case "PE": 	BuscHotel.options[cont]=new Option("Picos de Europa",folleto);	
					break;
		case "CP": 	BuscHotel.options[cont]=new Option("Hoteles con Encanto",folleto);	
					break;
		case "SB": 	BuscHotel.options[cont]=new Option("Salud y Belleza",folleto);	
					break;
		case "ED": 	BuscHotel.options[cont]=new Option("Disney",folleto);	
					break;
	}*/
}

/*----------------------------------------------------Funciones Neutras-----------------------------------------------------------*/

function recupera_comunidad_pais(provincia_seleccionada)//al acceder directamente a pintar las provincias, cuando estas cambiam es necesario recuperar su comunidad
{
if(provincia_seleccionada!="")
{
	var provincias = xmlcomunidad_provincia.getElementsByTagName('provincia');
	var long_pro = provincias.length;
	var i=0;
	var encontrado=0;

	while(i<=long_pro && encontrado==0)
	{
		if(provincias[i].getAttribute('cod_provincia')==provincia_seleccionada)
		{
			document.BuscHotel.comunidad_pais.value=provincias[i].getAttribute('cod_comunidad');
			encontrado=1;
		}
		i++;
	}
}
else
{
	document.BuscHotel.comunidad_pais.value="";
}
}

function inicializa_destino(BuscHotel)
{
	//BuscHotel.selectedIndex=0;
}

function borracombo (BuscHotel){
	if(BuscHotel){
		while (BuscHotel.length> 0) {
			BuscHotel.remove(0);
		} 
	}
}

function ordenaArray (areas){
	var cambio;
	var aux;
	var i =0;
	var j=0;

	while(i < areas.length && cambio!=0){
		cambio=0;
		for(j=0;j<areas.length-1;j++){
			if(areas[j]>areas[j+1]){
				aux=areas[j];
				areas[j]=areas[j+1];	
				areas[j+1]=aux;
				cambio=1;
			}
		}
		i++;	
	}
	return areas;
}
