/*
*	effacerChamp()
*	supprime le contenu du champ lors du premier onfocus(),
*	utile dans le cas ou le nom du champ est inscrit a l'interieur de ce champ
*
*	- element : l'input à effacer
*			utilisation : onfocus="effacerChamp(this);"
*
*	Note : elementFocus est un tableau servant a memoriser les champs deja effaces
*			index : nomDuFormulaire_nomDeLElement
*/
elementFocus = Array();
effacerChamp = function(element)
{
	if (!elementFocus[element.form.name+"_"+element.name])
	{
		elementFocus[element.form.name+"_"+element.name] = true;
		element.value = "";
	}
	return true;
}

forcerNombre = function(element)
{
	espace = new RegExp(" ", "g");
	virgule = new RegExp(",", "g");
	
	element.value = element.value.replace(espace, "").replace(virgule, ".");
}

/*
*	submitCalcul()
*	vérifie que le formulaire de calcul est correctement rempli avant de le soumettre
*/
submitCalcul = function()
{
	forcerNombre(document.forms["casdar"].elements["gaec"]);
	forcerNombre(document.forms["casdar"].elements["aoc"]);
	forcerNombre(document.forms["casdar"].elements["vdqs"]);
	forcerNombre(document.forms["casdar"].elements["autres_vins"]);
	forcerNombre(document.forms["casdar"].elements["ca2006"]);
	forcerNombre(document.forms["casdar"].elements["ca2007"]);
	forcerNombre(document.forms["casdar"].elements["casdar2007"]);
	
	strErreur = "";
	casdar2007 = true;
	
	if (document.forms["casdar"].elements["casdar2007"].value == "")
	{
		// Production (AOC)
		if (document.forms["casdar"].elements["aoc"].value == "")
			strErreur = "- Le champ \"Production (AOC)\" n'est pas rempli";
		else
		{
			casdar2007 = false;
			if (parseFloat(document.forms["casdar"].elements["aoc"].value) < 0 ||
				isNaN(parseFloat(document.forms["casdar"].elements["aoc"].value)))
					strErreur += (strErreur != "" ? "\n" : "")+"- La production (AOC) doit être un nombre positif";
		}
		
		// Production (VDQS)
		if (document.forms["casdar"].elements["vdqs"].value == "")
			strErreur += (strErreur != "" ? "\n" : "")+"- Le champ \"Production (VDQS)\" n'est pas rempli";
		else
		{
			casdar2007 = false;
			if (parseFloat(document.forms["casdar"].elements["vdqs"].value) < 0 ||
				isNaN(parseFloat(document.forms["casdar"].elements["vdqs"].value)))
					strErreur += (strErreur != "" ? "\n" : "")+"- La production (VDQS) doit être un nombre positif";
		}
		
		// Production (autres vins)
		if (document.forms["casdar"].elements["autres_vins"].value == "")
			strErreur += (strErreur != "" ? "\n" : "")+"- Le champ \"Production (autres vins)\" n'est pas rempli";
		else
		{
			casdar2007 = false;
			if (parseFloat(document.forms["casdar"].elements["autres_vins"].value) < 0 ||
				isNaN(parseFloat(document.forms["casdar"].elements["autres_vins"].value)))
					strErreur += (strErreur != "" ? "\n" : "")+"- La production (autres vins) doit être un nombre positif";
		}
		
		// CA 2006
		if (document.forms["casdar"].elements["ca2006"].value == "")
			strErreur += (strErreur != "" ? "\n" : "")+"- Le champ \"Chiffre d'affaire 2006\" n'est pas rempli";
		else
		{
			casdar2007 = false;
			if (parseFloat(document.forms["casdar"].elements["ca2006"].value) < 0 ||
				isNaN(parseFloat(document.forms["casdar"].elements["ca2006"].value)))
					strErreur += (strErreur != "" ? "\n" : "")+"- Le chiffres d'affaire 2006 doit être un nombre positif";
		}
	}
	
	// Casdar 2007
	if (casdar2007)
	{
		if (document.forms["casdar"].elements["casdar2007"].value == "")
			strErreur = "- Le champ \"Casdar 2007\" n'est pas rempli";
		else if (parseFloat(document.forms["casdar"].elements["casdar2007"].value) < 0 ||
			isNaN(parseFloat(document.forms["casdar"].elements["casdar2007"].value)))
				strErreur += (strErreur != "" ? "\n" : "")+"- La taxe Casdar 2007 doit être un nombre positif";
	}
	
	// CA 2007
	if (document.forms["casdar"].elements["ca2007"].value == "")
		strErreur += (strErreur != "" ? "\n" : "")+"- Le champ \"Chiffre d'affaire 2007\" n'est pas rempli";
	else if (parseFloat(document.forms["casdar"].elements["ca2007"].value) < 0 ||
		isNaN(parseFloat(document.forms["casdar"].elements["ca2007"].value)))
			strErreur += (strErreur != "" ? "\n" : "")+"- Le chiffres d'affaire 2007 doit être un nombre positif";
	
	if (strErreur != "")
	{
		alert(strErreur);
		return false;
	}
	return true;
}

/*
*	submitAvis()
*	vérifie que le formulaire avis est correctement rempli avant de le soumettre
*/
submitAvis = function()
{
	strErreur = "";
	if (document.forms["avis"].elements["nom"].value == "" || !elementFocus["avis_nom"])
		strErreur = "- Le champ \"Nom\" n'est pas rempli";
	if (document.forms["avis"].elements["prenom"].value == "" || !elementFocus["avis_prenom"])
		strErreur += (strErreur != "" ? "\n" : "")+"- Le champ \"Prénom\" n'est pas rempli";
	if (document.forms["avis"].elements["dep"].value == "" || !elementFocus["avis_dep"])
		strErreur += (strErreur != "" ? "\n" : "")+"- Le champ \"Département\" n'est pas rempli";
	
	if (strErreur != "")
	{
		alert(strErreur);
		return false;
	}
	return true;
}

/*
*	submitCommentaire()
*	vérifie que le formulaire commentaire est correctement rempli avant de le soumettre
*/
submitCommentaire = function()
{
	strErreur = "";
	if (document.forms["commentaire"].elements["nom"].value == "" || !elementFocus["commentaire_nom"])
		strErreur = "- Le champ \"Nom\" n'est pas rempli";
	if (document.forms["commentaire"].elements["prenom"].value == "" || !elementFocus["commentaire_prenom"])
		strErreur += (strErreur != "" ? "\n" : "")+"- Le champ \"Prénom\" n'est pas rempli";
	if (document.forms["commentaire"].elements["dep"].value == "" || !elementFocus["commentaire_dep"])
		strErreur += (strErreur != "" ? "\n" : "")+"- Le champ \"Département\" n'est pas rempli";
	if (document.forms["commentaire"].elements["message"].value == "")
		strErreur += (strErreur != "" ? "\n" : "")+"- Le champ \"Message\" n'est pas rempli";
	
	if (strErreur != "")
	{
		alert(strErreur);
		return false;
	}
	return true;
}
