
function Modulo() {
	
	// Variabili associate ai campi del modulo
	
	var oModulo = document.modulo;
	var m_datain = oModulo.datain.value;
	var m_dataout = oModulo.dataout.value;
	var adt = oModulo.adt.value;
	var dbb = oModulo.dbb.value;
	var sgb = oModulo.sgb.value;
	var trb = oModulo.trb.value;
	
	
	
	//Effettua il controllo sul campo datain
	
	if ((m_datain == "") || (m_datain == "undefined") || (m_datain == "gg/mm/aaaa"))
	{
		alert("Il campo Arrivo in Hotel è obbligatorio.");
		oModulo.datain.focus();
		return false;
	};
	if (!CkDate(oModulo.datain))
	{
		return(false);
	};
	if (oModulo.datain.value.length != 10)
	{
		alert("Formato data non corretto!");
		oModulo.datain.focus();
		return false;
	};
	
	
	
	//Effettua il controllo sul campo dataout
	
	if ((m_dataout == "") || (m_dataout == "undefined") || (m_dataout == "gg/mm/aaaa"))
	{
		alert("Il campo Uscita dall'Hotel è obbligatorio.");
		oModulo.dataout.focus();
		return false;
	};
	if (!CkDate(oModulo.dataout))
	{
		return(false);
	};
	if (oModulo.dataout.value.length != 10)
	{
		alert("Formato data non corretto!");
		oModulo.dataout.focus();
		return false;
	};
	
	
	
	//controllo periodo
	
	m_datain = oModulo.datain.value;
	m_dataout = oModulo.dataout.value;
	
	var dtDataIn = new Date(parseFloat(m_datain.substring(6, 10)), (parseFloat(m_datain.substring(3, 5)) - 1), parseFloat(m_datain.substring(0, 2)));
	var dtDataOut = new Date(parseFloat(m_dataout.substring(6, 10)), (parseFloat(m_dataout.substring(3, 5)) - 1), parseFloat(m_dataout.substring(0, 2)));
	
	if (dtDataIn.valueOf() >= dtDataOut.valueOf())
	{
		alert("Indicare un periodo valido!");
		oModulo.datain.focus();
		oModulo.datain.select();
		return(false);
	};
	
	
	
/*
	if ((oModulo.dataout.value.substring(0,2)) < (oModulo.datain.value.substring(0,2)))
	{
		alert("Prova");
		oModulo.dataout.focus();
		return false;
	};
	
	if (
		oModulo.datain.value.substring(2,3) != "/" ||
		oModulo.datain.value.substring(5,6) != "/" ||
		isNaN(oModulo.datain.value.substring(0,2)) ||
		isNaN(oModulo.datain.value.substring(3,5)) ||
		isNaN(oModulo.datain.value.substring(6,10))
		)
	{
		alert("Inserire datain in formato gg/mm/aaaa");
		oModulo.datain.value = "";
		oModulo.datain.focus();
		return false;
	}
	else if (oModulo.datain.value.substring(0,2) > 31)
	{
		alert("Impossibile utilizzare un valore superiore a 31 per i giorni");
		oModulo.datain.select();
		return false;
	}
	else if (oModulo.datain.value.substring(3,5) > 12)
	{
		alert("Impossibile utilizzare un valore superiore a 12 per i mesi");
		oModulo.datain.value = "";
		oModulo.datain.focus();
		return false;
	}
	else if (oModulo.datain.value.substring(6,10) < 1900)
	{
		alert("Impossibile utilizzare un valore inferiore a 1900 per l'anno");
		oModulo.datain.value = "";
		oModulo.datain.focus();
		return false;
	}   
	else if (oModulo.dataout.value.substring(2,3) != "/" ||
	oModulo.dataout.value.substring(5,6) != "/" ||
	isNaN(oModulo.dataout.value.substring(0,2)) ||
	isNaN(oModulo.dataout.value.substring(3,5)) ||
	isNaN(oModulo.dataout.value.substring(6,10)))
	{
		alert("Inserire dataout in formato gg/mm/aaaa");
		oModulo.dataout.value = "";
		oModulo.dataout.focus();
		return false;
	}
	else if (oModulo.dataout.value.substring(0,2) > 31)
	{
		alert("Impossibile utilizzare un valore superiore a 31 per i giorni");
		oModulo.dataout.select();
		return false;
	}
	else if (oModulo.dataout.value.substring(3,5) > 12)
	{
		alert("Impossibile utilizzare un valore superiore a 12 per i mesi");
		oModulo.dataout.value = "";
		oModulo.dataout.focus();
		return false;
	}
	else if (oModulo.dataout.value.substring(6,10) < 1900)
	{
		alert("Impossibile utilizzare un valore inferiore a 1900 per l'anno");
		oModulo.dataout.value = "";
		oModulo.dataout.focus();
		return false;
	}
	else if (oModulo.dataout.value.substring(6,10) < oModulo.datain.value.substring(6,10))
	{
		alert("Attenzione: la data di partenza non può essere anteriore a quella di arrivo");
		oModulo.dataout.focus();
		return false;
	}  
*/
	
	
	
	if (adt == 0)
	{
		alert("Attenzione: ci vuole almeno un adulto in camera");
		oModulo.adt.focus();
		return false;
	};
	
	if ((sgb == 0) && (dbb == 0) && (trb == 0))
	{
		alert("Attenzione: selezionare almeno una camera");
		oModulo.dbb.focus();
		return false;
	};
	
	//INVIA IL MODULO
	oModulo.action = "http://www.run21.com/hotel_europa/controllo_prezzi.asp";
	oModulo.submit();
	
}
