/*
 * Clase Reserva en JavaScript. Contiene dos objetos de la clase cCalendario.
*/

//Obtengo el idioma actual de la pagina

var idioma;


//Clase calendario. Funci�n constructora
function cCalendario(tipo,mes,anho)
{
	this._casillaMarcada = false;
	this._mesActual = mes;
	this._anhoActual = anho;
	this._diaSeleccionado;
	this._tipo = tipo;	
}
// **********************creamos los m�todos de la clase*************************

//Constante contiene los milisegundos de un d�a
cCalendario.MILISEGUNDOS_DIA = 86400000;

//Marca la casilla
cCalendario.prototype.marcarCasilla = function(objeto)
{
	objeto.className = "diaMarcado";
	this._casillaMarcada = true;
}

cCalendario.prototype.desMarcarCasilla = function()
{
	var calendario = "calendario" + this._tipo;
	var v = $(calendario).getElementsByClassName("diaMarcado");
	if (v.length > 0)
		v[0].className = "dia";
	this._casillaMarcada = false;
}

cCalendario.prototype.hayCasillaMarcada = function ()
{
	return this._casillaMarcada;
}

//Devuelve el mes actual.
cCalendario.prototype.mesActual = function()
{
	return this._mesActual;	
}

//Devuelve el a�o actual
cCalendario.prototype.anhoActual = function()
{
	return this._anhoActual;
}

//Devuelve verdadero si la casilla est� marcada.
cCalendario.prototype.estaMarcada = function(objeto)
{
	if ( objeto.className == "diaMarcado")
		return true;
	else
		return false;
}

//Devuelve la fecha seleccionada
cCalendario.prototype.devolverFecha = function()
{
	if (this._casillaMarcada = true)
		return new Date(this._anhoActual,this._mesActual,this._diaSeleccionado);
	else
		return false;	
}


//asigna un a�o al calendario
cCalendario.prototype.asignarAnho = function(anho)
{
	this._anhoActual = anho;
}

//asigna un mes al calendario
cCalendario.prototype.asignarMes = function(mes)
{
	this._mesActual = mes;
}

//asigna el d�a de la selecci�n
cCalendario.prototype.asignarDia = function(dia)
{
	this._diaSeleccionado = dia;
	var valor = this.anhoActual() + "-" + (this.mesActual()+1) + "-" + dia;
	
	if (this._tipo == 1)
		$("fechaInicio").value = valor;
	else
		$("fechaFin").value = valor;
}

//****************************************************************
//************************ clase cReserva ************************
//****************************************************************

//funci�n constructora
function cReserva(mes,anho)
{
	this._cal1 = new cCalendario(1,mes,anho);
	var aux = new Date(anho,mes,1);
//var aux = new Date(anho,mes + 1,1);	
	this._cal2 = new cCalendario(2,aux.getMonth(),aux.getFullYear());
	this._hayHabSencilla = false;
	this._hayHabDoble = false;
	this._habSencillas = 0;
	this._habDobles = 0;
}

// Contieneel n�mero m�xio de d�as que puede tener una reserva ON-line.
cReserva.MAX_DIAS_RESERVA = 30;



//M�todos de la clase cReserva
cReserva.prototype.pulsarFecha = function (objeto,tipo,anho,mes,dia)
{
	switch (tipo) 
	{
		case 1://calendario inicio
			var calendario = this._cal1;
			break;
		case 2: // calendario fin
			var calendario = this._cal2;
			break;
	}
	
	//Si la casilla está marcada la desmarcamos y salimos
	if ( calendario.estaMarcada(objeto) )
	{
		$("numDias").innerHTML = "<b>  0 </b>";
		calendario.desMarcarCasilla();
		this.habiDeshabFormulario("disable");//Des
		return true;
	}
	
	//Comprabamos la diferencia de dias no puede ser superior a dos meses
	var flagDias = false;
	var fechaPulsada = new Date(anho,mes,dia);
	switch (tipo) {
		case 1://Calendario de inico
			if (this._cal2.hayCasillaMarcada())
			{
				auxFecha = this._cal2.devolverFecha();
				dias = (auxFecha - fechaPulsada ) / cCalendario.MILISEGUNDOS_DIA;
				flagDias = true;	
			}
			break;
		case 2://Calendario fin
			if (this._cal1.hayCasillaMarcada())
			{
				auxFecha = this._cal1.devolverFecha();
				dias = (fechaPulsada - auxFecha) / cCalendario.MILISEGUNDOS_DIA;
				flagDias = true;
			}
			break;
	}
	
	
	
	
	
	
	
	
fecAct = new Date()
var diaAct = fecAct.getDate();
var mesAct = fecAct.getMonth() + 1;
if (mesAct < 10)  mesAct = '0' + mesAct;
var anioAct = fecAct.getFullYear();

mesmod = (mes +1);
if (mesmod<10) mesmod = '0' + mesmod;

fecActual = diaAct + "/" + mesAct + "/" + anioAct;
fecComp = dia + "/" + mesmod + "/" + anho;
//alert(fecActual + "-" + fecComp);


sw=1;
if (anho<anioAct)
	sw = 0;
if (anho<=anioAct && mesmod<mesAct)
	sw = 0;
if (anho<=anioAct && mesmod<=mesAct && dia<diaAct)
	sw = 0;

	
	
		if (tipo==1 && sw==0)
		{
			
				var url = 'php/idiomaAlertReserva.php';
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=idioma',
					
  					onComplete: function(resp) {
						idioma = resp.responseText;
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});	
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=fecAnt',
					
  					onComplete: function(resp) {
						var respuesta = resp.responseText;
						//mostrarVentanaAlerta(1, "Lanzarote-Costamar", respuesta, "panel1", "", idioma)
						mostrarVentanaAlerta(1, "Lanzarote-Costamar", respuesta, "panel1", "", idioma, 770, 270)
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});			
			return true;
		}	
	
	
	
	
	
	
	
	
	
	
	if (flagDias)
	{
		if ( dias > cReserva.MAX_DIAS_RESERVA)
		{
				var url = 'php/idiomaAlertReserva.php';
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=idioma',
					
  					onComplete: function(resp) {
						idioma = resp.responseText;
						
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});				
				
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=ResOn',
					
  					onComplete: function(resp) {
						var respuesta = resp.responseText;
    					//smsalert (respuesta, "panel1");
						mostrarVentanaAlerta(1, "Lanzarote-Costamar", respuesta, "panel1", "", idioma, 770, 270)
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});			
			
			
			//alert ("Reserva On-Line no puede superar los 35 días");
			return true;
		}
		if (dias < 1 )
		{
		
		
/*si estamos en el primer calendario y hay alguna casilla incompatible marcada en el segundo, la desmarcamos automaticamente y marcamos la nueva del primer calendario*/
		if (tipo == 1 )
		{
			
			calendario.desMarcarCasilla();
			var calendario2 = this._cal2;
			$("numDias").innerHTML = "<b>  0 </b>";
			calendario2.desMarcarCasilla();
		
			calendario.marcarCasilla(objeto);
			calendario.asignarDia(dia);
			this.habiDeshabFormulario("disable");//Des
			
		}
/*si ocurre lo mismo pero en el proceso inverso, estando en el segundo calendario, se muestra mensaje de alerta*/		
		else
		{
		
		
				var url = 'php/idiomaAlertReserva.php';
				
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=idioma',
					
  					onComplete: function(resp) {
						idioma = resp.responseText;
						
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});				
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=FecIni',
					
  					onComplete: function(resp) {
						var respuesta = resp.responseText;
						mostrarVentanaAlerta(1, "Lanzarote-Costamar", respuesta, "panel1", "", idioma, 770, 270)
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});
				
		}
				
			//alert ("La fecha de inicio debe ser inferior a la fecha de finalización");
			return true;
		}
	}
	
	calendario.desMarcarCasilla();
	calendario.marcarCasilla(objeto);
	calendario.asignarDia(dia);
	
	//activamos el formulario siempre que haya dos fechas seleccionadas.
	if ( (this._cal1.hayCasillaMarcada() == true) && (this._cal2.hayCasillaMarcada() == true) )
	{
		this.habiDeshabFormulario("enable");
		if ( (this._hayHabSencilla) || (this._hayHabDoble)	)
		{
			//alert ("Cambio de fecha en la reserva. Actualizamos el detalle");
			var parametros = "fechaInicio=" + $F("fechaInicio") + "&fechaFin=" + $F("fechaFin");
			//alert (parametros); 
			visualizarCargando();
			new Ajax.Updater ("panel2","php/cambiarFecha.php",{evalScripts:true,parameters:parametros,method:'post',encoding:'UTF-8',
				onComplete:function(objeto) {
					ocultarCargando();
				}
			});
		}
		
		//Visualizamos el n�mero de d�as entre las dos fechas
		dias = Math.round ( (this._cal2.devolverFecha() - this._cal1.devolverFecha()) / cCalendario.MILISEGUNDOS_DIA);
		$("numDias").innerHTML = "<b> " + dias  + " </b>";
	}
}

//Cambia el color de la casilla al pasar el rat�n sobre ella.
cReserva.prototype.pasarRatonOver = function(objeto)
{
	if ( objeto.className != "diaMarcado" )
		objeto.className = "diaSobre";
}
//Restaura el color de la celda al salir el rat�n.
cReserva.prototype.pasarRatonOut = function(objeto)
{
	if (objeto.className == "diaSobre")
		objeto.className = "dia";
}


//Esta funci�n actualiza el calendario con el nuevo mes.
cReserva.prototype.cambiarCalendario = function(cal,mes,anho)
{
	var nuevaFecha = new Date (anho,mes,1);
	switch(cal)
	{
		case 1://calendario inicial
		{
			//comprobamos que no exista una casilla marcada
			if (this._cal1.hayCasillaMarcada())
			{
				
				var url = 'php/idiomaAlertReserva.php';
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=idioma',
					
  					onComplete: function(resp) {
						idioma = resp.responseText;
						
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});								

				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=CalCasilla',
					
  					onComplete: function(resp) {
						var respuesta = resp.responseText;
						mostrarVentanaAlerta(1, "Lanzarote-Costamar", respuesta, "panel1", "", idioma, 770, 270)
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});					
				
				//alert ("No puede cambiar de calendario con una casilla seleccionada.");
				return false;
			}
			var fechaCal2 = new Date (this._cal2.anhoActual(),this._cal2.mesActual());
			if (nuevaFecha > fechaCal2 )
			{
				//Avanzo en los calendarios un mes...
				this.cambiarCalendario(2,mes,anho);
				if (!this._cal2.hayCasillaMarcada())
				this.cambiarCalendario(1,mes,anho);
				
				//alert ("El primer calendario  no puede ser mayor al segundo calendario.");
				return false;
			}
			this._cal1._anhoActual = anho;
			this._cal1._mesActual = mes;
			break;
		}
		
		case 2: //calendario fin
		{
			//comprobamos que no exista una casilla marcada
			if (this._cal2.hayCasillaMarcada())
			{
				
				
				var url = 'php/idiomaAlertReserva.php';
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=idioma',
					
  					onComplete: function(resp) {
						idioma = resp.responseText;
						
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});				
				
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=CalCasilla',
					
  					onComplete: function(resp) {
						var respuesta = resp.responseText;
						mostrarVentanaAlerta(1, "Lanzarote-Costamar", respuesta, "panel1", "", idioma, 770, 270)
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});
				
				//smsalert ("No puede cambiar de calendario con una casilla seleccionada.", "es", "panel1");
				return false;
			}
			var fechaCal1 = new Date (this._cal1.anhoActual(),this._cal1.mesActual());
			if (nuevaFecha < fechaCal1)
			{	
				//Retrocedo en los calendarios un mes...
				this.cambiarCalendario(1,mes,anho);
				if (!this._cal1.hayCasillaMarcada())
				this.cambiarCalendario(2,mes,anho);
				
				
				//alert ("El segundo calendario no puede ser inferior al primer calendario.");
				return false;	
			}
			this._cal2._anhoActual = anho;
			this._cal2._mesActual = mes;
			break;
		}
	}	
	
	
	//alert ("cambiamos calendario");
	var calendario = "calendario" + cal;
	var parametros = "cal=" + cal + "&mes=" + (mes+1) + "&anho=" + anho;
	visualizarCargando();
	new Ajax.Updater(calendario,"php/cambiarcal.php",{evalScripts:true,parameters:parametros,method:'get',encoding:'UTF-8',onFailure:function (b)
		{
				var url = 'php/idiomaAlertReserva.php';
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=idioma',
					
  					onComplete: function(resp) {
						idioma = resp.responseText;
						
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});				
				
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=ErrorConnect',
					
  					onComplete: function(resp) {
						var respuesta = resp.responseText;
    					//smsalert (respuesta, "panel1");
						mostrarVentanaAlerta(1, "Lanzarote-Costamar", respuesta, "panel1", "", idioma, 770, 270)
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});	
				
			//alert ("Error en la operación al conectar con el servidor");
		},
		onComplete:function(objeto) {
			ocultarCargando();
		}
	});
}

//activa  / desactiva el formulario utilizado para las reservas.
cReserva.prototype.habiDeshabFormulario = function (valor)
{
	if (valor == "disable")
		$('formReserva').disable();
	else
		$('formReserva').enable();
}

cReserva.prototype.insertarHabitacion = function()
{
	if ($("numHab").disabled == true)
		return false;
	
	if ( ( Math.round(($F("numHab"))) + this._habSencillas + this._habDobles) > 4 )
	{
		
		
				var url = 'php/idiomaAlertReserva.php';
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=idioma',
					
  					onComplete: function(resp) {
						idioma = resp.responseText;
						
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});				
				
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=Hab4',
					
  					onComplete: function(resp) {
						var respuesta = resp.responseText;
						mostrarVentanaAlerta(1, "Lanzarote-Costamar", respuesta, "panel1", "", idioma, 770, 270)
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});	
				
		//alert("Número máximo de habitaciones para reservar on-line no puede exceder de 4");
		return false;
	}
	
	if (this.validarNumAdultos())
	{
		if ($F("tipoHab") == 1 )
		{
			this._hayHabSencilla = true;
			this._habSencillas += Math.round($F("numHab"));
		}
		else
		{
			this._hayHabDoble = true;
			this._habDobles += Math.round($F("numHab"));
		}
		
		
		var parametros = $("formReserva").serialize();
		//alert (parametros);
		this.actDesactRegimenForm(false);
		visualizarCargando();
		new Ajax.Updater("panel2","php/insertarHabitacion.php",{evalScripts:true,parameters:parametros,method:'post',encoding:'UTF-8',onComplete:function(objeto){
			ocultarCargando();
		}
		
		});
	}
}

//cambia el r�gimen alimenticio.
cReserva.prototype.cambiarRegimen = function()
{
	//alert("Cambiar R�gimen");
	var parametros = "regimen=" + $("detalleRegAlimenticio").value;
	//alert (parametros);
	visualizarCargando();
	new Ajax.Updater("panel2","php/cambiarRegimen.php",{evalScripts:true,parameters:parametros,method:'post',encoding:'UTF-8',onComplete:function(objeto){
		ocultarCargando();
	}
	
	});
}

//validamos el n�mero de adultos
cReserva.prototype.validarNumAdultos = function()
{
	var numAdultos = $F("numAdultos"); //Obtenemos el n�mero de adultos
	//Validamos que el n�mero de adultos. este debe ser superior a 1
	if (numAdultos < 1 )
	{
		
				var url = 'php/idiomaAlertReserva.php';
				
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=idioma',
					
  					onComplete: function(resp) {
						idioma = resp.responseText;
						
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});				
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=nAdultsIncorrecto',
					
  					onComplete: function(resp) {
						var respuesta = resp.responseText;
    					//smsalert (respuesta, "panel1");
						mostrarVentanaAlerta(1, "Lanzarote-Costamar", respuesta, "panel1", "", idioma, 770, 270)
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});	
				
				
		//alert ("Número de adultos incorrecto. Debe especificar un valor mayor 0");
		return false;
	}
	
	//El n�mero de ni�os debe ser >= 0
	if ($F("numNinhos") < 0)
	{
		
				var url = 'php/idiomaAlertReserva.php';
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=idioma',
					
  					onComplete: function(resp) {
						idioma = resp.responseText;
						
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});				
				
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=nNiniosIncorrecto',
					
  					onComplete: function(resp) {
						var respuesta = resp.responseText;
    					//smsalert (respuesta, "panel1");
						mostrarVentanaAlerta(1, "Lanzarote-Costamar", respuesta, "panel1", "", idioma, 770, 270)
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});	
				
		//alert ("Número de niños incorrecto");
		$("numNinhos").focus();
		return false;
	}
	
	if ($F("numNinhos") > 6)
	{
		
				var url = 'php/idiomaAlertReserva.php';
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=idioma',
					
  					onComplete: function(resp) {
						idioma = resp.responseText;
						
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});				
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=nNiniosIncorrecto',
					
  					onComplete: function(resp) {
						var respuesta = resp.responseText;
    					//smsalert (respuesta, "panel1");
						mostrarVentanaAlerta(1, "Lanzarote-Costamar", respuesta, "panel1", "", idioma, 770, 270)
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});	
				
		//alert ("Número de niños incorrecto");
		$("numNinhos").focus();
		return false;
	}	
	
	//Validamos el n�mero m�ximo de adultos seg�n el n�mero de habitaciones y tipo.
	var tipoHab = $F("tipoHab"); // obtenemos el tipo de habitaci�n
	var numAdultos = $F("numAdultos"); //Obtenemos el n�mero de adultos
	var  numHab = $F("numHab"); //N�mero de habitaciones
	var maximoAdultos= 0;
	if (tipoHab == 1) //Habitaci�n sencilla
		maximoAdultos = 3 * numHab;
	else
		maximoAdultos = 5 * numHab;
		
	if (numAdultos > maximoAdultos)
	{
		
		
				var url = 'php/idiomaAlertReserva.php';

				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=idioma',
					
  					onComplete: function(resp) {
						idioma = resp.responseText;
						
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});

				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=nAdultosIncorrecto2',
					
  					onComplete: function(resp) {
						var respuesta = resp.responseText;
    					//smsalert (respuesta + maximoAdultos, "panel1");
						mostrarVentanaAlerta(1, "Lanzarote-Costamar", respuesta, "panel1", "", idioma, 770, 270)
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});	
				
		//alert ("Número de adultos incorrecto. \n Número máximo de adultos " + maximoAdultos);
		$("numAdultos").value = maximoAdultos; //Por defecto ponemos el n�mero m�ximo permitido
		$("numAdultos").focus(); //Nos posicionamos en el campo.
		return false;
	}
	else
		return true;
	
}

//Activa o Desactiva el r�gimen del formulario
cReserva.prototype.actDesactRegimenForm = function(valor)
{
	if (valor == false)
	{
		$("formRegimen").hide(); // Ocultamos el select del formulario
		$("etiquetaRegimen").hide();//Ocultar la etiqueta del r�gimen
	}
	else
	{
		$("formRegimen").show(); // Visualiza el select del formulario
		$("etiquetaRegimen").show();//Visualiza la etiqueta del r�gimen
	}
}

//Elimina una habitaci�n de la reserva
cReserva.prototype.eliminarHabitacion = function (tipo)
{
	if (tipo == 1) //Habitaciones sencillas
	{
		if (this._hayHabSencilla)
		{
			this._hayHabSencilla = false;
			this._habSencillas = 0;
		}
		else
			return true;
	}
	else
	{
		if (this._hayHabDoble)
		{
			this._hayHabDoble = false;
			this._habDobles = 0;
		}
		else
			return true;
	}
		
	var parametros = "tipoHabitacion=" + tipo;
	//alert (parametros);
	visualizarCargando();
	new Ajax.Updater("panel2","php/eliminarHabitacion.php",{evalScripts:true,parameters:parametros,method:'post',encoding:'UTF-8',onComplete:function(objeto){
		ocultarCargando();
	}
	});
	//si no hay detalle habilitamos el r�gimen del formulario
	if ( (this._hayHabSencilla == false) && (this._hayHabDoble == false) )
		this.actDesactRegimenForm(true);	
}

//Confirma la reserva
cReserva.prototype.confirmarReserva = function ()
{
	if ( (this._hayHabSencilla + this._hayHabDoble) > 0 )
	{	
		var v = "<div id='cajaDatos'></div>";
		new Insertion.Before("panel1",v);
		$("panel1").hide();
		$("botonConfirmar").hide();
		$('botonConfirmarF').show();
		visualizarCargando();
		new Ajax.Updater("cajaDatos","php/confirmarReserva.php",{evalScripts:true,method:'post',encoding:'UTF-8',onComplete:function(objeto){
			ocultarCargando();
		}
		
		});
	}
	else
	{
	
				var url = 'php/idiomaAlertReserva.php';
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=idioma',
					
  					onComplete: function(resp) {
						idioma = resp.responseText;
						
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});				
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=noHab',
					
  					onComplete: function(resp) {
						var respuesta = resp.responseText;
    					//smsalert (respuesta, "panel1");
						mostrarVentanaAlerta(1, "Lanzarote-Costamar", respuesta, "panel1", "", idioma, 770, 270)
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});	
	}
				
				
		//alert ("No hay habitaciones seleccionadas");
}

//Cancela la reserva actual y elimina la capa de recogida de daots
cReserva.prototype.cancelarReserva = function()
{
	//cancelamos la reserva
	new Ajax.Request("php/eliminarReserva.php",{method:'post',encoding:'UTF-8',onComplete:function(valor) {
			$("cajaDatos").remove();
			$("panel1").show();
			$('botonConfirmarF').hide();
			$("botonConfirmar").show();
		},onFailure:function(valor){
			
			
				var url = 'php/idiomaAlertReserva.php';
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=idioma',
					
  					onComplete: function(resp) {
						idioma = resp.responseText;
						
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});				
				
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=probEliminarReserva',
					
  					onComplete: function(resp) {
						var respuesta = resp.responseText;
    					//smsalert (respuesta, "panel1");
						mostrarVentanaAlerta(1, "Lanzarote-Costamar", respuesta, "panel1", "", idioma, 770, 270)
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});
				
				
			//alert("problemas con la conexión al eliminar la reserva");
		}
	});
}

//Recoge los datos del titular de la reserva 
cReserva.prototype.grabarReserva = function()
{	
	//VALIDO QUE NO HAYAN BLANCOS
	var val = noBlancos('nombre'); 
	if (val == "false") return false;
	
	//VALIDO QUE NO SEA MENOR QUE 3
	var val = noMenor('nombre', 3);
	if (val == "false") return false;
	
	//VALIDO QUE NO SEA BLANCO
	var val = noBlancos('apellidos');
	if (val == "false") return false;	
	
	//VALIDO QUE NO SEA MENOR QUE 5
	var val = noMenor('nacionalidad', 5);
	if (val == "false") return false;
	
	//VALIDO QUE NO SEA MENOR QUE 9
	var val = noMenor('telefono', 9);
	if (val == "false") return false;
	
	//VALIDO QUE SEA UN NUMERO
	var val = esNumTelefono('telefono');
	if (val == "false") return false;

	//VALIDO QUE SEA UNA DIRECCION EMAIL VALIDA
	var val = esEmail('email');
	if (val == "false") return false;
	
				var url = 'php/idiomaAlertReserva.php';
				new Ajax.Request(url, {
					method: 'post',
					parameters:'?val=idioma',
					
  					onComplete: function(resp) {
						var idioma = resp.responseText;
						
						
						
						
						
						new Ajax.Request(url, {
							method: 'post',
							parameters:'?val=confDatosContinuar',
					
  							onComplete: function(resp) {
									var respuesta = resp.responseText;
    								//smsalert (respuesta, "panel1");
									//mostrarVentanaAlerta(2, "Lanzarote-Costamar", respuesta, "panel1", "formDatos", idioma);
									mostrarVentanaAlerta(2, "Lanzarote-Costamar", respuesta, "panel1", "formDatos", idioma, 770, 270);
  							},
							onFailure: function(resp) {
      								alert('Error');
  							}
						});
						
						
						
						
						
						
						//mostrarVentanaAlerta(2, "Lanzarote-Costamar", "Confirmar datos antes de continuar.", "panel1", "formDatos", idioma);
						
    					//smsalert (respuesta, "panel1");
  					},
					onFailure: function(resp) {
      					alert('Error');
  					}
				});	
}

//finalizar la reserva
cReserva.prototype.finalizar = function()
{
	$('ocultaridiomas').hide();
	
	oReserva = null;
	if ($("cajaDatos")) 
		$("cajaDatos").remove();
	
	if ( $("caja") )	
		$("caja").remove();
		
	if ( $("btnReserva").getStyle("display") == "none")
		$('btnReservaOff').hide();
		$("btnReserva").show();
}

//Resetear reserva
cReserva.prototype.resetear = function ()
{
	this._hayHabSencilla = false;
	this._hayHabDoble = false;
	this._habSencillas = 0;
	this._habDobles = 0;
	//this._cal1 =
}