var elt,
msg_elt,
msg_err=document.getElementById("msg_err"), 
msg_err_temp='',
formulaire,
v_nom=0,
v_prenom=0,
v_soc=0,
v_mail=0,
v_identifiant=0,
v_mdp=0,
v_num_tel=0,
v_c_p=0,
v_titre_page=0,
v_des_page=0,
v_mot_cle=0,
v_url_page=0,
v_elt_inter=0;

function general(champ)
{
	elt=document.getElementById(champ);
	if(champ=="nom" || champ=="prenom" || champ=="soc" || champ=="titre_page" || champ=="mot_cle" || champ=="elt_inter")
	{
		msg_elt = document.getElementById("msg_"+champ);
		if(/^.{2,20}$/.test(elt.value))
		{
			msg_elt.innerHTML="<span class=\"msg_ok\">OK</span>";
			if(champ=="nom"){v_nom = 1;}
			else if(champ=="prenom"){v_prenom = 1;}
			else if(champ=="soc"){v_soc = 1;}
			else if(champ=="titre_page"){v_titre_page = 1;}
			else if(champ=="mot_cle"){v_mot_cle = 1;}
			else if(champ=="elt_inter"){v_elt_inter = 1;}
		}
		else if(elt.value=="")
		{
			msg_elt.innerHTML="<span class=\"msg_neutre\">Entre 2 et 20 caractères</span>" ;
			if(champ=="nom"){v_nom = 0;}
			else if(champ=="prenom"){v_prenom = 0;}
			else if(champ=="titre_page"){v_titre_page = 0;}
			else if(champ=="mot_cle"){v_mot_cle = 0;}
			else if(champ=="elt_inter"){v_elt_inter = 0;}
			else if(champ=="soc"){v_soc = 1;}
		}
		else
		{
			msg_elt.innerHTML="<span class=\"msg_err\">Format incorrect (2-20 caractères)  </span>";
			if(champ=="nom"){v_nom = 0;}
			else if(champ=="prenom"){v_prenom = 0;}
			else if(champ=="titre_page"){v_titre_page = 0;}
			else if(champ=="soc"){v_soc = 0;}
			else if(champ=="mot_cle"){v_mot_cle = 0;}
			else if(champ=="elt_inter"){v_elt_inter = 0;}
		}
	}
	else if(champ=="mail")
	{
		msg_elt = document.getElementById("msg_"+champ);
		if(/^[a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,6}$/.test(elt.value))
		{
			msg_elt.innerHTML="<span class=\"msg_ok\">OK</span>";
			v_mail=1;
		}
		else if(elt.value=="")
		{
			msg_elt.innerHTML="" ;
			v_mail=0;
		}
		else
		{
			msg_elt.innerHTML="<span class=\"msg_err\">Format incorrect : votre adresse mail n'est pas valide.</span>";
			v_mail=0;
		}
	}
	else if(champ=="conf_mail")
	{
		msg_elt = document.getElementById("msg_"+champ);
		var mail = document.getElementById("mail");
		if(mail.value == elt.value && mail.value!="")
		{
			msg_elt.innerHTML="<span class=\"msg_ok\">OK</span>";
			v_mail=1;
		}
		else if(elt.value=="")
		{
			msg_elt.innerHTML="<span class=\"msg_neutre\">Veuillez confirmer votre adresse mail</span>" ;
			v_mail=0;
		}
		else
		{
			msg_elt.innerHTML="<span class=\"msg_err\">Votre adresse mail ne correspond pas.</span>";
			v_mail=0;
		}
	}
	else if(champ=="identifiant")
	{
		msg_elt = document.getElementById("msg_"+champ);
		if(/^[a-zA-Z0-9_.-]{4,20}$/.test(elt.value))
		{
			msg_elt.innerHTML="<span class=\"msg_ok\">OK</span>";
			v_identifiant=1;
		}
		else if(elt.value=="")
		{
			msg_elt.innerHTML="<span class=\"msg_neutre\">Entre 4 et 20 caractères. Minuscules, majuscules, chiffres, _, - et . autorisés.</span>" ;
			v_identifiant=0;
		}
		else
		{
			msg_elt.innerHTML="<span class=\"msg_err\">Format incorrect : entre 4 et 20 caractères, minuscules, majuscules, chiffres, _, - et . autorisés.</span>";
			v_identifiant=0;
		}
	}
	else if(champ=="mdp")
	{
		msg_elt = document.getElementById("msg_"+champ);
		if(/^[a-zA-Z0-9_.-]{4,20}$/.test(elt.value))
		{
			msg_elt.innerHTML="<span class=\"msg_ok\">OK</span>";
			v_mdp=1;
		}
		else if(elt.value=="")
		{
			msg_elt.innerHTML="<span class=\"msg_neutre\">Entre 4 et 20 caractères. Minuscules, majuscules, chiffres, _, - et . autorisés.</span>" ;
			v_mdp=0;
		}
		else
		{
			msg_elt.innerHTML="<span class=\"msg_err\">Format incorrect : entre 4 et 20 caractères, minuscules, majuscules, chiffres, _, - et . autorisés.</span>";
			v_mdp=0;
		}
	}
	else if(champ=="conf_mdp")
	{
		msg_elt = document.getElementById("msg_"+champ);
		var mdp = document.getElementById("mdp");
		if(mdp.value == elt.value && mdp.value!="")
		{
			msg_elt.innerHTML="<span class=\"msg_ok\">OK</span>";
			v_mdp=1;
		}
		else if(elt.value=="")
		{
			msg_elt.innerHTML="<span class=\"msg_neutre\">Veuillez confirmer votre mot de passe</span>" ;
			v_mdp=0;
		}
		else
		{
			msg_elt.innerHTML="<span class=\"msg_err\">Votre mot de passe ne correspond pas.</span>";
			v_mdp=0;
		}
	}
	else if(champ=="num_tel")
	{
		msg_elt = document.getElementById("msg_"+champ);
		if(/^0[1-9]([-. ]?[0-9]{2}){4}$/.test(elt.value))
		{
			msg_elt.innerHTML="<span class=\"msg_ok\">OK</span>";
			v_num_tel=1;
		}
		else if(elt.value=="")
		{
			msg_elt.innerHTML="<span class=\"msg_neutre\">Le numéro de téléphone est composé de 10 chiffres qui peuvent être séparés par un espace, un tiret ( - ) ou un point.</span>" ;
			v_num_tel=1;
		}
		else
		{
			msg_elt.innerHTML="<span class=\"msg_err\">Format incorrect : entre 4 et 20 caractères, minuscules, majuscules, chiffres, _, - et . autorisés.</span>";
			v_num_tel=0;
		}
	}
	else if(champ=="c_p")
	{
		msg_elt = document.getElementById("msg_"+champ);
		if(/^[0-9]{5}$/.test(elt.value))
		{
			msg_elt.innerHTML="<span class=\"msg_ok\">OK</span>";
			v_c_p=1;
		}
		else if(elt.value=="")
		{
			msg_elt.innerHTML="<span class=\"msg_neutre\">Le code postal français est composé de 5 chiffres uniquement</span>" ;
			v_c_p=1;
		}
		else
		{
			msg_elt.innerHTML="<span class=\"msg_err\">Format incorrect : le code postal français est composé de 5 chiffres uniquement.</span>";
			v_c_p=0;
		}
	}
	else if(champ=="des_page")
	{
		msg_elt = document.getElementById("msg_"+champ);
		if(/^.{10,50}$/.test(elt.value))
		{
			msg_elt.innerHTML="<span class=\"msg_ok\">OK</span>";
			v_des_page=1;
		}
		else if(elt.value=="")
		{
			msg_elt.innerHTML="<span class=\"msg_neutre\">Description comprise entre 10 et 50 caractères</span>" ;
			v_des_page=0;
		}
		else
		{
			msg_elt.innerHTML="<span class=\"msg_err\">Format incorrect : description comprise entre 10 et 50 caractères.</span>";
			v_des_page=0;
		}
	}
}

function soumission(form)
{
	formulaire = document.getElementById(form);
	if(form=="form_contact") // Gestion de la soumission du formulaire de contact
	{
		general('nom');
		general('prenom');
		general('mail');
		general('conf_mail');
		if(v_nom==1 && v_prenom==1 && v_mail==1)
		{
			if(confirm("Êtes vous sur de vouloir effectuer cette action ?"))
			{
				formulaire.submit();
			}
		}
		else
		{
			msg_err.innerHTML="";
			msg_err.innerHTML+= aff_msg_err('v_nom');
			msg_err.innerHTML+= aff_msg_err('v_prenom');
			msg_err.innerHTML+= aff_msg_err('v_mail');
		}
	}
	else if(form=="form_co_creation_compte") // Gestion du formulaire de la demande de création de compte
	{
		general('nom');
		general('prenom');
		general('mail');
		if(v_nom==1 && v_prenom==1 && v_mail==1)
		{
			if(confirm("Êtes vous sur de vouloir effectuer cette action ?"))
			{
				formulaire.submit();
			}
		}
		else
		{
			msg_err.innerHTML="";
			msg_err.innerHTML+= aff_msg_err('v_nom');
			msg_err.innerHTML+= aff_msg_err('v_prenom');
			msg_err.innerHTML+= aff_msg_err('v_mail');
		}
	}
	else if(form=="form_creation_compte") // Gestion du formulaire de la création de compte
	{
		general('identifiant');
		general('mdp');
		general('conf_mdp');
		
		general('nom');
		general('prenom');
		
		general('mail');
		general('conf_mail');
		
		general('num_tel');
		general('c_p');
		
		general('soc');
		
		verifPseudo(document.getElementById("identifiant").value);
		if(/associé/.test(document.getElementById("pseudobox").innerHTML)){v_identifiant=0;}
		
		verifMail(document.getElementById("mail").value);
		if(/associé/.test(document.getElementById("mailbox").innerHTML)){v_mail=0;}
		
		if(v_identifiant==1 && v_mdp==1 && v_nom==1 && v_prenom==1 && v_mail==1 && v_num_tel==1 && v_c_p==1 && v_soc==1)
		{
			if(confirm("Êtes vous sur de vos informations ?\nVous pourrez modifier vos informations par la suite dans votre espace membre, mais pas votre identifiant.\n"))
			{
				formulaire.submit();
			}
		}
		else
		{
			msg_err.innerHTML="";
			
			msg_err.innerHTML+= aff_msg_err('v_identifiant');
			msg_err.innerHTML+= aff_msg_err('v_mdp');
			
			msg_err.innerHTML+= aff_msg_err('v_nom');
			msg_err.innerHTML+= aff_msg_err('v_prenom');
			
			msg_err.innerHTML+= aff_msg_err('v_soc');
			
			msg_err.innerHTML+= aff_msg_err('v_mail');
			
			msg_err.innerHTML+= aff_msg_err('v_num_tel');
			msg_err.innerHTML+= aff_msg_err('v_c_p');
		}
	}
	else if(form=="form_m_identifiant_compte") // Gestion du formulaire de modification d'identifiant
	{
		general('identifiant');
		
		verifPseudo(document.getElementById("identifiant").value);
		if(/associé/.test(document.getElementById("pseudobox").innerHTML)){v_identifiant=0;}
		
		if(v_identifiant==1)
		{
			if(confirm("Êtes vous sur de vouloir effectuer cette action ?"))
			{
				formulaire.submit();
			}
		}
		else
		{
			msg_err.innerHTML="";
			msg_err.innerHTML+= aff_msg_err('v_identifiant');
		}
	}
	else if(form=="form_m_mdp_compte") // Gestion du formulaire de modification de mot de passe
	{
		general('mdp');
		general('conf_mdp');

		if(v_mdp==1)
		{
			if(confirm("Êtes vous sur de vouloir effectuer cette action ?"))
			{
				formulaire.submit();
			}
		}
		else
		{
			msg_err.innerHTML="";
			msg_err.innerHTML+= aff_msg_err('v_mdp');
		}
	}
	else if(form=="form_renouvellement_mdp") // Gestion du formulaire de renouvellement de mot de passe
	{
		general('mail');

		if(v_mail==1)
		{

			formulaire.submit();
			
		}
		else
		{
			msg_err.innerHTML="";
			msg_err.innerHTML+= aff_msg_err('v_mail');
		}
	}
	else if(form=="form_m_mail_compte") // Gestion du formulaire de modification d'adresse mail
	{
		general('mail');
		general('conf_mail');
		
		verifMail(document.getElementById("mail").value);
		if(/associé/.test(document.getElementById("mailbox").innerHTML)){v_mail=0;}
		
		if(v_mail==1)
		{
			if(confirm("Êtes vous sur de vouloir effectuer cette action ?"))
			{
				formulaire.submit();
			}
		}
		else
		{
			msg_err.innerHTML="";
			msg_err.innerHTML+= aff_msg_err('v_mail');
		}
	}
	else if(form=="form_m_informations_compte") // Gestion du formulaire de modification des informations générales
	{
		general('nom');
		general('prenom');
		general('num_tel');
		general('c_p');

		if(v_nom==1 && v_prenom==1 && v_num_tel==1 && v_c_p==1)
		{
			if(confirm("Êtes vous sur de vouloir effectuer cette action ?"))
			{
				formulaire.submit();
			}
		}
		else
		{
			msg_err.innerHTML="";
			msg_err.innerHTML+= aff_msg_err('v_nom');
			msg_err.innerHTML+= aff_msg_err('v_prenom');
			msg_err.innerHTML+= aff_msg_err('v_num_tel');
			msg_err.innerHTML+= aff_msg_err('v_c_p');
		}
	}
	else if(/^form_suppression_promo/.test(form)) // Gestion du formulaire de suppression de promotion
	{
		if(confirm("Êtes vous vraiment sur de vouloir supprimer cette promotion ?"))
		{
			formulaire.submit();
		}
	}
	else if(form=="form_suppression_mot_cle") // Gestion du formulaire de suppression de mot clé
	{
		if(confirm("Êtes vous vraiment sur de vouloir supprimer ce mot clé ?\nToutes les relations avec les pages seront supprimées."))
		{
			formulaire.submit();
		}
	}
	else if(form=="form_suppr_factures_perimees") // Gestion du formulaire de suppression de factures périmées
	{
		if(confirm("Êtes vous vraiment sur de vouloir supprimer ces factures ?"))
		{
			formulaire.submit();
		}
	}
	else if(form=="form_suppr_bons_perimes") // Gestion du formulaire de suppression de bons périmés
	{
		if(confirm("Êtes vous vraiment sur de vouloir supprimer ces bons ?"))
		{
			formulaire.submit();
		}
	}
	else if(form=="form_suppr_mois_perimes") // Gestion du formulaire de suppression de mois périmés
	{
		if(confirm("Êtes vous vraiment sur de vouloir supprimer ces bons ?"))
		{
			formulaire.submit();
		}
	}
	else if(/^form_suppression_facture/.test(form)) // Gestion du formulaire de suppression de facture(s)
	{
		if(confirm("Êtes vous vraiment sûr de vouloir supprimer ces/cette facture(s) ?"))
		{
			formulaire.submit();
		}
	}
	else if(/^form_suppression_bon/.test(form)) // Gestion du formulaire de suppression de bon(s) d'intervention
	{
		if(confirm("Êtes vous vraiment sûr de vouloir supprimer ce/ces bon(s) d'intervention ?"))
		{
			formulaire.submit();
		}
	}
	else if(/^form_suppression_fichier/.test(form)) // Gestion du formulaire de suppression de fichier(s)
	{
		if(confirm("Êtes vous vraiment sûr de vouloir supprimer ce/ces fichier(s) ?"))
		{
			formulaire.submit();
		}
	}
	else if(form=="form_suppression_client") // Gestion du formulaire de suppression de compte client
	{
		if(confirm("Êtes vous vraiment sûr de vouloir supprimer ce compte client ?\n N'oubliez pas que tous les fichiers en relation avec ce client seront supprimés"))
		{
			formulaire.submit();
		}
	}
	else if(form=="form_suppression_elt_inter") // Gestion du formulaire de suppression d'élément d'intervention
	{
		if(confirm("Êtes vous vraiment sur de vouloir supprimer cet élément ?"))
		{
			formulaire.submit();
		}
	}
	else if(form=="form_suppression_page") // Gestion du formulaire de suppression de page
	{
		if(confirm("Êtes vous vraiment sur de vouloir supprimer cette page ?\nToutes les relations avec les mots clés seront supprimées."))
		{
			formulaire.submit();
		}
	}
	else if(form=="form_ajout_page") // Gestion du formulaire d'ajout de page
	{
		general('titre_page');
		general('des_page');
		
		verifUrlPage(document.getElementById("url_page").value);
		if(/existe/.test(document.getElementById("urlpagebox").innerHTML)){v_url_page=0;}
		if(/libre/.test(document.getElementById("urlpagebox").innerHTML)){v_url_page=1;}
		
		verifPage(document.getElementById("titre_page").value);
		if(/existe/.test(document.getElementById("pagebox").innerHTML)){v_titre_page=0;}
		
		if(v_titre_page==1 && v_des_page==1 && v_url_page==1)
		{
			if(confirm("Êtes vous sur de vouloir ajouter cette page ?"))
			{
				formulaire.submit();
			}
		}
		else
		{
			msg_err.innerHTML="";
			msg_err.innerHTML+= aff_msg_err('v_titre_page');
			msg_err.innerHTML+= aff_msg_err('v_des_page');
			msg_err.innerHTML+= aff_msg_err('v_url_page');
		}
	}
	else if(form=="form_modification_page") // Gestion du formulaire d'ajout de page
	{
		general('titre_page');
		general('des_page');
		
		verifUrlPage(document.getElementById("url_page").value);
		if(/existe/.test(document.getElementById("urlpagebox").innerHTML)){v_url_page=0;}
		if(/libre/.test(document.getElementById("urlpagebox").innerHTML)){v_url_page=1;}
		
		verifPage(document.getElementById("titre_page").value);
		if(/existe/.test(document.getElementById("pagebox").innerHTML)){v_titre_page=0;}
		
		if(document.getElementById("titre_page").value==""){v_titre_page=1;}
		if(document.getElementById("url_page").value==""){v_url_page=1;}
		
		if(v_titre_page==1 && v_des_page==1 && v_url_page==1)
		{
			if(confirm("Êtes vous sur de vouloir modifier cette page ?"))
			{
				formulaire.submit();
			}
		}
		else
		{
			msg_err.innerHTML="";
			msg_err.innerHTML+= aff_msg_err('v_titre_page');
			msg_err.innerHTML+= aff_msg_err('v_des_page');
			msg_err.innerHTML+= aff_msg_err('v_url_page');
		}
	}
	else if(form=="form_ajout_mot_cle") // Gestion du formulaire d'ajout de mot cle
	{
		general('mot_cle');
		
		verifMotCle(document.getElementById("mot_cle").value);
		if(/existe/.test(document.getElementById("motclebox").innerHTML)){v_mot_cle=0;}
		
		if(v_mot_cle==1)
		{
			if(confirm("Êtes vous sur de vouloir ajouter ce mot cle ?"))
			{
				formulaire.submit();
			}
		}
		else
		{
			msg_err.innerHTML="";
			msg_err.innerHTML+= aff_msg_err('v_mot_cle');
		}
	}
	else if(form=="form_modification_mot_cle") // Gestion du formulaire d'ajout de mot cle
	{
		general('mot_cle');
		
		verifMotCle(document.getElementById("mot_cle").value);
		if(/existe/.test(document.getElementById("motclebox").innerHTML)){v_mot_cle=0;}
		
		if(document.getElementById("mot_cle").value==""){v_mot_cle=1;}
		
		if(v_mot_cle==1)
		{
			if(confirm("Êtes vous sur de vouloir modifier ce mot cle ?"))
			{
				formulaire.submit();
			}
		}
		else
		{
			msg_err.innerHTML="";
			msg_err.innerHTML+= aff_msg_err('v_mot_cle');
		}
	}
	else if(form=="form_ajout_elt_inter") // Gestion du formulaire d'ajout d'element d'intervention
	{
		general('elt_inter');
		if(v_elt_inter==1)
		{
			if(confirm("Êtes vous sur de vouloir ajouter cet élément ?"))
			{
				formulaire.submit();
			}
		}
		else
		{
			msg_err.innerHTML="";
			msg_err.innerHTML+= aff_msg_err('v_elt_inter');
		}
	}
	else if(form=="form_modification_elt_inter") // Gestion du formulaire de modification d'element d'intervention
	{
		general('elt_inter');
		
		verifEltInter(document.getElementById("elt_inter").value);
		if(/existe/.test(document.getElementById("eltinterbox").innerHTML)){v_elt_inter=0;}
		
		if(document.getElementById("elt_inter").value==""){v_elt_inter=1;}
		
		if(v_elt_inter==1)
		{
			if(confirm("Êtes vous sur de vouloir modifier cet élément ?"))
			{
				formulaire.submit();
			}
		}
		else
		{
			msg_err.innerHTML="";
			msg_err.innerHTML+= aff_msg_err('v_elt_inter');
		}
	}
}

function aff_msg_err(condition)
{
	if(condition=="v_nom" && v_nom==0)
	{
		msg_err_temp="Votre nom ne respecte pas les critères. <br/>";
		return msg_err_temp;
	}
	else if(condition=="v_prenom" && v_prenom==0)
	{
		msg_err_temp="Votre prenom ne respecte pas les critères. <br/>";
		return msg_err_temp;
	}
	else if(condition=="v_mail" && v_mail==0)
	{
		msg_err_temp="Votre mail ne respecte pas les critères. <br/>";
		return msg_err_temp;
	}
	else if(condition=="v_identifiant" && v_identifiant==0)
	{
		msg_err_temp="Votre identifiant ne respecte pas les critères. <br/>";
		return msg_err_temp;
	}
	else if(condition=="v_mdp" && v_mdp==0)
	{
		msg_err_temp="Votre mot de passe ne respecte pas les critères. <br/>";
		return msg_err_temp;
	}
	else if(condition=="v_num_tel" && v_num_tel==0)
	{
		msg_err_temp="Votre numéro de téléphone ne respecte pas les critères. Laissez le champ vide ou modifiez le.<br/>";
		return msg_err_temp;
	}
	else if(condition=="v_c_p" && v_c_p==0)
	{
		msg_err_temp="Votre code postal ne respecte pas les critères. Laissez le champ vide ou modifiez le.<br/>";
		return msg_err_temp;
	}
	else if(condition=="v_soc" && v_soc==0)
	{
		msg_err_temp="Le champ société ne respecte pas les critères. Laissez le champ vide ou modifiez le. N'oubliez pas que remplir ou non ce champ détermine si vous êtes professionnel ou particulier.<br/>";
		return msg_err_temp;
	}
	else if(condition=="v_titre_page" && v_titre_page==0)
	{
		msg_err_temp="Le titre de la page n'est pas renseigné.<br/>";
		return msg_err_temp;
	}
	else if(condition=="v_des_page" && v_des_page==0)
	{
		msg_err_temp="La description de la page n'est pas renseignée.<br/>";
		return msg_err_temp;
	}
	else if(condition=="v_mot_cle" && v_mot_cle==0)
	{
		msg_err_temp="Le mot clé ne respecte pas les critères.<br/>";
		return msg_err_temp;
	}
	else if(condition=="v_url_page" && v_url_page==0)
	{
		msg_err_temp="L'url ne respecte pas les critères.<br/>";
		return msg_err_temp;
	}
	else if(condition=="v_elt_inter" && v_elt_inter==0)
	{
		msg_err_temp="L'élément d'intervention ne respecte pas les critères.<br/>";
		return msg_err_temp;
	}
	else
	{
		msg_err_temp="";
		return msg_err_temp;
	}
}
