function isDate(dateStr,lang) 
{
            var bok_date= true;
			
			var datePat =/^\s*(\d{1,2})\-(\d{1,2})\-(\d{2,4})\s*$/;
			var matchArray = dateStr.match(datePat); // is the format ok?
			
			if (matchArray == null) {
			bok_date=false;
			}
			else
			{
			day = matchArray[1]; // p@rse date into variables
			month = matchArray[2];
			year = matchArray[3];
			
			
			if (month < 1 || month > 12) { // check month range
			alert("Month must be between 1 and 12.");
			bok_date=false;
			}
			
			if (day < 1 || day > 31) {
			alert("Day must be between 1 and 31.");
			bok_date=false;
			}
			
			if ((month==4 || month==6 || month==9 || month==11) && day==31) {
			alert("Month "+month+" doesn`t have 31 days!")
			bok_date=false;
			}
			
			if (month == 2) { // check for february 29th
					var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
					if (day > 29 || (day==29 && !isleap)) 
					{
					alert("February " + year + " doesn`t have " + day + " days!");
					bok_date=false;
					}
			}
			}
return bok_date; // date is valid
}




function checkform(lang)

{
  var bok=true;
  var bok_date_1 = true;
  var bok_date_2 = true;
  var expression = new RegExp("[0-9][:][0-9]");    
  var arobas = document.contact.email.value.indexOf("@");
  var point = document.contact.email.value.indexOf(".", arobas);
  var lastpoint = document.contact.email.value.lastIndexOf(".");
  var indexchoisi = document.contact.type.selectedIndex;

if (lang=="fr")
{
	if (document.contact.nom.value =="")
		{
		alert("Veuillez saisir votre Nom !");
		 bok=false;
		}
	else if (document.contact.prenom.value =="")

		{
		alert("Veuillez saisir votre Prénom !");
		 bok=false;
		}

	else if	(document.contact.email.value =="")
		{
		alert ("Veuillez saisir votre adresse votre email !");
		 bok=false;
		}
    else if ((arobas<1) || (point<arobas+2) || ((lastpoint!=document.contact.email.value.length-4) && (lastpoint!=document.contact.email.value.length-3))      )

		{
		alert("Adresse email non valide !");
    	 bok=false;	
		}
	else if (document.contact.tel.value =="")

		{
			alert("Veuillez saisir un numèro de téléphone !");
			 bok=false;
		}
	else if ( isNaN(document.contact.tel.value) == true)
		 {
		  alert("Veuillez saisir un numèro de téléphone valide  :  chiffres uniquement !");
		   bok=false;
		 }

	else if (document.contact.pays.value == "")
	{
		alert("Veuillez choisir un pays !");
    	 bok=false;	
	}

	else if (document.contact.chambres.value == "")

	{
		alert("Veuillez choisir un nombre de chambre !");
    	 bok=false;	
	}
	else if (document.contact.type.value == "")

	{
		alert("Veuillez choisir un type de chambre !");
    	 bok=false;	
	}

	else if (! (document.contact.radiobutton[0].checked)&& (! document.contact.radiobutton[1].checked) )

	{
		alert("Veuillez choisir une catégorie : Classic ou Superior !");
		 bok=false;
	}
		else if (document.contact.heure.value=="" )
	{
		alert("Veuillez choisir une heure approximative d'arrivée à l'hotel svp ! format  HH:MM");
		 bok=false;
	}

	else if (  ! document.contact.heure.value.match(expression) )
	{
	alert("Veuillez choisir une heure approximative d'arrivée à l'hotel svp ! format  HH:MM");
	 bok=false;
	}

	else if ( (document.contact.type.options[indexchoisi].text == "Triple" )&& (document.contact.radiobutton[0].checked))
	{
	alert("Les chambres Triple ne sont disponibles qu'en Catégorie Superior");
	 bok=false;
	}

	else if (document.contact.heure.value=="" )

	{
		alert("Veuillez choisir une heure approximative d'arrivée à l'hotel svp format  HH:MM");
		 bok=false;
	}

	else if ( !isDate (document.contact.EvalDate1.value,'fr')||! isDate(document.contact.EvalDate2.value,'fr') )
	{
	bok_date_1 = isDate (document.contact.EvalDate1.value,'fr');
	bok_date_2 = isDate (document.contact.EvalDate2.value,'fr');
				
				if (lang=="fr")
    			{alert("Veuillez saisir une date au format JJ-MM-AAAA");}
				else
				{ alert("Please enter a valid format : JJ-MM-AAAA");}
	}
}
else
{

	if (document.contact.nom.value =="")

		{
		alert("Please enter your name !");
		bok=false;
		}

	else if (document.contact.prenom.value =="")
		{
		alert("Please enter your first name !");
		bok=false;
		}

	else if	(document.contact.email.value =="")
		{
		alert ("Please enter your email !");
		bok=false;
		}

    else if ((arobas<1) || (point<arobas+2) || ((lastpoint!=document.contact.email.value.length-4) && (lastpoint!=document.contact.email.value.length-3))      )

		{
		alert("Please enter a valid email !");
    	bok=false;	

		}

		else if (document.contact.tel.value =="")

		{
			alert("Please enter a phone number!");
			bok=false;

		}

	else if ( isNaN(document.contact.tel.value) == true)

		 {
		  alert("Please enter a valid  phone number : only numbers are authorized   ");
		  bok=false;

		 }

	else if (document.contact.pays.value == "")

	{
		alert("Please choose a country !");
    	bok=false;	
	}

	else if (document.contact.chambres.value == "")

	{
		alert("Please choose a number of room !");
    	bok=false;	

	}

	else if (document.contact.type.value == "")

	{
		alert("Please choose a type of room ! ");
    	bok=false;	

	}

		else if (document.contact.heure.value == "")

	{
    	alert("Please choose an approximative hour of arrival  : format  HH:MM");
    	bok=false;	

	}
    else if (! (document.contact.radiobutton[0].checked)&& (! document.contact.radiobutton[1].checked) )
	{
		alert("Please choose a category : Classic ou Superior !");
		bok=false;
	}
	
	else if ( (document.contact.type.options[indexchoisi].text == "Triple" )&& (document.contact.radiobutton[0].checked))
	{
	alert("The Triple rooms are available only of Superior Category");
	bok=false;
	}
	else if (  ! document.contact.heure.value.match(expression) )
	{
	alert("Please choose an approximative hour of arrival  : format  HH:MM");
	bok=false;
	}
	
	else if ( ! isDate (document.contact.EvalDate1.value,'en')|| ! isDate(document.contact.EvalDate2.value,'en') )
	{
	bok_date_1 = isDate (document.contact.EvalDate1.value,'en');
	bok_date_2 = isDate (document.contact.EvalDate2.value,'en');
				if (lang=="fr")
    			{alert("Veuillez saisir une date au format JJ-MM-AAAA");}
				else
				{ alert("Please enter a valid format : JJ-MM-AAAA");}
	}
 
}
 
 if ((bok) && (bok_date_1)&& (bok_date_2))

	  document.contact.submit();

}	
