function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr;
  for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

var h2 = 'global'; h2 = 'puntero2';

function ProcesoPreBusqueda() {
	if (!ChequeaCampos()) {
		return false;
	};

	//Guardo las cookies de Localidad y Pais
	//setCookie("Localidad", form1.ID_Localidad.value, "", "", "", false);
	//setCookie("Pais", form1.ID_PaisWeb.value, "","","",false);

	//form1.Ano.value = form1.Fecha.value.substring(6,10);
	//form1.Mes.value = form1.Fecha.value.substring(3,5);
	//form1.Dia.value = form1.Fecha.value.substring(0,2);

	form1.submit();
	return(true);
}

function GenerarDate (campodia, campomes, campoAno) {
    return new Date(campoAno.value * 1, (campomes.value * 1) - 1, campodia.value * 1);
}

function GenerarFechaString (campodia, campomes, campoAno) {
    return campodia.value+"/"+campomes.value+"/"+campoAno.value;
}

function ChequeaCampos() {
	var dFechaIn, dFechaOut, sFechaOut;
	var dFechaHoy=new Date();
	
	if ((form1.CantHabi5.value == "0") && (form1.CantHabi6.value == "0") && (form1.CantHabi7.value == "0")) {
	     alert('Por favor complete los campos de habitaciones');
	     form1.CantHabi5.focus();
	     return (false);
	};

    dFechaIn = GenerarDate (document.form1.FechaCheckIn_Day_ID, document.form1.FechaCheckIn_Month, document.form1.FechaCheckIn_Year_ID);
 	//document.form1.Fecha.value = GenerarFechaString(document.form1.FechaCheckIn_Day_ID, document.form1.FechaCheckIn_Month, document.form1.FechaCheckIn_Year_ID);

    dFechaOut = GenerarDate (document.form1.FechaCheckOut_Day_ID, document.form1.FechaCheckOut_Month, document.form1.FechaCheckOut_Year_ID);
    sFechaOut = GenerarFechaString(document.form1.FechaCheckOut_Day_ID, document.form1.FechaCheckOut_Month, document.form1.FechaCheckOut_Year_ID);

    //if (!ChequearFecha(document.form1.Fecha.value)){
	//	return(false);
	//};

	if (!ChequearFecha(sFechaOut)){
		return(false);
	};

    //Calculo la cantidad de noches de la reservacion a partir
    //de la fecha de llegada y de partida
    form1.CantNoches.value = parseInt((dFechaOut - dFechaIn) / 86400000);

	if (form1.CantNoches.value == 0) {
		alert('La fecha de llegada y de partida no deben coincidir.');
		return(false);
	};

	if (parseInt((dFechaHoy - dFechaIn) / 86400000) > 0) {
		alert('La fecha de llegada no debe ser menor a hoy.');
		return(false);
	};

	if (form1.CantNoches.value < 0) {
		alert('La fecha de partida debe ser anterior a la fecha de salida.');
		return(false);
	};
	
	if (form1.ID_Hotel != undefined) {
	    if (form1.ID_Hotel.value == 0) {
    	    alert('Debe seleccionar un hotel.');
		    return(false);
	    }
	}

	return(true);
}

function ChequearFecha (dFecha) {
	var checkOK = "0123456789/";
	var checkStr = dFecha + "";
	var allValid = true;
	var decPoints = 0;
	var allNum = "";
	for (i = 0;  i < checkStr.length;  i++) {
		ch = checkStr.charAt(i);
		for (j = 0;  j < checkOK.length;  j++) {
			if (ch == checkOK.charAt(j)) {
				break;
			}
		};
		if (j == checkOK.length) {
			allValid = false;
			break;
		};
		allNum += ch;
	}
	if (!allValid) {
		alert('La Fecha ingresada es invalida.');
		//sCampoFecha.focus();
		return (false);
	};

	if (!IsDate(dFecha)) {
		alert('Verifique el campo fecha.');
		//sCampoFecha.focus();
		return(false);
	};

	return(true);
}

//-------------------------------------------------------------------------------
// armo un string con ID_HabitacionTipoCustom=Cantidad cargada en tabla
function ArmarCantidades() {
	var i,sep="";
	var disForm1 = AsignaObjetoForm('form1');
	//var disForm1Habit = AsignaObjetoForm('form1','Habitaciones');
	//var disForm1Cant = AsignaObjetoForm('form1','Cantidades');
	var disForm1HabitCant = AsignaObjetoForm('form1','HabitacionesCantidades');
	//disForm1Habit.value = "";
	//disForm1Cant.value = "";
	disForm1HabitCant.value = "";
	for (i=0; i < disForm1.length; i++) {
		disForm1Var = AsignaObjetoForm('form1', i);
		if (disForm1Var.name.substr(0,8) == "CantHabi") {
			//disForm1Habit.value = disForm1Habit.value + sep + disForm1Var.name.substr(8);
			//vector de Cantidades
			//disForm1Cant.value = disForm1Cant.value + sep + disForm1Var[disForm1Var.selectedIndex].value;
			
						
			disForm1HabitCant.value=disForm1HabitCant.value + sep + disForm1Var.name.substr(8) + "," + disForm1Var[disForm1Var.selectedIndex].value
			
			sep = ",";			
	    };
	}
}

function AsignaObjetoForm(nombreForm, nombreObj) {
	var nombreCorrecto;
    if (nombreObj == null) {
		nombreCorrecto = document[nombreForm].elements;
	}
	else {
		nombreCorrecto = document[nombreForm].elements[nombreObj];
	};
	return nombreCorrecto;
}

//-------------------------------------------------------------------------------

//Defino las variables como Globales para que se puedan utilizar en todas las funciones
var hoy=new Date();
var maxdia;
var DiasMeses = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

//FM2B - Función para cambiar las fechas dependiendo una de otra
function CambiaFecha(inout){
var nuevodia="";
var nuevomes="";
var nuevoAno="";
var fecllegada, fecsalida;
RefrescarDias();

	fecllegada = new Date(document.form1.Ano.value * 1, (document.form1.mes.value * 1) - 1, document.form1.dia.value * 1);
	fecsalida = new Date(document.form1.Ano2.value * 1, (document.form1.mes2.value * 1) - 1, document.form1.dia2.value * 1);

	document.form1.Anio.value= fecllegada.getFullYear();

	if (parseInt((fecsalida - fecllegada) / 86400000)>0){
		if(inout=="I"){
			if ((maxdia*1)>((((document.form1.mes.value*1) == 1) && (((document.form1.Ano.value*1) % 400 == 0) || (((document.form1.Ano.value*1) % 4 == 0) && ((document.form1.Ano.value*1) % 100 != 0)))) ? 29 : DiasMeses[((document.form1.mes.value*1)-1)]*1)){
				hoy.setDate((((document.form1.mes.value*1) == 1) && (((document.form1.Ano.value*1) % 400 == 0) || (((document.form1.Ano.value*1) % 4 == 0) && ((document.form1.Ano.value*1) % 100 != 0)))) ? 29 : DiasMeses[((document.form1.mes.value*1)-1)]);
				document.form1.dia.value = hoy.getDate();
				hoy.setMonth(document.form1.mes.value-1);
			};
		}else{
			if ((maxdia*1)>((((document.form1.mes2.value*1) == 1) && (((document.form1.Ano2.value*1) % 400 == 0) || (((document.form1.Ano2.value*1) % 4 == 0) && ((document.form1.Ano2.value*1) % 100 != 0)))) ? 29 : DiasMeses[((document.form1.mes2.value*1)-1)]*1)){
				hoy.setDate((((document.form1.mes2.value*1) == 1) && (((document.form1.Ano2.value*1) % 400 == 0) || (((document.form1.Ano2.value*1) % 4 == 0) && ((document.form1.Ano2.value*1) % 100 != 0)))) ? 29 : DiasMeses[((document.form1.mes2.value*1)-1)]);
				document.form1.dia2.value = hoy.getDate();
				hoy.setMonth(document.form1.mes2.value-1);
			};
		};
		return(true);
	};

	if(inout=="I"){
		hoy.setDate(document.form1.dia.value);
		hoy.setMonth(document.form1.mes.value-1);
		hoy.setYear(document.form1.Ano.value);
		hoy.setDate(hoy.getDate()+1);
	}else{
		hoy.setDate(document.form1.dia2.value);
		hoy.setMonth(document.form1.mes2.value-1);
		hoy.setYear(document.form1.Ano2.value);
		hoy.setDate(hoy.getDate()-1);
	};

	if(hoy.getDate()<10){
		nuevodia="0" + hoy.getDate();
	}else{
		nuevodia="" + hoy.getDate();
	};

	if((hoy.getMonth()+1)<10){
		nuevomes="0" + (hoy.getMonth()+1);
	}else{
		nuevomes="" + (hoy.getMonth()+1);
	};

	nuevoAno="" + hoy.getFullYear();

	if(inout=="I"){
		document.form1.dia2.value= nuevodia;
		document.form1.mes2.value= nuevomes;
		document.form1.Ano2.value= nuevoAno;
	}else{
		document.form1.dia.value= nuevodia;
		document.form1.mes.value= nuevomes;
		document.form1.Ano.value= nuevoAno;
	};
		
	return(true);
}

//FM2B - Función que se encarga de actualizar los combos para los dias
//dependiendo del mes seleccionado controlando el mayor dia para ese mes.
function RefrescarDias(){
	var i, diaactual;
	// combo dia
		diaactual = "" + document.form1.dia.value;
		for(i=maxdia;i>=0;i--){
			document.form1.dia.remove(i);
		};
		maxdia = (((document.form1.mes.value*1) == 1) && (((document.form1.Ano.value*1) % 400 == 0) || (((document.form1.Ano.value*1) % 4 == 0) && ((document.form1.Ano.value*1) % 100 != 0)))) ? 29 : DiasMeses[((document.form1.mes.value*1)-1)];
		for(i=0;i<maxdia;i++){
			if((i+1)<10){
				txt = "0" + (i+1);
			}else{
				txt = "" + (i+1);
			};
			var selOpcion=new Option(txt, txt);
			eval(document.form1.dia.options[i]=selOpcion);
			document.form1.dia.value = diaactual;
		};

	//combo dia2
		diaactual = "" + document.form1.dia2.value;
		for(i=maxdia;i>=0;i--){
			document.form1.dia2.remove(i);
		};
		maxdia = (((document.form1.mes2.value*1) == 1) && (((document.form1.Ano2.value*1) % 400 == 0) || (((document.form1.Ano2.value*1) % 4 == 0) && ((document.form1.Ano2.value*1) % 100 != 0)))) ? 29 : DiasMeses[((document.form1.mes2.value*1)-1)];
		for(i=0;i<maxdia;i++){
			if((i+1)<10){
				txt = "0" + (i+1);
			}else{
				txt = "" + (i+1);
			};
			var selOpcion=new Option(txt, txt);
			eval(document.form1.dia2.options[i]=selOpcion);
			document.form1.dia2.value = diaactual;
		};
return(true);
}

//FM2B - Función que carga el combo de los dias y selecciona el default
//Parámetro:
//"I" -> FechaCheckIn_Day_ID = hoy + 1
//"O" -> FechaCheckOut_Day_ID = hoy + 2
function CargaDias(inout){
	var i,maxdia;
	var DiasMeses = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
	hoy.setDate(hoy.getDate() + CalculoDias(inout));
	maxdia = ((hoy.getMonth() == 1) && ((hoy.getFullYear() % 400 == 0) || ((hoy.getFullYear() % 4 == 0) && (hoy.getFullYear() % 100 != 0)))) ? 29 : DiasMeses[hoy.getMonth()];
	for (i=1;i<=maxdia;i++){
		if (i<10){
			txt="0" + i;
		}else{
			txt="" + i;
		};
		if (hoy.getDate()==i){
			document.write("<option value=" + txt + " selected>" + txt + "</option>");
		}else{
			document.write("<option value=" + txt + ">" + txt + "</option>");
		};
	};
return(true);
}

//FM2B - Función que carga el combo de los meses y selecciona el actual
function CargaMeses(){
	var i;
	for (i=1;i<=12;i++){
		if (i<10){
			txt="0" + i;
		}else{
			txt="" + i;
		};
		if ((hoy.getMonth()+1)==i){
			document.write("<option value=" + txt + " selected>" + txt + "</option>");
		}else{
			document.write("<option value=" + txt + ">" + txt + "</option>");
		};
	};
return(true);
}

//FM2B - Función que carga el año actual en el campo correspondiente
function CargaAno(inout){
	for (i=0;i<2;i++){
		txt="" + (hoy.getFullYear() + i);
		if ((hoy.getFullYear())==i){
			document.write("<option value=" + txt + " selected>" + txt.substring(4,2) + "</option>");
		}else{
			document.write("<option value=" + txt + ">" + txt.substring(4,2) + "</option>");
		};
	};
	return(true);
}

function CalculoDias(inout){
var cantdias;
	if (inout=="I"){
		cantdias = 1;
	}else{
		cantdias = 2;
	};
return(cantdias);
}

//-- end function --//

