function contrEmailUtente(stringa)
{
	var lunghezza=stringa.length;
	var contachiocciola=0;	
	var contapunti=0;

	if(lunghezza<8) 
		{
		return false;
		}
	for(var i=1;i<lunghezza;i++)
		{
		if((stringa.charCodeAt(i)<94 || stringa.charCodeAt(i)>122)&&(stringa.charCodeAt(i)<48 || stringa.charCodeAt(i)>57)&&(stringa.charCodeAt(i)<64 || stringa.charCodeAt(i)>90)&&(stringa.charCodeAt(i)!=39)&&(stringa.charCodeAt(i)!=46)&&(stringa.charCodeAt(i)!=45)&&(stringa.charCodeAt(i)!=169)&&(stringa.charCodeAt(i)!=174)&&(stringa.charCodeAt(i)!=180))
			{
			return false;
			}
		}
	for(var i=1;i<lunghezza;i++)
		{
		if(stringa.charCodeAt(i)==64)
			{
			contachiocciola = contachiocciola + 1
			}
		if(stringa.charCodeAt(i)==46)
			{
			contapunti = contapunti + 1
			}
		}
	if((contachiocciola!=1)||(contapunti<1))
		{
		return false;		
		}
}

var dateValide		= new Array ('01/04','02/04','03/04','04/04','05/04','06/04');
var posA		= -1;
var posD		= -1;

function controllaDataA(data)
{
	var i = 0;
	var presente = false;
	do
		{
		if (data == dateValide[i]) 
			{
			posA = i;
			presente = true;
			}
		i++
		}
	while (i<dateValide.length);
	return presente;
}

function controllaDataD(data)
{
	var i = 0;
	var presente = false;
	do
		{
		if (data == dateValide[i]) 
			{
			posD = i;
			presente = true;
			}
		i++
		}
	while (i<dateValide.length);
	return presente;
}

function controllaDate(dataA,dataD)
{
	if (posA>-1&&posD>posA)
		{
		return true;
		}
	else
		{
		return false;
		}
}

function contracc(stringaacc)
{
	var lunghezza=stringaacc.length;

	if(lunghezza!=1)
		{
		return false;
		}
	else if(stringaacc.charCodeAt(0)<48 || stringaacc.charCodeAt(0)>57)
			{
			return false;
			}
	else
			{
			return true;
			}
}

function controlla(form)
{
	if (form.FName.value.length < 3 || form.FName.value == "Your First Name, please")
		{
		form.FName.value = "Your First Name, please";
		form.FName.className = "input_err_";
		form.FName.focus();
		return false;
		}
	else if (form.LName.value.length < 3 || form.LName.value == "Your Last Name, please")
		{
		form.LName.value = "Your Last Name, please";
		form.LName.className = "input_err_";
		form.LName.focus();
		return false;
		}
	else if (form.Institution.value.length < 6 || form.Institution.value == "Your Institution, please")
		{
		form.Institution.value = "Your Institution, please";
		form.Institution.className = "input_err_";
		form.Institution.focus();
		return false;
		}
	else if (form.State.value.length < 2 || form.State.value == "Your State, please")
		{
		form.State.value = "Your State, please";
		form.State.className = "input_err_";
		form.State.focus();
		return false;
		}
	else if	(contrEmailUtente(form.Email.value)==false)	
		{
		form.Email.value = "Your e-mail, please";
		form.Email.className = "input_err_";
		form.Email.focus();
		return false;
		}
	else if (form.Reservation.value.length < 5 || form.Reservation.value == "Your Hotel, please")
		{
		form.Reservation.value = "Your Hotel, please";
		form.Reservation.className = "input_err_";
		form.Reservation.focus();
		return false;
		}
	else if	(controllaDataA(form.Aday.value)==false)	
		{
		form.Aday.value = "Invalid date, retry";
		form.Aday.className = "input_err_";
		form.Aday.focus();
		return false;
		}
	else if	(controllaDataD(form.Dday.value)==false)	
		{
		form.Dday.value = "Invalid date, retry";
		form.Dday.className = "input_err_";
		form.Dday.focus();
		return false;
		}
	else if (controllaDate(form.Aday.value,form.Dday.value)==false)
		{
		form.Aday.value = "The arrival must";
		form.Dday.value = "precede the departure!";
		form.Aday.className = "input_err_";
		form.Dday.className = "input_err_";
		form.Aday.focus();
		return false;
		}
	else if	(contracc(form.Numacc.value)==false)	
		{
		form.Numacc.value = "Invalid number, retry";
		form.Numacc.className = "input_err_";
		form.Numacc.focus();
		return false;
		}
	else if	(form.Poster.value.toUpperCase()!="YES"&&form.Poster.value.toUpperCase()!="NO")	
		{
		form.Poster.value = "Yes/No, please";
		form.Poster.className = "input_err_";
		form.Poster.focus();
		return false;
		}
	else 
		{
		form.action = 'http://www.costacilento.it/cgi-bin/registration.pl';
		return true;
		}
}
