function VerifFormInscr(){

	if(document.getElementById('inscr').login.value == ""){
		alert('Veuillez saisir un identifiant');
		document.getElementById('inscr').login.focus();
		return false;
	}
	
	else if(document.getElementById('inscr').login.value.length < 6){
		alert('Veuillez saisir un identifiant plus long (au moins 6 caractères)');
		document.getElementById('inscr').login.focus();
		return false;
	}
	
	else if(document.getElementById('inscr').pass.value == ""){
		alert('Veuillez saisir un mot de passe');
		document.getElementById('inscr').pass.focus();
		return false;
	}
	
	
	else if(document.getElementById('inscr').pass.value.length < 5){
		alert('Veuillez saisir un mot de passe plus long (au moins 5 caractères)');
		document.getElementById('inscr').pass.focus();
		return false;
	}
	
	else if(document.getElementById('inscr').pass2.value == ""){
		alert('Veuillez re-saisir le mot de passe');
		document.getElementById('inscr').pass2.focus();
		return false;
	}
	
	else if(document.getElementById('inscr').pass.value != document.getElementById('inscr').pass2.value){
		alert('Le second mot de passe n\'est pas similaire au premier.');
		document.getElementById('inscr').pass2.value = "";
		document.getElementById('inscr').pass2.focus();
		return false;
	}
	
	else if(document.getElementById('inscr').mail.value == ""){
		alert('Veuillez saisir une adresse email');
		document.getElementById('inscr').mail.focus();
		return false;
	}
	
	else if(document.getElementById('inscr').local.value == ""){
		alert('Veuillez saisir une localisation');
		document.getElementById('inscr').local.focus();
		return false;
	}
	
	
	else if(!testAdrMail(document.getElementById('inscr').mail.value)){
		alert('L\'adresse email que vous avez saisi est invalide.');
		document.getElementById('inscr').mail.focus();
		return false;
	}
	
	else if(document.getElementById('inscr').sexe[0].checked == false && document.getElementById('inscr').sexe[1].checked == false ){
		alert('Vous devez choisir un sexe.');
		return false;
	}
	
	
	else if(document.getElementById('inscr').charte.checked == false){
		alert('Vous devez lire et accepter la charte.');
		return false;
	}
	
	else
		return true;
}




function testAdrMail(adrMail) {

 // déclaration et initialisation des variables
 adrMailLength=adrMail.length; // longueur de la chaîne adrMail
 caractOk="_.-0123456789abcdefghijklmnopqrstuvwxyz"; // caratères corect d'une adresse mail
 var posArrobas=adrMail.indexOf('@',1); // position du premier Arrobas
 var posPoint=adrMail.lastIndexOf('.',adrMailLength); // position du dernier point
 var posCaractFaux=adrMail.indexOf('..',posArrobas+1); // position d'un caractère faux ('..' ou ' ')
 var caract=0; // caractère extrait de la chaîne adrMail (utilisée par les boucles while)
 var caractFaux=adrMail.charAt(0)+adrMail.charAt(posArrobas-1)+adrMail.charAt(posArrobas+1)+adrMail.charAt(posPoint-1);
 var posCaract=0; // position du caractère à extraire de la chaîne adrMail (utilisée par les boucles while)
 var posCaractOk=0; // position du caractère extrait de la chaîne adrMail (utilisée par les boucles while)
 var posCaractNon=-1;
 var retour=false; // l'adresse e-mail est considérée comme fausse au début

 // début du teste
 // s'il n'existe pas de caractère '..' alors on teste s'il existe un espace dans la chaîne adrMail
 if (posCaractFaux!=-1 || adrMail.indexOf(' ',0)!=-1 || adrMail.indexOf('--',0)!=-1 || adrMail.indexOf('__',0)!=-1) {
    posCaractFaux=0;
 }

 // Teste les points ou - ou _ au début de l'adrMail, autour de l'arrobas et autour du dernier point
 for (posCaract;posCaract<4;posCaract++) {
     caract=caractFaux.charAt(posCaract);
     posCaractNon=caractOk.lastIndexOf(caract,2);
     if (posCaractNon!=-1) {
        posCaractFaux=0;
        break;
     }
 }
 // si l'adresse mail contient au moins 1 caractère et qu'elle comporte un arrobas
 // et qu'elle comporte un point et que l'arrobas est avant le dernier point
 // et qu'elle ne contient pas de '..' ou d'espace et que après le dernier point il y est 2,3 ou 4 caractères
 // et qu'il n'y est pas de point autour de l'arrobas et que l'adresse ne commence pas par un point
 // Alors
 if (adrMailLength>0 && posArrobas!=-1 && posPoint!=-1 && posArrobas<posPoint && posCaractFaux==-1 && adrMailLength-posPoint-1>=2 && adrMailLength-posPoint-1<=4) {

    // extraction d'un caractère et teste s'il existe dans la chaîne "_.-0123456789abcdefghijklmnopqrstuvwxyz"
    // S'il n'existe pas alors posCaract=-1 donc au prochain 'tour' on passe aux autres boucles (qui ne s'effecturont pas)
    // Si il existe on continue la boucle jusqu'au caractère avant l'arrobas et on passe à la boucle while suivante

    adrMail=adrMail.toLowerCase();
    posCaract=0;

    while (posCaract<posArrobas && posCaractOk!=-1) {
          caract=adrMail.charAt(posCaract);
          posCaractOk=caractOk.indexOf(caract,0);
          posCaract++;
    }
    posCaract++; // on passe l'arrobas

    // sur le même principe qu'au dessus mais pour la partie entre l'arrobas et le dernier point
    // le test ce fait sur les caractères ".-0123456789abcdefghijklmnopqrstuvwxyz"
    // caractOk.indexOf(caract,1) on ne teste plus l'underscore
    while (posCaract<posPoint && posCaractOk!=-1) {
          caract=adrMail.charAt(posCaract);
          posCaractOk=caractOk.indexOf(caract,1);
          posCaract++;
    }
    posCaract++; // on passe le point

    // sur le même principe qu'au dessus mais pour la partie entre le dernier point et la fin
    // le test ce fait sur les caractères "abcdefghijklmnopqrstuvwxyz"
    // caractOk.indexOf(caract,13) on ne teste plus que des lettres
    while (posCaract<adrMailLength && posCaractOk!=-1) {
          caract=adrMail.charAt(posCaract);
          posCaractOk=caractOk.indexOf(caract,13);
          posCaract++;
    } // fin de la boucle while
    
    // durant le parcour de l'adresse mail si n'y avait pas de caractère interdit
    // posCaractOk a changer plusieurs fois de valeur mais na jamais eu la valeur -1
    // donc l'adresse est bonne
    if (posCaractOk!=-1) {
       retour=true;
    }
 }
 return retour; // renvoi le résultat (true ou false)
} // fin de la fonction 