// Fonctions de controle de la syntaxe de l'email N°1
var good;
function checkEmailAddress(field) {
	// L'expression ci-dessous doit etre sur une seule et meme ligne
	var goodEmail = field.value.match(/\b(^(\S+@).+((\.com)|(\.net)|(\.edu)|(\.mil)|(\.gov)|(\.org)|(\..{2,2}))$)\b/gi);

	if (goodEmail)
	{
	   good = true;
	}
	else 
	{
	   alert("Veuillez entrer une adresse e-mail valide.");
	   field.focus();
	   field.select();
	   good = false;
	}
}
// Fin de la fonction checkEmailAddress(field)

// Popup Window
function popup(nom_fic,width, height) {	     
	my_win=window.open(nom_fic, 'TomPooks', 'width='+width+', height='+height+', left=20, top=20, scrollbars=yes, toolbars=no, status=no, rezisable=yes');
	my_win.focus();
}
// Fin du Popup   

// Fonctions de controle de la syntaxe de l'email N°2
function VerificationEmail(elm)
{
	if (elm.value.indexOf("@") != "-1" && elm.value.indexOf(".") != "-1" && elm.value != "")
		return true;
	return false;
}
// Fin de la fonction VerificationEmail()

// Fonction de controle du formulaire de commande de bookings
function CheckFormBooking()
{
	// Contrôle de la date du booking
	if (document.booking.DateEvent.value=="")
	{
		alert("Please enter a valid date.");
		document.booking.DateEvent.focus();
		return false;
	}
	// Contrôle de l'adresse du lieu
	if (document.booking.NameAddressEvent.value=="")
	{
		alert("Please enter the place and the address of the place.");
		document.booking.NameAddressEvent.focus();
		return false;
	}
	// Contrôle du pays du booking
/*	if (document.booking.CountryEvent.value=="")
	{
		alert("Please enter your country.");
		document.booking.CountryEvent.focus();
		return false;
	}*/
	// Contrôle du téléphone du booker
	if (document.booking.PhoneEvent.value=="")
	{
		alert("Please enter your phone number.");
		document.booking.PhoneEvent.focus();
		return false;
	}
	// Contrôle de l'email du booker
	if (document.booking.EmailEvent.value=="")
	{
		alert("Please enter your email.");
		document.booking.EmailEvent.focus();
		return false;
	}
	else
	{
		if (VerificationEmail(document.booking.EmailEvent) == false)
		{
		    alert("Please enter a valid email.\n\nThe format is 'you@domain.com'");
		    document.booking.EmailEvent.focus();
		    return false;
	    }
	}
	// Contrôle de la capacité
	if (document.booking.CapacityEvent.value=="")
	{
		alert("Please enter the capacity of your Club.");
		document.booking.CapacityEvent.focus();
		return false;
	}
	// Confirmation d'envoi du mail
	if (confirm('INFORMATION : All your informations have been controled\nThey are about to be sent by mail directly to Tom Pooks bookings\nIt could take a few minutes. If you agree with that,\nClick on OK\nIf not, click on Annuler'))
	{
		return true;
	}
	else
	{
		return false;
	}
}
// Fin de Fonction de controle du formulaire de commande de bookings

// Fonction d'affichage de la date du jour par liste avec sélection
//
function check_date(field)
{
	var checkstr = "0123456789";
	var DateField = field;
	var Datevalue = "";
	var DateTemp = "";
	var seperator = ".";
	var day;
	var month;
	var year;
	var leap = 0;
	var err = 0;
	var i;
	err = 0;
	DateValue = DateField.value;
	/* Delete all chars except 0..9 */
	for (i = 0; i < DateValue.length; i++)
	{
		if (checkstr.indexOf(DateValue.substr(i,1)) >= 0)
		{
			DateTemp = DateTemp + DateValue.substr(i,1);
		}
	}
	DateValue = DateTemp;
	/* Always change date to 8 digits - string*/
	/* if year is entered as 2-digit / always assume 20xx */
	if (DateValue.length == 6)
	{
		DateValue = DateValue.substr(0,4) + '20' + DateValue.substr(4,2);
	}
	if (DateValue.length != 8)
	{
		err = 19;
	}
	/* year is wrong if year = 0000 */
	year = DateValue.substr(4,4);
	if (year == 0) 
	{
		err = 20;
	}
	/* Validation of month*/
	month = DateValue.substr(2,2);
	if ((month < 1) || (month > 12))
	{
		err = 21;
	}
	/* Validation of day*/
	day = DateValue.substr(0,2);
	if (day < 1)
	{
		err = 22;
	}
	/* Validation leap-year / february / day */
	if ((year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0))
	{
		leap = 1;
	}
	if ((month == 2) && (leap == 1) && (day > 29))
	{
		err = 23;
	}
	if ((month == 2) && (leap != 1) && (day > 28))
	{
		err = 24;
	}
	/* Validation of other months */
	if ((day > 31) && ((month == "01") || (month == "03") || (month == "05") || (month == "07") || (month == "08") || (month == "10") || (month == "12"))) 
	{
		err = 25;
	}
	if ((day > 30) && ((month == "04") || (month == "06") || (month == "09") || (month == "11")))
	{
		err = 26;
	}
	/* if 00 ist entered, no error, deleting the entry */
	if ((day == 0) && (month == 0) && (year == 00)) 
	{
		err = 0; day = ""; month = ""; year = ""; seperator = "";
	}
	/* if no error, write the completed date to Input-Field (e.g. 13.12.2001) */
	if (err == 0)
	{
		DateField.value = day + seperator + month + seperator + year;
	}
	/* Error-message if err != 0 */
	else 
	{
		alert("Your Date is incorrect !");
		DateField.select();
		DateField.focus();
	}
}
