/* ----------------------------------------------------------------------------------------------------

Code source appartenant à Wixblog.com
Toutes reproductions totales ou partielles est interdite.

Code source déposé chez la SCAM

Auteur: Wixblog.com
Date: 2007

---------------------------------------------------------------------------------------------------------- */
function ajax ( type, fichier, variables /* , fonction */ ) 
{ 
	if ( window.XMLHttpRequest ) var req = new XMLHttpRequest();
	else if ( window.ActiveXObject ) var req = new ActiveXObject("Microsoft.XMLHTTP");
	else alert("Votre navigateur n'est pas assez récent pour accéder à cette fonction, ou les ActiveX ne sont pas autorisés");
	if ( arguments.length==4 ) var fonction = arguments[3];

	if (type.toLowerCase()=="post") {
		req.open("POST", fichier, true);
		req.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=iso-8859-1');
		req.send(variables);
	} else if (type.toLowerCase()=="get") {
		req.open('get', fichier+"?"+variables, true);
		req.setRequestHeader('Content-type', 'application/x-www-form-urlencoded; charset=iso-8859-1');
		req.send(null);
	} else { 
		alert("Méthode d'envoie des données invalide"); 
	}

	req.onreadystatechange = function()  { 
		if (req.readyState == 4 && req.responseText != null )
		{				
			if (fonction) eval( fonction + "('"+escape(req.responseText)+"')");
			
		} 
	}
}

function good(elem){
			
	e=$(elem);
	$(e).style.border="1px solid #88FB3B";	
		
}

function bad(elem,mess){
	
	e=$(elem);	
	e.style.border="1px solid #FF7FB4";

}

// Vérification pseudo.
function verifPseudo(){

	pseudo=$F('pseudo');
	 if (pseudo!='') 
	 {
		if (pseudo.length >= 3 && pseudo.length <= 15) {
			ajax('get','pages/ajax/verif_inscription.php','pseudo='+escape(pseudo),'verifPseudoAjax');
		} else {
			bad('pseudo','Le pseudo doit faire entre 4 et 20 caractères');
		}
	} else {
		bad('pseudo','Champs requis');
	}
	
}

function verifPseudoAjax(r){
	pseudo=$F('pseudo');
	if (unescape(r)=="login_ok") {
		good('pseudo');
		$('pseudoA').innerHTML = "";
	} else {
		bad('pseudo','Ce Pseudo est indisponible');
		$('pseudoA').innerHTML = "<span style='font-size:11px;color:#FFA500;font-weight:bold'>Un Wixblog existe déjà avec ce pseudo!</span><br/>";
	} 
}

// Vérification email.
function verifEmail(){
	
   email=$F('email');
   var arobase = email.indexOf("@")
   var point = email.lastIndexOf(".")
   if ((arobase < 3)||(point + 2 > email.length) ||(point < arobase+3)) {
	   bad('email');
   } else {
	   ajax('get','pages/ajax/verif_inscription.php','email='+escape(email),'verifEmailAjax');
   }
	
}

function verifEmailAjax(r){
	
	if (unescape(r)=="email_ok"){
		good('email');
		$('pseudoA').style.display="none";
		$('emailA').innerHTML = "";
	}else{
		bad('email',"Cette adresse email est déjà enregistrée");
		$('pseudoA').style.display="block";
		$('emailA').innerHTML = "<span style='font-size:11px;color:#FFA500;font-weight:bold'>Un compte existe déjà avec cet email!</span><br/>";
	}
	
}

// Vérification pass.
function verifPass1() 
{
	if ($F('pass1').length==0 ) {
		bad('pass1',"Champs requis");
	} else if ($F('pass1').length<=3 || $F('pass1').length>=19) {
		bad('pass1',"Le Mdp doit faire entre 4 et 20 caractères");
	} else {
		good('pass1');
	}
}

function verifPass2() 
{
	if ($F('pass2').length==0 ) {
		bad('pass2',"Champs requis");
	} else if ($F('pass2').length<=3 || $F('pass2').length>=19) {
		bad('pass2',"Le Mdp doit faire entre 4 et 20 caractères");
	} else {
		if ($F('pass2')==$F('pass1')) { good('pass1'); good('pass2'); }
		else { bad('pass1',"Les deux mots de passe sont différents"); bad('pass2',""); }
	}
}

// Vérification nom.
function verifNom(){

	nom=$F('nom');
	 if (nom!='') 
	 {
		if (nom.length >= 2 && nom.length <= 15) {
			good('nom');
		} else {
			bad('nom','Le nom doit faire entre 2 et 20 caractères');
		}
	} else {
		bad('nom','Champs requis');
	}
	
}

// Vérification nom.
function verifPrenom(){

	prenom=$F('prenom');
	 if (prenom!='') 
	 {
		if (prenom.length >= 2 && prenom.length <= 15) {
			good('prenom');
		} else {
			bad('prenom','Le nom doit faire entre 2 et 20 caractères');
		}
	} else {
		bad('prenom','Champs requis');
	}
	
}

// Vérification Adresse.
function verifAdresse() {
	
	if ($F('adresse').length!=0 ) {
		if ($F('adresse').length<=10 || $F('adresse').indexOf(" ")==-1 ) bad('adresse',"Invalide ( <10 caracts )");  
		else good('adresse');
	} else {
		bad('adresse',"Champs obligatoire");
	}
	
}

// Vérification Cp.
function verifCp() {
	if ($F('codepost').length==0 ) {
		bad('codepost',"Champs obligatoire");
	} else if ($F('codepost').length<=4) {
		bad('codepost',"Invalide ( <5 chiffres )");
	} else {
		good('codepost');
	}
}

// Vérification Ville.
function verifVille() { 
	if ($F('ville').length!=0 ) good('ville');
	else bad('ville',"Champs obligatoire");
}

// Vérification Pays.
function verifPays() { 
	if ($F('pays').length!=0 ) good('pays');
	else bad('pays',"Champs obligatoire");
}

// Vérification Tel.
function verifTel() {
	if ($F('telephone').length==0 ) {
		bad('telephone',"Invalide ?");
	} else if ($F('telephone').length<=8) {
		bad('telephone',"Invalide ?");
	} else {
		good('telephone');
	}
}

function verifDate() {
	
	date=$F('naiss');
	if(date == ""){
		bad('naiss');	
	}else{
		good('naiss');
	}	

}

function verifTotal() 
{	
	
	/*verifPseudo();		verifEmail();*/		verifPass1();		verifPass2();	
	/*verifNom();*/			verifPrenom();		/*verifAdresse();		verifCp();*/
	verifVille();		/*verifPays();		verifTel();*/			verifDate()
	
	var coloneVerif=['pseudo', 'email', 'pass1', 'pass2', 'nom', 'prenom', 'naiss', 'adresse', 'codepost', 'ville', 'pays', 'telephone']; 
	var error=0
	
	for (var i=0; i<=11; i++) {
		// On vérifie la présence du good sur toutes les lignes 
		if ($(coloneVerif[i]).style.borderLeft!='1px solid rgb(136, 251, 59)' && $(coloneVerif[i]).style.borderLeft!='#88fb3b 1px solid') { 
			error=1;

		}
	}
	
	if (error==1) {
			$('error').className="error";
			$('error').innerHTML="Le formulaire n'est pas correctement rempli.<br /> &nbsp;";
			Nifty("div#error","smooth small fixed-height");
			new Effect.Appear('error', { duration:1 } );

		return false;				
		
	}
	else { 
	
		return true; 
	
	}
	
}