function VerifEmail(adresse){
         EM = /^[A-Za-z0-9\.\-_]+[@][A-Za-z0-9\-\.]+[\.][A-Za-z][A-Za-z][A-Za-z]?$/;
         if(!EM.test(adresse))
         {return false;}
         else {return true;}
}

function LoadInfos(liste,destination) 
  {
  var n=liste.options[liste.selectedIndex].value;
  window.location=destination+"&type="+n;
  }

function ValidateFormAdmin(form)
	{
	alert(form.email.value);
	if (!VerifEmail(form.email.value)){
        alert("L'adresse email n'est pas valide.");
        return false;
	}else if(form.Nom.value == ""){
        alert("Le nom n'est pas correct.");return false;
	}else if(form.Prenom.value == ""){
        alert("Le prenom n'est pas correct.");return false;
	}else if(form.Login.value == ""){
        alert("Le login n'est pas correct.");return false;
	}else if(form.Admin_Pass.value != form.Admin_Pass2.value) {
        alert("Les deux password ne correspondent pas.");return false;
	}else {return true;}
}


function EstSirenValide(siren) {
    var estValide;
    if ( (siren.length != 9) || (isNaN(siren)) )
      estValide = false;
    else {
     
      var somme = 0;
      var tmp;
      for (var cpt = 0; cpt<siren.length; cpt++) {
        if ((cpt % 2) == 1) { 
          tmp = siren.charAt(cpt) * 2; 
          if (tmp > 9)
            tmp -= 9;  
        }
        else
          tmp = siren.charAt(cpt);
        somme += parseInt(tmp);
      }
      if ((somme % 10) == 0)
        estValide = true;  
      else
        estValide = false;
    }
    return estValide;
  }
  

function EstSiretValide(siret) {
    var estValide;
    if ( (siret.length != 14) || (isNaN(siret)) )
      estValide = false;
    else {
       
      var somme = 0;
      var tmp;
      for (var cpt = 0; cpt<siret.length; cpt++) {
        if ((cpt % 2) == 0) { 
          tmp = siret.charAt(cpt) * 2; 
          if (tmp > 9)
            tmp -= 9;  
        }
       else
         tmp = siret.charAt(cpt);
         somme += parseInt(tmp);
      }
      if ((somme % 10) == 0)
        estValide = true; 
      else
        estValide = false;
    }
    return estValide;
  }    


function isDate(d) {
  
  if (d == "") 
    return false;
  
  e = new RegExp("^[0-9]{1,2}\/[0-9]{1,2}\/([0-9]{2}|[0-9]{4})$");
  
  if (!e.test(d)) 
    return false; 
 
  j = parseInt(d.split("/")[0], 10); 
  m = parseInt(d.split("/")[1], 10); 
  a = parseInt(d.split("/")[2], 10); 
  
  if (a < 1000) {
    if (a < 89)  a+=2000; 
    else a+=1900;
  }

  if (a%4 == 0 && a%100 !=0 || a%400 == 0) fev = 29;
  else fev = 28;
 
  nbJours = new Array(31,fev,31,30,31,30,31,31,30,31,30,31);
 
  return ( m >= 1 && m <=12 && j >= 1 && j <= nbJours[m-1] );
}


// validation formulaire inscritption demandeur

function ValidateFormDemandeur(form)
	{
	RE = /^[A-Za-zàâäéèêëîïôùûç\s,.'0-9\-]+$/;	
	erreur='';
	if (!VerifEmail(form.Email.value)){
        erreur+="L'adresse email n'est pas valide.\n";
	}
	if(form.Nom.value == "" || !RE.test(form.Nom.value)){
        erreur+="Le Nom contient des caractères incorrects.\n";
	}
	if(!RE.test(form.Prenom.value) || form.Prenom.value==''){
        erreur+="Le Prénom contient des caractères incorrects.\n";
	}
	
	if(form.MotDePasse.value != form.MotDePasseC.value) {
        erreur+="Les deux mots de passe que vous avez saisi ne correspondent pas.\n";
	}
	if(form.MotDePasse.value.length<4 || !RE.test(form.MotDePasseC.value)) {
        erreur+="Le mot de passe doit comporter au minimum 4 caractères non spéciaux.\n";
	}
	
	if(erreur!=''){
		message_erreur="Les erreurs suivantes ont été constatées:\n\n"+erreur;
		alert(message_erreur);return false;
	}
	else {return true;}
	}
	
function ValidateFormLoginDemandeur(form)
	{
	RE = /^[A-Za-zàâäéèêëîïôùûç\s,.'0-9\-]+$/;	
	erreur='';
	
	if (!VerifEmail(form.Login.value)){
        erreur+="Le Login ( Email ) n'est pas valide.\n";
	}
	
	
	if(erreur!=''){
		message_erreur="Les erreurs suivantes ont été constatées:\n\n"+erreur;
		alert(message_erreur);return false;
	}
	else {return true;}
	}
	
function ValidateFormDemandemdp(form)
	{
	RE = /^[A-Za-zàâäéèêëîïôùûç\s,.'0-9\-]+$/;	
	erreur='';
	
	if (!VerifEmail(form.Email.value)){
        erreur+="Cet Email n'est pas valide.\n";
	}
	
	
	if(erreur!=''){
		message_erreur="Les erreurs suivantes ont été constatées:\n\n"+erreur;
		alert(message_erreur);return false;
	}
	else {return true;}
	}
	
// verification du champ recherche rapide

function ValidateFormRechercheRapide(form)
	{
	
	RERECH = /^[A-Za-zàâäéèêëîïôùûç\s,.'0-9\-]+$/;	
	erreur='';
	
	if(!RERECH.test(form.Champ_Recherche_Rapide.value) && form.Champ_Recherche_Rapide.value!=''){
   
		erreur+="Le Champ Recherche contient des caractères incorrects.\n";
	}
	
	if(erreur!=''){
		message_erreur="Les erreurs suivantes ont été constatées:\n\n"+erreur;
		alert(message_erreur);return false;
	}
	else {return true;}
}	
	

	function test(){
	alert('message_erreur');
		}

function ValidateFormDemandeurModification(form)
	{
	RE = /^[A-Za-zàâäéèêëîïôùûç\s,.'0-9\-]+$/;	
	erreur='';
	if (!VerifEmail(form.Email_Demandeur.value)){
        erreur+="L'adresse email saisie n'est pas valide.\n";
	}
	if(form.Nom_Demandeur.value == "" || !RE.test(form.Nom_Demandeur.value)){
        erreur+="Le Nom contient des caractères incorrects.\n";
	}
	if(!RE.test(form.Prenom_Demandeur.value) && form.Prenom_Demandeur.value!=''){
        erreur+="Le Prénom contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Adresse.value) && form.Adresse.value!=''){
        erreur+="L'adresse contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Adresse2.value) && form.Adresse2.value!=''){
        erreur+="L'adresse contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Ville.value) && form.Ville.value!=''){
        erreur+="La ville contient des caractères incorrects.\n";
	}
	if(!RE.test(form.Code_Postal.value) && form.Code_Postal.value!=''){
        erreur+="Le code postal contient des caractères incorrects.\n";
	}
	if(!RE.test(form.Pays.value) && form.Pays.value!=''){
        erreur+="Le pays contient des caractères incorrects.\n";
	}
	if(!RE.test(form.Tel_Portable.value) && form.Tel_Portable.value!=''){
        erreur+="Le numéro de téléphone portable contient des caractères incorrects.\n";
	}
	if(!RE.test(form.Tel_Fixe.value) && form.Tel_Fixe.value!=''){
        erreur+="Le numéro de téléphone fixe contient des caractères incorrects.\n";
	}
	
	if(form.mdp_Demandeur.value != form.conf_Demandeur.value) {
        erreur+="Les deux mots de passe ne correspondent pas.\n";
	}
	if((form.mdp_Demandeur.value.length<4 || !RE.test(form.mdp_Demandeur.value)) && form.mdp_Demandeur.value!='') {
        erreur+="Le mot de passe doit comporter au minimum 4 caractères non spéciaux.\n";
	}
	datenaissancerecomposee =form.jour_naissance.value+"/"+form.mois_naissance.value+"/"+form.annee_naissance.value;
	if (!isDate(datenaissancerecomposee) && !(form.jour_naissance.value=='' && form.mois_naissance.value=='' && form.annee_naissance.value=='')){
		erreur+="La date de naissance saisie est invalide.\n";
	}
	
	if(erreur!=''){
		message_erreur="Les erreurs suivantes ont été constatées:\n\n"+erreur;
		alert(message_erreur);return false;
	}
	else {return true;}
}



function ValidateFormRecruteurModification(form)
	{
	RE = /^[A-Za-zàâäéèêëîïôùûç\s,.'0-9\-]+$/;	
	erreur='';
	
	if(form.mdp_Recruteur.value != form.conf_Recruteur.value) {
        erreur+="Les champs \"Mot de passe\" et \"Confirmation MDP\" doivent être identiques.\n";
	}
	if((form.mdp_Recruteur.value.length<6 || !RE.test(form.mdp_Recruteur.value)) && form.mdp_Recruteur.value!='') {
        erreur+="Le mot de passe doit comporter au minimum 6 caractères non spéciaux.\n";
	}
	
	if (!VerifEmail(form.Email_Contact.value) && form.Email_Contact.value!=''){
        erreur+="Le champ \"Email RH\" est invalide.\n";
	}
	
	if(!RE.test(form.Tel_Fixe.value) && form.Tel_Fixe.value!=''){
        erreur+="Le champ \"Tel. fixe\" contient des caractères incorrects.\n";
    }   
    
	if(!RE.test(form.Fax.value) && form.Fax.value!=''){
        erreur+="Le champ \"Fax\" contient des caractères incorrects.\n";
    }
    
    if(!RE.test(form.Tel_Portable.value) && form.Tel_Portable.value!=''){
        erreur+="Le champ \"Tel. portable\" contient des caractères incorrects.\n";
    }
    
	if(!RE.test(form.Adresse.value) && form.Adresse.value!=''){
        erreur+="Le champ \"Adresse\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Adresse2.value) && form.Adresse2.value!=''){
        erreur+="Le champ \"Adresse\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Ville.value) && form.Ville.value!=''){
        erreur+="Le champ \"Ville\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Code_Postal.value) && form.Code_Postal.value!=''){
        erreur+="Le champ \"Code postal\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Pays.value) && form.Pays.value!=''){
        erreur+="Le champ \"Pays\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Web.value) && form.Web.value!=''){
        erreur+="Le champ \"Site Web\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Numero_TVA.value) && form.Numero_TVA.value!=''){
        erreur+="Le champ \"TVA\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Destinataire_Facturation.value) && form.Destinataire_Facturation.value!=''){
        erreur+="Le champ \"Destinataire\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Adresse_Facturation.value) && form.Adresse_Facturation.value!=''){
        erreur+="Le champ \"Adresse de facturation\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Adresse2_Facturation.value) && form.Adresse2_Facturation.value!=''){
        erreur+="Le champ \"Adresse de facturation\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Ville_Facturation.value) && form.Ville_Facturation.value!=''){
        erreur+="Le champ \"Ville (facturation)\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Code_Postal_Facturation.value) && form.Code_Postal_Facturation.value!=''){
        erreur+="Le champ \"Code postal (facturation)\" contient des caractères incorrects.\n";
	}
	if(erreur!=''){
		message_erreur="Les erreurs suivantes ont été constatées:\n\n"+erreur;
		alert(message_erreur);return false;
	}
	else {return true;}
}


function ValidateCGV(form)
	{
	erreur='';
	
	if(form.Acceptation_CGV.checked == false) {
        erreur="Vous devez accepter les conditions générales de vente pour pouvoir continuer la commande.\n";
		alert(erreur);return false;
        }
	
    else {return true;}
}


function ValidateFormRecruteurCreation(form)
	{
	RE = /^[A-Za-zàâäéèêëîïôùûç\s,.'0-9\-]+$/;	
	erreur='';
	
	if(form.Nom_Recruteur.value == ""){
        erreur+="Le champ \"Nom de la société\" n'est pas renseigné.\n";
	}
	
	else if(!RE.test(form.Nom_Recruteur.value)){
        erreur+="Le champ \"Nom de la société\" contient des caractères incorrects.\n";
	}
	
	if(form.Numero_SIRET.value == ""){
        erreur+="Le champ \"Numero de SIRET\" n'est pas renseigné.\n";
	}
	
	else if(!EstSiretValide(form.Numero_SIRET.value)){
        erreur+="Le champ \"Numero de SIRET\" est invalide.\n";
	}
	
	if(form.Nom_Contact.value == ""){
        erreur+="Le champ \"Nom du contact\" n'est pas renseigné.\n";
	}
	
	else if(!RE.test(form.Nom_Contact.value)){
        erreur+="Le champ \"Nom du contact\" contient des caractères incorrects.\n";
	}
	
	/*if(form.Prenom_Contact.value == ""){
        erreur+="Le champ \"Prenom du contact\" n'est pas renseigné.\n";
	}*/
	
	/*else if(!RE.test(form.Prenom_Contact.value)){
        erreur+="Le champ \"Prenom du contact\" contient des caractères incorrects.\n";
	}*/
	
	if (form.Email_Contact.value == ""){
        erreur+="Le champ \"Email du contact\" n'est pas renseigné.\n";
	}
	
	else if (!VerifEmail(form.Email_Contact.value)){
        erreur+="Le champ \"Email du contact\" est invalide.\n";
	}
	
	if(form.mdp_Recruteur.value != form.conf_Recruteur.value) {
        erreur+="Les champs \"Mot de passe\" et \"Confirmation MDP\" doivent être identiques.\n";
	}
	if((form.mdp_Recruteur.value.length<6 || !RE.test(form.mdp_Recruteur.value)) && form.mdp_Recruteur.value!='') {
        erreur+="Le mot de passe doit comporter au minimum 6 caractères non spéciaux.\n";
	}
	
	/*if (!VerifEmail(form.Contact_Demandeur.value) && form.Contact_Demandeur.value!=''){
        erreur+="Le champ \"Email RH\" est invalide.\n";
	}*/
	
	if(!RE.test(form.Tel_Fixe.value) && form.Tel_Fixe.value!=''){
        erreur+="Le champ \"Tel. fixe\" contient des caractères incorrects.\n";
    }   
    
	if(!RE.test(form.Fax.value) && form.Fax.value!=''){
        erreur+="Le champ \"Fax\" contient des caractères incorrects.\n";
    }
    
    if(!RE.test(form.Tel_Portable.value) && form.Tel_Portable.value!=''){
        erreur+="Le champ \"Tel. portable\" contient des caractères incorrects.\n";
    }
    
	if(!RE.test(form.Adresse.value) && form.Adresse.value!=''){
        erreur+="Le champ \"Adresse\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Adresse2.value) && form.Adresse2.value!=''){
        erreur+="Le champ \"Adresse\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Ville.value) && form.Ville.value!=''){
        erreur+="Le champ \"Ville\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Code_Postal.value) && form.Code_Postal.value!=''){
        erreur+="Le champ \"Code postal\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Pays.value) && form.Pays.value!=''){
        erreur+="Le champ \"Pays\" contient des caractères incorrects.\n";
	}
	
	/*if(!RE.test(form.Web.value) && form.Web.value!=''){
        erreur+="Le champ \"Site Web\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Numero_TVA.value) && form.Numero_TVA.value!=''){
        erreur+="Le champ \"TVA\" contient des caractères incorrects.\n";
	}*/
	
	if(!RE.test(form.Destinataire_Facturation.value) && form.Destinataire_Facturation.value!=''){
        erreur+="Le champ \"Destinataire\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Adresse_Facturation.value) && form.Adresse_Facturation.value!=''){
        erreur+="Le champ \"Adresse de facturation\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Adresse2_Facturation.value) && form.Adresse2_Facturation.value!=''){
        erreur+="Le champ \"Adresse de facturation\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Ville_Facturation.value) && form.Ville_Facturation.value!=''){
        erreur+="Le champ \"Ville (facturation)\" contient des caractères incorrects.\n";
	}
	
	if(!RE.test(form.Code_Postal_Facturation.value) && form.Code_Postal_Facturation.value!=''){
        erreur+="Le champ \"Code postal (facturation)\" contient des caractères incorrects.\n";
	}
	
	if(form.Acceptation_CGU.checked == false) {
        erreur+="Vous devez accepter les conditions générales d'utilisation pour pouvoir créer un compte.\n";
	}
	
	if(erreur!=''){
		message_erreur="Les erreurs suivantes ont été constatées:\n\n"+erreur;
		alert(message_erreur);return false;
	}
	else {return true;}
}


function ValidateFormAlerte(form)
	{
	RE = /^[A-Za-zàâäéèêëîïôùûç\s,.'0-9\-]+$/;	
	erreur='';
	
	if(form.titre_alerte.value == "" || !RE.test(form.titre_alerte.value)){
        erreur+="La description saisie n'est pas correcte.\n";
	}
	if(form.secteur.value=='' || form.secteur.value=='0'){
        erreur+="Vous devez sélectionner un secteur.\n";
	}
	
	if(form.metiers.value=='' || form.metiers.value=='0'){
        erreur+="Vous devez sélectionner un metier.\n";
	}
	
	if(erreur!=''){
		message_erreur="Les erreurs suivantes ont été constatées:\n\n"+erreur;
		alert(message_erreur);return false;
	}
	else {return true;}
}

function ValidateFormReferencement(form)
	{
	RE = /^[A-Za-zàâäéèêëîïôùûç\s,.'0-9\-]+$/;	
	erreur='';
	
	if(form.Nom_Metier_Referencement.value == "" || !RE.test(form.Nom_Metier_Referencement.value)){
        erreur+="Le champ Métier est vide ou contient des caractères incorrects.\n";
	}
	if(!RE.test(form.Sous_Secteur_Referencement.value) && form.Sous_Secteur_Referencement.value!=''){
        erreur+="Le champ Sous secteur contient des caractères incorrects.\n";
	}
	
	if(erreur!=''){
		message_erreur="Les erreurs suivantes ont été constatées:\n\n"+erreur;
		alert(message_erreur);return false;
	}
	else {return true;}
}






function ValidateFormCV(form)
	{
	RE = /^[A-Za-zàâäéèêëîïôùûç\s,.'0-9\-]+$/;	
	RESAL = /^[A-Za-zàâäéèêëîïôùûç?\s,.'0-9\-]+$/;	
	erreur='';
	
	if(form.titre_cv.value == "" || !RE.test(form.titre_cv.value)){
        erreur+="Le titre est vide ou contient des catactères incorrects.\n";
	}
	
	if(form.secteur.value=='' || form.secteur.value=='0'){
        erreur+="Vous devez sélectionner un secteur.\n";
	}
	
	if(form.metiers.value=='' || form.metiers.value=='0'){
        erreur+="Vous devez sélectionner un metier.\n";
	}
	
	if(!RESAL.test(form.Remuneration.value) && form.Remuneration.value!=''){
        erreur+="Le champ \"Prétentions salariales\" contient des catactères incorrects.\n";
	}
		
	daterecomposee =form.jour_dispo.value+"/"+form.mois_dispo.value+"/"+form.annee_dispo.value;
	if (!isDate(daterecomposee)){
		erreur+="La date saisie est invalide.\n";
	}
	
	if(!RE.test(form.Autres_Langues.value) && form.Autres_Langues.value!=''){
        erreur+="Le champ \"Autres Langues\" contient des catactères incorrects.\n";
	}
	
	if(erreur!=''){
		message_erreur="Les erreurs suivantes ont été constatées:\n\n"+erreur;
		alert(message_erreur);return false;
	}
	
}

function ValidateFormAnnonce(form)
	{
	RE = /^[A-Za-zàâäéèêëîïôùûç\/\s,.'0-9\-]+$/;	
	RESAL = /^[A-Za-zàâäéèêëîïôùûç?\/\s,.'0-9\-]+$/;	
	RENUM = /^\d+$/;	
	erreur='';		
	
	if(form.titre_annonce.value == "" || !RE.test(form.titre_annonce.value)){
        erreur+="Le titre contient des catactères incorrects ou est non renseigné.\n";
	}
	
	if (!VerifEmail(form.Contact_Demandeur.value) && form.Contact_Demandeur.value!=''){
        erreur+="L'adresse email saisie n'est pas valide.\n";
	}

	if(!RESAL.test(form.Remuneration.value) && form.Remuneration.value!=''){
        erreur+="Le champ \"Prétentions salariales\" contient des catactères incorrects.\n";
	}
	
	/*if(!RE.test(form.Ref_Interne.value) && form.Ref_Interne.value!=''){
        erreur+="Le champ \"Référence interne\" contient des catactères incorrects.\n";
	}
		
	daterecomposee =form.jour_embauche.value+"/"+form.mois_embauche.value+"/"+form.annee_embauche.value;
	if (!isDate(daterecomposee)){
		erreur+="La date saisie est invalide.\n";
	}*/
	
	if(!RENUM.test(form.Nb_postes.value) && form.Nb_postes.value!=''){
        erreur+="Le champ \"Nombre de postes\" contient des catactères incorrects.\n";
	}
	
	if(erreur!=''){
		message_erreur="Les erreurs suivantes ont été constatées:\n\n"+erreur;
		alert(message_erreur);return false;
	}
	
	
}


//-->
// JavaScript Document