var bFechasLibres=false;
var bCaracteristicas=false;
var list_car="";
var lista_url_provincias = new Array("","alava/alava.php","albacete/albacete.php","alicante/alicante.php","almeria/almeria.php","avila/avila.php","badajoz/badajoz.php","baleares/baleares.php","barcelona/barcelona.php","burgos/burgos.php","caceres/caceres.php","cadiz/cadiz.php","castellon/castellon.php","ciudad_real/ciudad_real.php","cordoba/cordoba.php","coruna/coruna.php","cuenca/cuenca.php","gerona/gerona.php","granada/granada.php","guadalajara/guadalajara.php","guipuzcoa/guipuzcoa.php","huelva/huelva.php","huesca/huesca.php","jaen/jaen.php","leon/leon.php","lerida/lerida.php","rioja/rioja.php","lugo/lugo.php","madrid/madrid.php","malaga/malaga.php","murcia/murcia.php","navarra/navarra.php","orense/orense.php","asturias/asturias.php","palencia/palencia.php","laspalmas/laspalmas.php","pontevedra/pontevedra.php","salamanca/salamanca.php","santacruzdetenerife/santacruzdetenerife.php","cantabria/cantabria.php","segovia/segovia.php","sevilla/sevilla.php","soria/soria.php","tarragona/tarragona.php","teruel/teruel.php","toledo/toledo.php","valencia/valencia.php","valladolid/valladolid.php","vizcaya/vizcaya.php","zamora/zamora.php","zaragoza/zaragoza.php","portugal/portugal.php","portugal/minhoportoedouro/minhoportoedouro.php","portugal/trasosmontes/trasosmontes.php","portugal/beiras/beiras.php","portugal/lisboaevaledotejo/lisboaevaledotejo.php","portugal/alentejo/alentejo.php","portugal/algarve/algarve.php","portugal/azores/azores.php","portugal/madeira/madeira.php");

rules_buscador = {
	init:function () {
		$("#subBuscador").focus();
		var fe = $("form#formCasasCercanas input[name=fecha_entrada]").val();
		var fs = $("form#formCasasCercanas input[name=fecha_salida]").val();
		var cr = $("form#formCasasCercanas input[name=cars]").val();
				
		if ((fe != '' && fs != '') && 
			(fe != undefined && fs != undefined))
			bFechasLibres=true;
			
		if (bFechasLibres) 
			$("#ctnFLibres").css('display','inline');
		else
			$("#ctnFLibres").css('display','none');

		rules_buscador.changeIcon("ctnFLibres","ic_fl","init");
		
		if (cr != '' && cr != undefined)
			bCaracteristicas=true;
			
		if (bCaracteristicas) 
			$("#ctnCarac").css('display','inline');
		else
			$("#ctnCarac").css('display','none');

		rules_buscador.changeIcon("ctnCarac","ic_mc","init");
			
		//EVENTOS
		//-- Submitiendo el formulario principal
		$("#subBusCasasCercanas").click(function() {
			var page = $("form#formCasasCercanas input[name=page]").val();
			var tb = $("form#formCasasCercanas input[name=tb]").val();
			var pest = $("form#formCasasCercanas input[name=pest]").val();
			var fe = $("form#formCasasCercanas input[name=fecha_entrada]").val();
			var fs = $("form#formCasasCercanas input[name=fecha_salida]").val();
			var tipo_alquiler = $("form#formCasasCercanas select[name=tipo_alquiler] option:selected").val();
			var capacidad = $("form#formCasasCercanas select[name=capacidad] option:selected").val();
			var precio = $("form#formCasasCercanas select[name=precio] option:selected").val();
			var nr_km = $("#formCasasCercanas select[name=nr_km]").val();
			var pr = $("#formCasasCercanas select[name=nr_provincia]").val();
    		var po = $("#formCasasCercanas select[name=nr_poblacion]").val();
    		var cars="";
    		var queHacer = $("#formCasasCercanas input[name=queHacer]").val();
    		var destino="";
			var parametros="";
			var dataAjax="";
			var url_provincia = $("#formCasasCercanas input[name=url_prov]").val();
			var enlaceProvincia="";
			var prov_destino = "";
			var params="";
			
			if (pr > 0)
				prov_destino = lista_url_provincias[pr];
				
			if (url_provincia == "" || url_provincia==undefined) {
				enlaceProvincia="/casasrurales/" + prov_destino;
			}
			else {
				if (prov_destino==url_provincia)
   					enlaceProvincia="/casasrurales/" + url_provincia;
   				else
   					enlaceProvincia="/casasrurales/" + prov_destino;
   			}

    		switch (po) {
    		case "":
    			if (tb=="cc") { 
   					aviso("Debe seleccionar una poblacion");
   					return;
   				}
   				break;
   			case "provincia":
    			destino = lista_url_provincias[pr];
 			    location.href=destino;
    			break;
    		}

			//Formateando Fechas
			if ( (fe != '' && fs != '') && 
				 (fe != undefined && fs != undefined)
			    ) {
				fe = fe.substr(6,4) + fe.substr(3,2) + fe.substr(0,2);
				fs = fs.substr(6,4) + fs.substr(3,2) + fs.substr(0,2);
				if (fe > fs) {
					aviso("La fecha de entrada es mayor que la fecha de salida");
					return;
				}
				$("form#formCasasCercanas input[name=fecha_entrada]").val(fe);
				$("form#formCasasCercanas input[name=fecha_salida]").val(fs);
				//Grabando la busqueda por Fechas
				parametros="fecha_entrada="+fe+"&fecha_salida="+fs;
		        dataAjax = "modulo=GENFechasMasBuscadasOU&params="+escape(parametros);
            
        		$.ajax({ url: "/modulo/index.php", cache:false, data: dataAjax });
				
			}
			
			//Creacion enlace provincia	
			//este enlace es solo para salidas con el parametro queHacer 
			//igual a buscar, es decir, en el caso de 
			//una busqueda por id desde el backend sería un enlace entrate 
			//ya que desde el script de la provincia no se puede realizar
			//otra busqueda por id del alojamiento y para la busqueda por
			//nombre de la casa o poblacion (buscador lateral izquierdo) se
			//habilita otro código js de control.    		
			
			if (page == "" || page == undefined)
				params += "/1";   			
			else 
				params += "/" + page;
			
			params += "/" + pest;
			
			if (tipo_alquiler == "" || tipo_alquiler == undefined)
				params += "/0";   			
			else
				params += "/" + tipo_alquiler;
			
			if (capacidad == "" || capacidad == undefined)
				params += "/0";   			
			else
				params += "/" + capacidad;
			
			if (precio == "" || precio == undefined)
				params += "/0";   			
			else
				params += "/" + precio;
				
			if (po == "" || enlaceProvincia == undefined)
				params += "/0";   			
			else
				params += "/" + po;

			if (nr_km == "" || nr_km == undefined)
				params += "/0";   			
			else
				params += "/" + nr_km;
			
			if (fe == "" || fe == undefined)
				params += "/0";   			
			else
				params += "/" + fe;
				   			
			if (fs == "" || fs == undefined)
				params += "/0";   			
			else
				params += "/" + fs;
			
			//obteniendo caracteristicas
			if ($("#ctnCarac").css('display')=='inline') {
				rules_buscador.formateandoCaracteristicas();
			}

			if (list_car == "" || list_car == undefined)
				params += "/0";   			
			else
				params += "/" + list_car;
	
			if (params == "/1/lt/0/0/0/0/0/0/0/0") params="";
			
    		location.href=enlaceProvincia+params;
    		
		});
		//-- Submitiendo el formulario lateral izquierdo por Casa,
		//-- poblacion
		$("#subBuscador").click(function() {
			var texto = $("#buscador input[name=texto]").val();			
			var url_provincia = $("#formCasasCercanas input[name=url_prov]").val();
   			var dondeBuscar = $("#buscador select[name=dondeBuscar] option:selected").val(); 
   			var enlace;
			
			switch (dondeBuscar) {
			case "provincia":
				enlace = "/casasrurales/" + url_provincia + "/" + escape(texto) + "/lt/buscarCP";
				break;
			default:
				enlace = "/casasrurales/buscador_general.php?queHacer=buscarCP&texto="+escape(texto);
				break;
			}
			location.href=enlace;	
			
		});
		//-- Submitiendo el formulario lateral izquierdo por Casa
		$("#subPorCasa").click(function() {
			
			var url_provincia = $("#formCasasCercanas input[name=url_prov]").val();
   			var enlaceProvincia="/casasrurales/" + url_provincia;
   			//No utilizo jquery en algunos casos debido a que no
   			//detecta los elementos en este form 
			var nombreCasa=document.buscarPorCasa.nombreCasa.value;

			if (document.selDonde.dondeBuscar.value=="provincia") {
				enlaceProvincia += "/" + nombreCasa + "/lt/buscarPorNombre";
				location.href=enlaceProvincia;
			}
			else {
				$("form#buscarPorCasa").submit();
			}
		});
		//-- Submitiendo el formulario lateral izquierdo por Poblacion
		$("#subPorPoblacion").click(function() {
			var url_provincia = $("#formCasasCercanas input[name=url_prov]").val();
   			var enlaceProvincia="/casasrurales/" + url_provincia;
   			//No utilizo jquery en algunos casos debido a que no
   			//detecta los elementos en este form 
			var nombrePoblacion=document.buscarPorDestino.nombrePoblacion.value;

			if (document.selDonde.dondeBuscar.value=="provincia") {
				enlaceProvincia += "/" + nombrePoblacion + "/lt/buscarPorPoblacion";
				location.href=enlaceProvincia;
			}
			else {
				$("form#buscarPorDestino").submit();
			}			
		});
		//Fechas Libres
		//-- imagen
		$("a#busFecLibresImage").click(function() {
			rules_buscador.changeIcon("ctnFLibres","ic_fl","click");
			rules_buscador.mostrarFechasLibres();
		});
		//-- texto
		$("a#busFecLibresText").click(function() {
			rules_buscador.changeIcon("ctnFLibres","ic_fl","click");
			rules_buscador.mostrarFechasLibres();
		});
		
		//Mas caracteristicas
		//-- imagen
		$("a#busMasCaracImage").click(function() {
			rules_buscador.changeIcon("ctnCarac","ic_mc","click");
			rules_buscador.mostrarCaracteristicas();
		});
		//-- texto
		$("a#busMasCaracText").click(function() {
			rules_buscador.changeIcon("ctnCarac","ic_mc","click");
			rules_buscador.mostrarCaracteristicas();
		});
		//Pestañas
		$("a.pestania").click(rules_buscador.controlPestanias);
		//
		
		//Paginacion
		$("a.link_pag").click(rules_buscador.controlPag);
	},
	formateandoCaracteristicas: function() {
		var arr;
		var nom_ch;
		var id_car;
		var sep="";
		
		list_car="";
		$("form#mascar input:checkbox:checked").each(function (i){
           	arr = this.name.split("_");
           	if (arr) {
               	nom_ch = arr[0];
               	id_car = arr[1];
               	if (nom_ch == "car") {
               		list_car += sep.concat(id_car);
               	}
               	sep="-";
	                }
		});
	},
	controlPestanias: function() {
		var arr;
		var pest_sel;
		
		arr = this.id.split("_"); //pest_lt y pest_mp como valores posibles
		if (arr) 
			pest_sel = arr[1];	
			
		if (pest_sel == undefined)
			pest_sel="lt";

		$("form#formPestanias input[name=pest]").val(pest_sel);
		$("form#formPestanias").submit();
	},
	controlPag: function() {
		var page = $("form#pag_bus input[name=page]").val();
		var np   = $("form#pag_bus input[name=np]").val();
		var casas_por_pagina = 25;
		var pages = parseInt(np / casas_por_pagina) + 1;
		
		switch (this.id) {
		case "page_back": //Pag anterior
			if (page > 1) page--;
			else page = 1;
			break;	
		case "page_last": //ultima Pag
		    page = pages;
			break;	
		case "page_forward": //Pag siguiente
			if (page < pages) page++;
			else page = pages;
			break;	
		case "page_link": //Enlace numerico	
			page = this.innerHTML;
			break;	
		}
		$("form#pag_bus input[name=page]").val(page);
		$("form#pag_bus").submit();
	},
	changeIcon: function(ctn,icon,ev) {
		var arr,path_icon, new_path_icon;
		var img_icon;
		var statusCtn = $("div#"+ctn).css("display");
		var imgOpen  = "/casasrurales/imagenes/mas.gif";
		var imgClose = "/casasrurales/imagenes/menos.gif";
		
		if (ev=="init") {
			if (statusCtn=="inline") 
				$("img#"+icon).attr("src",imgClose);
			else 
				$("img#"+icon).attr("src",imgOpen);
		}
		else {
			if (statusCtn=="inline") 
				$("img#"+icon).attr("src",imgOpen);
			else 
				$("img#"+icon).attr("src",imgClose);
		}
		
	},
	controlCtn: function(ctn,operation) {
		var closeCtn=false;

		//Hace click sobre el enlace
		if (operation == "clickLink") { 
			if ($("#"+ctn).css('display')=='inline') {
          		$("#"+ctn).css('display','none');
          		closeCtn=true;
         		if (ctn=="ctnCarac") {
          			$("form#formCasasCercanas input[name=cars]").val("");
          			$("p#titcar").css("margin-bottom","20");

          		}
          		else {
          			$("form#formCasasCercanas input[name=fecha_entrada]").val("");
					$("form#formCasasCercanas input[name=fecha_salida]").val("");
          		}
          	}
        }
   		else if (operation == "callAjax")  {
	        //Viene de realizar la llamada ajax
          	$("#"+ctn).css('display','inline');
        }
		
		return closeCtn;
	},
	mostrarFechasLibres: function(evento) {
		var view = "casas_cercanas";
		var parametros="view="+view;
		var ret_control=false;
		
        dataAjax = "modulo=BUSFechasLibresOU&params="+escape(parametros);
            
        //Control de contenedora
        ret_control = rules_buscador.controlCtn("ctnFLibres","clickLink");
        if (ret_control) return;

        ejecucionFLibOK = function(html){
            $("#ctnFLibres").html(html);
	        //Control de contenedora
	        rules_buscador.controlCtn("ctnFLibres","callAjax");
        }
        $.ajax({ url: "/modulo/index.php",  data: dataAjax, success: ejecucionFLibOK });
	},
	mostrarCaracteristicas: function() {
		var view = "";
		var parametros="";
		var nr_provincia="";
		var ret_control=false;

		var tb = $("form#formCasasCercanas input[name=tb]").val();
		switch (tb) {
		case "cc":
			view = "casas_cercanas";
			break;
		case "of":
			view="ofertas";
			break;
		case "rn":
			view="recom_norte";
			break;
		case "rs":
			view="recom_sur";
			break;
		case "pr":
			view="provincia";
		case "ge":
			view="general";
			break;
		case "pp":
			view="portada_portugal";
			break;
		}
		nr_provincia = $("form#formCasasCercanas select[name=nr_provincia]").val();
		parametros = "view="+view+"&nr_prov="+nr_provincia;		
        dataAjax = "modulo=BUSCaracteristicasOU&params="+escape(parametros);

        //Control de contenedora
        ret_control = rules_buscador.controlCtn("ctnCarac","clickLink");
        if (ret_control) return;

        ejecucionCarOK = function(html){
            $("#ctnCarac").html(html);
            rules_buscador.controlCtn("ctnCarac","callAjax");
        }
        $.ajax({ url: "/modulo/index.php",  data: dataAjax, success: ejecucionCarOK });
	}	
}
$(document).ready(rules_buscador.init);

function mostrar_calendario(p_item, pos_x ,pos_y , fg_color, bg_color,absPos){
  	SEL1=null;
	SEL2=null;
	SEL3=null;

  	var fecha_actual;
  	eval("fecha_actual=document."+p_item+".value");

  	var regexp = /^[0123][0123456789][/][01][0123456789][/][12][09][0123456789][0123456789]$/;

	if (fecha_actual=="" || regexp.test(fecha_actual) == false){
    	show_calendar(p_item, null , null, null, pos_x, pos_y, fg_color, bg_color, SEL1, SEL2, SEL3, absPos);
	}
	else {
		//abrir el calendario con mes y año insertado

  		var partes=fecha_actual.split("/");
    	var mes=partes[1];
    	if(mes.indexOf("0")==0){
    		mes=mes.substr(1,1);
    	}
    	//function show_calendar cuanta los meses desde 0
    	mes=mes-1;
    	var anyo=partes[2];
    	show_calendar(p_item, mes, anyo, null, pos_x, pos_y, fg_color, bg_color, SEL1, SEL2, SEL3, absPos);
	}
}

function rellenaEntradaSalida(entrada, salida){
	document.getElementById("fecha_entrada").value=entrada;
	document.getElementById("fecha_salida").value=salida;
}


function abrirVentana(link, nombre, w, h, scroll) {
    var winl = (screen.width - w) / 2;
    var wint = (screen.height - h) / 5;
    winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',toolbar=no,location=no,status=no,menubar=no,scrollbars='+scroll+',resizable=no'
		win = window.open(link, nombre, winprops)
		if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}

if (self != top) {
    if (document.images)
        top.location.replace(window.location.href);
    else
        top.location.href = window.location.href;
}

function abrir(im,ancho,alto)
{
	imagen=im;
	anchoi=ancho;
	altoi=alto;
	window.open(imagen,ancho+alto,'toolbar=no,location=no,directories=no,status=no, menubar=no,scrollbars=yes,resizable=yes,width='+ancho+',height='+alto+',top=0,left=0');
}

function veteA(combo) {
    donde= combo.options[combo.selectedIndex].value;
	  if (donde!="#") window.location.href=donde;
}

function comparaFechas(inicio, fin){

	 var sinicio = inicio.split("/");
	 var sfin = fin.split("/");
	 var timestamp_inicio = Date.UTC(sinicio[2],sinicio[1],sinicio[0]);
	 var timestamp_fin = Date.UTC(sfin[2],sfin[1],sfin[0]);
	 if (timestamp_inicio>=timestamp_fin){
	   	return false;
	 }
	 else return true;
}
