// Fonction validemail(item) qui teste si un email est valide ou nono
// parametre en entree :
// item : qui contient l'email

function validemail(item) 
{ 
	if (!(item.length >= 5)) return false; 
    if (item.indexOf ('@', 0) == -1) return false; 
    if (item.indexOf ('.', 0) == -1) return false;
    return true; 
} 

// Fonction champs_vide(nom_formulaire,nom_champ,message) qui teste si un champs texte est vide ou non
// parametre en entree :
// nom_formulaire : qui contient le nom du formulaire
// nom_champ : qui contient le nom du champs a tester
// message : qui contient le texte a afficher

function champs_vide(nom_formulaire,nom_champ,message,test)
{
	// on test juste si vide
	if (test == "")
	{
		if (eval("document." + nom_formulaire + "." + nom_champ + ".value") == "")
		{
			alert(message);
			eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
			return(false);
		}
		else
		{
			return(true);
		}
	}
	
	// on test juste si different de vide alors ca doit etre un numérique
	if (test == "vide_numerique")
	{
		return(champs_num(nom_formulaire,nom_champ,message));
	}

	// on test juste si different de vide alors ca doit etre un décimale	
	if (test == "vide_decimale")
	{
		return(champs_num_virgule(nom_formulaire,nom_champ,message));
	}		
	
	// on test juste si numérique
	if (test == "numerique")
	{
		if (eval("document." + nom_formulaire + "." + nom_champ + ".value") == "")
		{
			alert(message);
			eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
			return(false);
		}
		else
		{
			return(champs_num(nom_formulaire,nom_champ,message));
		}	
	}

	// on test juste si décimale	
	if (test == "decimale")
	{
		if (eval("document." + nom_formulaire + "." + nom_champ + ".value") == "")
		{
			alert(message);
			eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
			return(false);
		}
		else
		{	
			return(champs_num_virgule(nom_formulaire,nom_champ,message));
		}
	}

	// on test juste si c'est une heure correcte
	if (test == "heure")
	{
		if (eval("document." + nom_formulaire + "." + nom_champ + ".value") == "")
		{
			alert(message);
			eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
			return(false);
		}
		else
		{
			return(champs_heure(nom_formulaire,nom_champ,message));
		}	
	}
	
	// on test juste si c'est une heure correcte
	if (test == "minute")
	{
		if (eval("document." + nom_formulaire + "." + nom_champ + ".value") == "")
		{
			alert(message);
			eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
			return(false);
		}
		else
		{
			return(champs_minute(nom_formulaire,nom_champ,message));
		}	
	}			

	// on test juste si c'est un jour correcte
	if (test == "jour")
	{
		if (eval("document." + nom_formulaire + "." + nom_champ + ".value") == "")
		{
			alert(message);
			eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
			return(false);
		}
		else
		{
			return(champs_jour(nom_formulaire,nom_champ,message));
		}	
	}	

	// on test juste si c'est un mois correcte
	if (test == "mois")
	{
		if (eval("document." + nom_formulaire + "." + nom_champ + ".value") == "")
		{
			alert(message);
			eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
			return(false);
		}
		else
		{
			return(champs_mois(nom_formulaire,nom_champ,message));
		}	
	}	
	
	return(true);
}

// ***************************************************************************
function champs_num_virgule(nom_formulaire,nom_champ,message)
{

	x= eval("document." + nom_formulaire + "." + nom_champ + ".value");
	for(i=0; i<x.length; i++)
	{
		if (x.substring(i, i+1)<"0" || x.substring(i, i+1)>"9")
		{
			if (x.substring(i, i+1) !="." && x.substring(i, i+1) !=",")
			{		
				alert(message);
				eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
				return(false);
			}
		}
	}
	return(true);
	
}

// ***************************************************************************
function champs_num(nom_formulaire,nom_champ,message)
{

	x= eval("document." + nom_formulaire + "." + nom_champ + ".value");
	for(i=0; i<x.length; i++)
	{
		if (x.substring(i, i+1)<"0" || x.substring(i, i+1)>"9")
		{
				alert(message);
				eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
				return(false);
		}
	}
	return(true);
	
}

// ***************************************************************************
function champs_heure(nom_formulaire,nom_champ,message)
{
	//on vérifie si numerique
	x= eval("document." + nom_formulaire + "." + nom_champ + ".value");
	for(i=0; i<x.length; i++)
	{
		if (x.substring(i, i+1)<"0" || x.substring(i, i+1)>"9")
		{
			alert(message);
			eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
			return(false);
		}
	}
	//on vérifie l'heure
	if (x < 0 || x >23)
	{
		alert(message);
		eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
		return(false);
	}	
	return(true);
	
}

// ***************************************************************************
function champs_minute(nom_formulaire,nom_champ,message)
{
	//on vérifie si numerique
	x= eval("document." + nom_formulaire + "." + nom_champ + ".value");
	for(i=0; i<x.length; i++)
	{
		if (x.substring(i, i+1)<"0" || x.substring(i, i+1)>"9")
		{
			alert(message);
			eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
			return(false);
		}
	}
	//on vérifie l'heure
	if (x < 0 || x >59)
	{
		alert(message);
		eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
		return(false);
	}	
	return(true);
	
}

// ***************************************************************************
function champs_jour(nom_formulaire,nom_champ,message)
{
	//on vérifie si numerique
	x= eval("document." + nom_formulaire + "." + nom_champ + ".value");
	for(i=0; i<x.length; i++)
	{
		if (x.substring(i, i+1)<"0" || x.substring(i, i+1)>"9")
		{
			alert(message);
			eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
			return(false);
		}
	}
	//on vérifie l'heure
	if (x < 1 || x >31)
	{
		alert(message);
		eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
		return(false);
	}	
	return(true);
	
}

// ***************************************************************************
function champs_mois(nom_formulaire,nom_champ,message)
{
	//on vérifie si numerique
	x= eval("document." + nom_formulaire + "." + nom_champ + ".value");
	for(i=0; i<x.length; i++)
	{
		if (x.substring(i, i+1)<"0" || x.substring(i, i+1)>"9")
		{
			alert(message);
			eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
			return(false);
		}
	}
	//on vérifie l'heure
	if (x < 1 || x >12)
	{
		alert(message);
		eval("document." + nom_formulaire + "." + nom_champ + ".focus()");
		return(false);
	}	
	return(true);
	
}

// ***************************************************************************
function test_email(nom_formulaire,email,message)
{
	if  (eval("document." + nom_formulaire + "." + email + ".value") == "")
	{           
		alert(message);
		eval("document." + nom_formulaire + "." + email + ".focus()");
		return false;
	}
	else
	{ 
		if (!validemail(eval("document." + nom_formulaire + "." + email + ".value")))
		{
			alert(message);
			eval("document." + nom_formulaire + "." + email + ".focus()");
			return false;
		}
	}
	return true;
}

// fonction popup(adresse,target,largeur,hauteur,degauche,duhaut,status,varscroll,resize) 
// qui permet d'ouvrir une fenetre volante avec differents parametres
function popup_fenetre(adresse,target,largeur,hauteur,degauche,duhaut,status,varscroll,resize)
{
	//parametrage par defaut des variables
	if (target == "") { target = "new_window";}
	if (largeur == "") { largeur = "500";}
	if (hauteur == "") { hauteur = "400";}
	if (degauche == "") { degauche = "0";}
	if (duhaut == "") { duhaut = "0";}
	if (varscroll == "") { varscroll = "yes";}
	if (resize == "") { resize = "yes";}
	if (status == "") { status = "no";}
	
	window.open(adresse,target,"width="+largeur+",height="+hauteur+",left="+degauche+",top="+duhaut+",status="+status+",toolbar=no,menubar=no,scrollbars="+varscroll+",location=no,directories=no,resizable="+resize);
}