

function verif(){

	

	//indication des champs obligatoires

	var obligatoire=["nom", "email", "tel", "cp", "ville", "jour" ];

	

	//indication des autres champs &agrave; v&eacute;rifier si renseigner

	var autres=["prenom"];

	

	//indication de la classe CSS d'erreur

	var class_error='erreur';

	

	//indication de la classe CSS normal

	var class_normal='';

	

	//r&eacute;initialisation du div contenant le message d'erreur

	document.getElementById('error').innerHTML='';

	

	//initialistation des styles CSS

	initialisation(obligatoire, class_normal);

	initialisation(autres, class_normal);

	

	//verification des champs

	var error_obligatoire=verification(obligatoire, true, class_error);

	var error_autres=verification(autres, false, class_error);

	

	if(error_obligatoire==0 && error_autres==0)

	{

		//affichage de la popup de confirmation et envoi du formaulire

		window.open('about:blank','confirm','toolbar=0, location=0, directories=0, status=0, scrollbars=1, resizable=0, copyhistory=0, menuBar=0, width=200, height=100, left=120, top=120');

		document.contact.submit();

	}

	else

	{

		//affichage du message d'erreur

		if(error_obligatoire>0)

		document.getElementById('error').innerHTML += '<p id="msg_erreur">Les champs obligatoires surlign&eacute;s ont &eacute;t&eacute; mal ou non renseign&eacute;s</p>';

		if(error_autres>0)

		document.getElementById('error').innerHTML += '<p id="msg_erreur">Les champs facultatifs surlign&eacute;s ont &eacute;t&eacute; mal renseign&eacute;s</p>';

	}

}



// fonction d'initialisation des classes des champs

function initialisation(tableau, classe)

	{

	for(var i=0; i < tableau.length; i++)

		{

		document.getElementById(tableau[i]).className = classe;	

		}	

	}

	

// fonction de v&eacute;rification des champs

function verification(tableau, required, classe)

	{

	var error=0;

	for(var i=0; i < tableau.length; i++)

		{

		switch(tableau[i])

			{

			// verificarton pour un champs date

			case 'date': //valeur &agrave; modifier si n&eacute;cessaire

				var date = /^[0-9]{2}\/[0-9]{2}\/[0-9]{4}$/;

				error=verifRegExp(tableau[i], date, required, classe, error)

   			break;		

				

			// verificarton pour un code postal

			case 'cp': //valeur &agrave; modifier si n&eacute;cessaire

				var codepostal=/^([A-Z]+[A-Z]?\-)?[0-9]{1,2} ?[0-9]{3}$/;

				error=verifRegExp(tableau[i], codepostal, required, classe, error)

   			break;	

			

			// verification pour une adresse email

			case 'email': //valeur &agrave; modifier si n&eacute;cessaire

				var email=/^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$/;

				error=verifRegExp(tableau[i], email, required, classe, error)

   			break;

			

			// verification pour unnum&eacute;ro de t&eacute;l&eacute;phone

			case 'telephone': //valeur &agrave; modifier si n&eacute;cessaire

				var tel=/^(0[1234568])[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}$/;

				error=verifRegExp(tableau[i], tel, required, classe, error)

			break;	

			

			// verification pour un num&eacute;ro de t&eacute;l&eacute;phone protable

			case 'portable': //valeur &agrave; modifier si n&eacute;cessaire

				var tel=/^(0[1234568])[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}$/;

				error=verifRegExp(tableau[i], tel, required, classe, error)

			break;	

			

			// verification pour un num&eacute;ro de fax

			case 'fax': //valeur &agrave; modifier si n&eacute;cessaire

				var fax=/^(0[1234568])[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}$/;

				error=verifRegExp(tableau[i], fax, required, classe, error)

			break;	

			

			default:

				if(required)

					{

					if(document.getElementById(tableau[i]).value=="")

						{

						document.getElementById(tableau[i]).className = 'erreur';	

						error++;

						}

					}

			break;

			}

		}

	return error;	

	}

	

// fonction de verification par expression r&eacute;guli&egrave;re

function verifRegExp(element, expreg, required, classe, error)

	{

		if(required)

				{

				if(expreg.test(document.getElementById(element).value)==false)

					{

					document.getElementById(element).className = classe;

					error++;

					}

				}

				else

				{

				if(expreg.test(document.getElementById(element).value)==false && document.getElementById(element).value != "")

					{

					document.getElementById(element).className = classe;

					error++;

					}

				}

			return error;	

	}
