/**
 * DHTML email validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */
/* trop simple
function check_mail(str)
{
		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   //alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   //alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    //alert("Invalid E-mail ID")
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    //alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    //alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    //alert("Invalid E-mail ID")
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    //alert("Invalid E-mail ID")
		    return false
		 }

 		 return true					
	}
*/

//Advanced Email Check credit-
//By JavaScript Kit (http://www.javascriptkit.com)
//Over 200+ free scripts here!


function check_mail(str)
{
	var testresults
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
	if (filter.test(str))
		testresults=true
	else{
		//alert("Please input a valid email address!")
		testresults=false
	}
	return (testresults)
}

function isDateValid(chaineDate) {
	//alert("Validate date version 5")
// Je regarde tout d'abord si la chaîne n'est pas vide, sinon pas la peine d'aller plus loin
    if (chaineDate == "") return false

    if ((chaineDate.length == 8) && (chaineDate.indexof("/") == -1)) {
		var ladate = array(chaineDate.substring(0,1),
		                   chaineDate.substring(2,3),
						   chaineDate.substring(4,7))
		//alert("v5.1")
    } else {
   		var ladate = (chaineDate).split("/")
		//alert("v5.2")
	}

// Si je n'ai pas récupéré trois éléments ou bien s'il ne s'agit pas d'entiers, pas la peine non plus d'aller plus loin
   if ((ladate.length != 3) || isNaN(parseInt(ladate[0])) || isNaN(parseInt(ladate[1])) || isNaN(parseInt(ladate[2]))) return false

// Sinon, c'est maintenant que je crée la date correspondante. Attention, les mois sont étalonnés de 0 à 11
   var unedate = new Date(eval(ladate[2]),eval(ladate[1])-1,eval(ladate[0]))

// Bug de l'an 2000 oblige, lorsque je récupère l'année, je n'ai pas toujours 4 chiffres selon les navigateurs, je rectifie donc ici le tir.
   var annee = unedate.getYear()
   if ((Math.abs(annee)+"").length < 4) annee = annee + 1900

// Il ne reste plus qu'à vérifier si le jour, le mois et l'année obtenus sont les mêmes que ceux saisis par l'utilisateur.
   return ((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])))
}


function validate (myform)
{
	if (myform.prenom.value == "")
	{
		alert ("Veuillez inscrire votre prénom");
		myform.prenom.focus();
		return(false);
	}
	if (myform.nom.value == "")
	{
		alert ("Veuillez inscrire votre nom");
		myform.nom.focus();
		return(false);
	}	
	if (myform.date_naissance.value == "")
	{
		alert ("Veuillez inscrire votre date de naissance");
		myform.date_naissance.focus();
		return(false);
	}
	
	if ( !isDateValid(myform.date_naissance.value) )
	{
		alert ("Veuillez vérifier votre date de naissance");
		myform.date_naissance.focus();
		return(false);
	}
	
	if (myform.email.value == "")
	{
		alert ("Veuillez inscrire votre adresse e-mail");
		myform.email.focus();
		return(false);
	}
	else //verifie la syntaxe de l'adresse e-mail
	{
		if (!check_mail(myform.email.value))
		{
			alert ("Veuillez vérifier votre adresse e-mail");
			myform.email.focus();
			return(false);
		}
	}
	if (myform.adresse.value == "")
	{
		alert ("Veuillez inscrire votre adresse");
		myform.adresse.focus();
		return(false);
	}
	if (myform.cp.value == "")
	{
		alert ("Veuillez inscrire votre code postal");
		myform.cp.focus();
		return(false);
	}
	if (myform.ville.value == "")
	{
		alert ("Veuillez inscrire votre ville");
		myform.ville.focus();
		return(false);
	}			

	/*
	if (myform.annee.selectedIndex == 0)
	{
		alert ("Erreur:\n Tu dois choisir une année de promotion!");
		myform.annee.focus();
		return(false);
	}
	*/
	//debug: alert("selected="+myform.annee.selectedIndex);
	return(true);
}

function validate_contact (myform)
{
	if (myform.nom.value == "")
	{
		alert ("Veuillez inscrire votre nom");
		myform.nom.focus();
		return(false);
	}	
	if (myform.message.value == "")
	{
		alert ("Veuillez inscrire votre message");
		myform.message.focus();
		return(false);
	}
	

	if (myform.email.value == "")
	{
		alert ("Veuillez inscrire votre adresse e-mail");
		myform.email.focus();
		return(false);
	}
	else //verifie la syntaxe de l'adresse e-mail
	{
		if (!check_mail(myform.email.value))
		{
			alert ("Veuillez vérifier votre adresse e-mail");
			myform.email.focus();
			return(false);
		}
	}	

	/*
	if (myform.annee.selectedIndex == 0)
	{
		alert ("Erreur:\n Tu dois choisir une année de promotion!");
		myform.annee.focus();
		return(false);
	}
	*/
	//debug: alert("selected="+myform.annee.selectedIndex);
	return(true);
}

