﻿
function validarHoteles() 
{
   
    document.getElementById("layerError").style.visibility="hidden";
    document.getElementById("destinoAlert").style.visibility="hidden";
    document.getElementById("fechaAlert").style.visibility="hidden";
    document.getElementById("fechaHastaAlert").style.visibility="hidden";

	if(!hotel_poblacion_check()) {
 	    document.getElementById("layerError").style.visibility="visible";
 	    document.getElementById("destinoAlert").style.visibility="visible";
 	    document.getElementById("layerError").style.display="";
 	    document.getElementById("destinoAlert").style.display="";
		return;
    }
    if(!hotel_combo_check()) {
 	    document.getElementById("layerError").style.visibility="visible";
 	    document.getElementById("fechaAlert").style.visibility="visible";
 	    document.getElementById("layerError").style.display="";
 	    document.getElementById("fechaAlert").style.display="";
		return;
    }
    if(!hotel_combo_fechaHasta()) {
 	    document.getElementById("layerError").style.visibility="visible";
 	    document.getElementById("fechaHastaAlert").style.visibility="visible";
 	    document.getElementById("layerError").style.display="";
 	    document.getElementById("fechaHastaAlert").style.display="";
		return;
    }
    
    var msg='';
 
	var poblacion = document.getElementById("codigoDestino").value
	
	var typedest = document.getElementById("tipoDestino").value
	//var name = document.getElementById("inputString").value
	var fechaDesde = cambiarFechaHotel(document.getElementById("fechaDesde").value)
	var fechaHasta = cambiarFechaHotel(document.getElementById("fechaHasta").value)
	var noches = document.getElementById("noches").value;
	var origen='';
	var origen=document.getElementById("cmbOrigen").value
	var marca='';
	var marca=document.getElementById("cmbMarcas").value
	loading2();
	//var url='ofertas.aspx?pob=' + poblacion + '&name=' + name + '&tdest=' + typedest + '&FechDesd=' + fechaDesde +'&FechHast=' + fechaHasta + '&n=' + noches + '&origen=' + origen;
	//var url='ofertas.aspx?pob=' + poblacion + '&tdest=' + typedest + '&FechDesd=' + fechaDesde +'&FechHast=' + fechaHasta + '&n=' + noches + '&origen=' + origen;
	
	 var url = GetResultsRwPathWithDates(poblacion, name, typedest, fechaDesde, fechaHasta, noches,origen,marca);
	//var url='http://vacaciones.muchoviaje.com/ofertas.aspx?pob=' + poblacion + '&name=' + name + '&tdest=' + typedest + '&FechDesd=' + fechaDesde +'&FechHast=' + fechaHasta + '&n=' + noches + '&origen=' + origen;
	//alert(url)
	//url = "http://localhost:3306/Vacaciones/" + url;
    document.getElementById("busquedaAvanzada").style.visibility="hidden";
    document.getElementById("busquedaAvanzada").style.display="none";
   
    var navegador = navigator.appName
 
     document.getElementById("codigoDestino").value='';
    url="http://vacaciones.muchoviaje.com/" + url 

    document.location.href=url;

	return false;
	}
function fechaHotelCB(fecha) {
    if(fecha){
    
        document.getElementById("fechaEntrada").value= fecha;
        resetCombos();
        document.getElementById("fechaEntradaMos").value=fecha + ", "+ GetDiaNombre(fecha);
        fechaHotelVuelta();
    };
    hidepop();
	submitCheck();
}
function fechaHotelVuelta() {

    fecha =document.getElementById("fechaEntrada").value;
    n = parseInt(document.getElementById("noches").value);
    var fArr = fecha.split("/");
    var d = fArr[0];
    var m = fArr[1]-1;
    var y = fArr[2];
    var fVuelta=new Date();
    fVuelta.setFullYear(y,m,d);
    fVuelta.setDate(fVuelta.getDate()+n);
    fVuelta = fVuelta.getDate() + "/" + (fVuelta.getMonth()+1) + "/" + fVuelta.getFullYear();
    $("#fechaVuelta").html(fVuelta + ", "+ GetDiaNombre(fVuelta));

}


function hotel_poblacion_check() {

  	if ($("#codigoDestino").attr("value"))
  	{
        p = $("#codigoDestino").attr("value");
    }
  	else
  	{
        p = '';
  	}
    if (p == 'Poblacion' || p =='' || p.charCodeAt(0) == 32)
    { 
        return  false;
    }
    else
    { 
        return  true;
    }
   
}

function LTrim( value ) {
	var re = /\s*((\S+\s*)*)/;
	return value.replace(re, "$1");
}

function RTrim( value ) {
	var re = /((\s*\S+)*)\s*/;
	return value.replace(re, "$1");
}
function trim( value ) {
	return LTrim(RTrim(value));
}
function GetDiaNombre(fecha) {
	//fecha tiene que estar en formato dd/mm/yy o d/m/yy o yyyy
	m = fecha.match(/^(\d*)(\/?)(\d*)(\2)(\d\d)?(\d\d)$/);
	m[1] = mLength(m[1]); // 6 -> 06 dia
	m[3] = mLength(m[3]); // 6 -> 06 mes
	m[5] = yLength(m[5]); // 07 -> 2007 anio
	d =["Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado","Domingo"];
	return d[new Date(m[5] + m[6] + "/" + m[3] + "/" + m[1]).getDay()];
}
function yLength(y) {
	y = (parseInt(y) < 100 ? "20" + y : y);
	return y;
}
function mLength(m) {
	m = (m.length == 1 ? "0" + m : m);
	return m;
}
function cambiarFechaHotel(fecha) {
if (fecha!='' && fecha!=undefined)
{
	var iArr = fecha.split('/');
	y = yLength(iArr[2]);
	m = mLength(iArr[1]);
	d = mLength(iArr[0]);
	fecha = y + '-' + m + '-' + d;
	}
	
	return fecha;
}
function quitarTilde(str) {
	rep ={"á":"-aacute","é":"-eacute","í":"-iacute","ó":"-oacute","ú":"-uacute","Á":"-Aacute","É":"-Eacute","Í":"-Iacute","Ó":"-Oacute","Ú":"-Uacute","ñ":"-ntilde","Ñ":"-Ntilde"};
	for(var p in rep) {
		str=str.replace(p,rep[p]);
	}
	return str;
}

//funciones para probar si el formulario puede submit o no
function hotel_combo_check() {
if ($("#fechaDesde").attr("value")!='' && $("#fechaDesde").attr("value")!=undefined)
{
	probarFecha = ($("#entradaD").attr("value") + "/" + $("#entradaM").attr("value") + "/" + $("#entradaY").attr("value"));
	var reg = /^((((0?[1-9]|[12]\d|3[01])[\.\-\/](0?[13578]|1[02])[\.\-\/]((1[6-9]|[2-9]\d)?\d{2}))|((0?[1-9]|[12]\d|30)[\.\-\/](0?[13456789]|1[012])[\.\-\/]((1[6-9]|[2-9]\d)?\d{2}))|((0?[1-9]|1\d|2[0-8])[\.\-\/]0?2[\.\-\/]((1[6-9]|[2-9]\d)?\d{2}))|(29[\.\-\/]0?2[\.\-\/]((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00)))|(((0[1-9]|[12]\d|3[01])(0[13578]|1[02])((1[6-9]|[2-9]\d)?\d{2}))|((0[1-9]|[12]\d|30)(0[13456789]|1[012])((1[6-9]|[2-9]\d)?\d{2}))|((0[1-9]|1\d|2[0-8])02((1[6-9]|[2-9]\d)?\d{2}))|(2902((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00))))$/;

    if (probarFecha.match(reg)) {
		//probar fecha es mas que ayer y menos que hoy+334
		f =  new Date($("#entradaM").attr("value") + "/" + $("#entradaD").attr("value") + "/" + $("#entradaY").attr("value"));
		var fArr = $("#fechaHoy").attr("value").split("/");
		hoy = new Date(fArr[1] + "/" + fArr[0] + "/" + fArr[2]);
		diferenciaDias = Math.round((f - hoy)/(24*60*60*1000));
		if(diferenciaDias < -1 ) {
			return false;
		} else {
			return true
        }
    } else {
        return false;
    } 
    }
    else
    {
    return true
    }
}
function hotel_combo_fechaHasta() {
    if ($("#fechaHasta").attr("value")!='' && $("#fechaHasta").attr("value")!=undefined)
    {
	    probarFecha = ($("#hastaD").attr("value") + "/" + $("#hastaM").attr("value") + "/" + $("#hastaY").attr("value"));
	    var reg = /^((((0?[1-9]|[12]\d|3[01])[\.\-\/](0?[13578]|1[02])[\.\-\/]((1[6-9]|[2-9]\d)?\d{2}))|((0?[1-9]|[12]\d|30)[\.\-\/](0?[13456789]|1[012])[\.\-\/]((1[6-9]|[2-9]\d)?\d{2}))|((0?[1-9]|1\d|2[0-8])[\.\-\/]0?2[\.\-\/]((1[6-9]|[2-9]\d)?\d{2}))|(29[\.\-\/]0?2[\.\-\/]((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00)))|(((0[1-9]|[12]\d|3[01])(0[13578]|1[02])((1[6-9]|[2-9]\d)?\d{2}))|((0[1-9]|[12]\d|30)(0[13456789]|1[012])((1[6-9]|[2-9]\d)?\d{2}))|((0[1-9]|1\d|2[0-8])02((1[6-9]|[2-9]\d)?\d{2}))|(2902((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00))))$/;
        if (probarFecha.match(reg)) 
        {
		    //probar fecha es mas que ayer y menos que hoy+334
		    f =  new Date($("#hastaM").attr("value") + "/" + $("#hastaD").attr("value") + "/" + $("#hastaY").attr("value"));
		    var fArr = $("#fechaHoy").attr("value").split("/");
		    hoy = new Date(fArr[1] + "/" + fArr[0] + "/" + fArr[2]);
		    diferenciaDias = Math.round((f - hoy)/(24*60*60*1000));
		    if(diferenciaDias < -1 ) 
		    {
			    return false;
		    } 
		    else 
		    {
		        diferenciaDias=0;
      		    var fArr = $("#fechaDesde").attr("value").split("/");
		        hoy = new Date(fArr[1] + "/" + fArr[0] + "/" + fArr[2]);
		        diferenciaDias = Math.round((f - hoy)/(24*60*60*1000));
                if(diferenciaDias < -1 ) 
		        {
			        return false;
		        } 
		        else 
		        {
		            return true;
                }
		    }
        } 
        else 
        {
            return false;
        } 
    }
    else{return true}

}




function loading2() {
    document.getElementById("global").style.visibility="hidden";
 	document.getElementById("Espera").style.visibility="visible";
    document.getElementById("Espera").style.display="inline";

}
function pop(pg,t,w,h) {
	window.open(pg,t,'scrollbars=yes,toolbar=no,status=no,resizable=no,width=' + w + ',height=' + h);
}
function combo(disp) {
    //apagar o mostrar combos (en ie no puedes flotar elementos encima de un combo)
    for (var f = 0; f < document.forms.length; f++){
        for (var e = 0; e < document.forms[f].length; e++) {
			if(disp =="none") {
				if (document.forms[f].elements[e].options) document.forms[f].elements[e].style.visibility = "hidden";
			} else {
				if (document.forms[f].elements[e].options) document.forms[f].elements[e].style.visibility = "visible";
			}
        }
    }
}
function submitshowhide(val) {
    if(val) {
            document.getElementById("buscarDis").style.visibility="hidden";
            document.getElementById("buscar").style.visibility="visible";
            document.getElementById("buscar").style.display="";
    } else {
            document.getElementById("buscar").style.visibility="hidden";
            document.getElementById("buscarDis").style.visibility="visible";
            document.getElementById("buscarDis").style.display="";
    }
}
//funciones generals para manejar fechas etc
function select(id, indice) {
	document.getElementById(id).selectedIndex=indice;
}
function prepDest(cual) {
    v = cual.value
    if (v == "Origen" || v=="Población" || v=="Destino") {
		cual.value="";
		submitshowhide(false);
    }
}


//funciones para probar si el formulario puede submit o no

function fechaCombo() {
	if (hotel_combo_check()) {
        fecha1="";
//        fecha2="";
        fecha3="";
        if ($("#entradaD").attr("value")!='' && $("#entradaD").attr("value")!=undefined)
		{
            if ($("#entradaM").attr("value")!='' && $("#entradaM").attr("value")!=undefined)
		    {
                if ($("#entradaY").attr("value")!='' && $("#entradaY").attr("value")!=undefined)
		        {
		            fecha1 = $("#entradaD").attr("value") + "/" + $("#entradaM").attr("value") + "/" + $("#entradaY").attr("value");
//		            fecha2 = $("#entradaM").attr("value") + "/" + $("#entradaD").attr("value") + "/" + $("#entradaY").attr("value");
		        }
		    }
		}
        if ($("#hastaD").attr("value")!='' && $("#hastaD").attr("value")!=undefined)
		{
            if ($("#hastaM").attr("value")!='' && $("#hastaM").attr("value")!=undefined)
		    {
                if ($("#hastaY").attr("value")!='' && $("#hastaY").attr("value")!=undefined)
		        {
		            fecha3 = $("#hastaD").attr("value") + "/" + $("#hastaM").attr("value") + "/" + $("#hastaY").attr("value");
//		            fecha4 = $("#hastaM").attr("value") + "/" + $("#hastaD").attr("value") + "/" + $("#hastaY").attr("value");
		        }
		    }
		}
        $("#fechaDesde").val(fecha1);
		$("#fechaHasta").attr("value", fecha3);
		$("#fechaEntrada").attr("value", fecha1);
		$("#fechaEntradaMos").html(fecha1 + ", "+ GetDiaNombre(fecha1));
		fechaHotelVuelta();
//        f =  new Date(fecha2);
		//calendarioCtrl.SetSelectedDate(f,true)
	} else {
		//alert('Fecha no valida');
	}
}

function resetCombos() {

    var fechaHoy = document.getElementById("fechaHoy").value.split("/");
	var hoy = new Date(fechaHoy[1] + "/" + fechaHoy[0] + "/" + fechaHoy[2]);

 	fecha =document.getElementById("fechaEntrada").value ;
    var fArr = fecha.split("/");
    var d = fArr[0]-1;
    var m = fArr[1]-1;
    //var y = fArr[2]-2008;
 	fechaHasta =document.getElementById("fechaHasta").value ;
    var fArr2 = fechaHasta.split("/");
    var d2 = fArr2[0];
    var m2 = fArr2[1];
    //var y = fArr[2]-2008;
    var noches=0;
    if (document.getElementById("numnoches").value!='' && document.getElementById("numnoches").value!=undefined)
    {
 	    noches=parseInt(document.getElementById("numnoches").value);
    }

	//alert(hoy.getFullYear());
    var y = fArr[2]-hoy.getFullYear();
    select('entradaD', d);
    select('entradaM', m);
    select('entradaY', y);
    var y2 = fArr2[2]-hoy.getFullYear();
    if (d2!="")
    {
        select('hastaD', d2);
    }
    if (m2!=undefined && m2!="")
    {
        select('hastaM', m2);
    }
    if (isNaN(y2)!=true)
    {
        select('hastaY', y2);
    }
    select('noches',noches-1)
}

function load(src, dest) {
        //document.getElementById("dest").style.visibility="hidden";
       window.open(src,"xcvb",'scrollbars=yes,toolbar=no,status=no,resizable=no,width=300,height=300');
}
function hidepop() {
        combo('');
        document.getElementById("formspop").style.visibility="hidden";

}

function GetResultsRwPath(mgdscode,name,destination_type)
{
    return "" + destination_type.toLowerCase() + "-ofertas-vacaciones-en-" + GetPreparedString(name) + "__" + mgdscode + ".aspx";
}
function GetResultsRwPathWithDates(mgdscode,name,destination_type,date_from,date_to,duration,from,mark)
{
    if (from!="")
    {
        if (mark!="")
        {
            return "" + destination_type.toLowerCase() + "-ofertas-vacaciones-en-" + GetPreparedString(name) + "__" + mgdscode + ".aspx?fechad=" + date_from + "&fechaa=" + date_to + "&n=" + duration + '&origen=' + from + '&marca=' + mark;
        }
        else
        {
            return "" + destination_type.toLowerCase() + "-ofertas-vacaciones-en-" + GetPreparedString(name) + "__" + mgdscode + ".aspx?fechad=" + date_from + "&fechaa=" + date_to + "&n=" + duration + '&origen=' + from;
        }
    }
    else
    {
        if (mark!="")
        {
            return "" + destination_type.toLowerCase() + "-ofertas-vacaciones-en-" + GetPreparedString(name) + "__" + mgdscode + ".aspx?fechad=" + date_from + "&fechaa=" + date_to + "&n=" + duration + '&marca=' + mark;
        }
        else
        {
            return "" + destination_type.toLowerCase() + "-ofertas-vacaciones-en-" + GetPreparedString(name) + "__" + mgdscode + ".aspx?fechad=" + date_from + "&fechaa=" + date_to + "&n=" + duration;
        }
    }
    
}
function GetPreparedString(str)
{
    str = str.toLowerCase();
    str = str.replace(" ", "-");
    str = str.replace("/", "-");
    str = str.replace("\\", "-");
    str = str.replace("'", "");
    str = str.replace("*", "");
    str = str.replace("&", "");
    str = str.replace("[", "");
    str = str.replace("]", "");
    str = str.replace("{", "");
    str = str.replace("}", "");
    str = str.replace("(", "");
    str = str.replace(");", "");
    str = str.replace("^", "");
    str = str.replace("'", "-");
    str = str.replace("\"", "");
    str = str.replace("<", "");
    str = str.replace(">", "");
    str = str.replace("¿", "");
    str = str.replace("?", "");
    str = str.replace("~", "");
    str = str.replace("%", "");
    str = str.replace("#", "");
    str = str.replace("·", "-");
    str = str.replace("!", "");
    str = str.replace("¡", "");
    str = str.replace("´", "-");
    str = str.replace("`", "");
    str = str.replace("+", "-");
    str = str.replace("¨", "");
    str = str.replace(",", "-");
    str = str.replace(".", "-");

    str = str.replace("á", "a");
    str = str.replace("é", "e");
    str = str.replace("í", "i");
    str = str.replace("ó", "o");
    str = str.replace("ú", "u");
    str = str.replace("Á", "a");
    str = str.replace("É", "e");
    str = str.replace("Í", "i");
    str = str.replace("Ó", "o");
    str = str.replace("Ú", "u");

    str = str.replace("à", "a");
    str = str.replace("è", "e");
    str = str.replace("ì", "i");
    str = str.replace("ò", "o");
    str = str.replace("ù", "u");
    str = str.replace("À", "a");
    str = str.replace("È", "e");
    str = str.replace("Ì", "i");
    str = str.replace("Ò", "o");
    str = str.replace("Ù", "u");

    str = str.replace("ä", "a");
    str = str.replace("ë", "e");
    str = str.replace("ï", "i");
    str = str.replace("ö", "o");
    str = str.replace("ü", "u");
    str = str.replace("Ä", "a");
    str = str.replace("Ë", "e");
    str = str.replace("Ï", "i");
    str = str.replace("Ö", "o");
    str = str.replace("Ü", "u");

    str = str.replace(",", "-");
    str = str.replace(".", "-");

    str = str.replace("ñ", "n");
    str = str.replace("Ñ", "n");

    str = str.replace("ç", "n");
    str = str.replace("Ç", "n");
    
    return str;
}
