/*
    formulaire de vérification des zones
*/
//fonction de contrôle de l email-inscription avec controle en base
function verifNL()
     {
	 pseudo=document.getElementById('mail-inscription').value;
     if(pseudo != '')
               { //pseudo non vide	 
				if(!emailCheck(pseudo)) //pseudo non valide
				{
					imgko = new Image;
					imgko = "images/chps_ko.gif";
					document.getElementById('pseudobox').innerHTML = '<img src="images/chps_ko.gif" border="0"><span style="color:#cc0000"><b>Votre email est invalide</b></span>';
					return false;
				} else { //pseudo valide
						if(texte = file('verifnewslet.php?pseudo='+escape(pseudo)))
							{ // retour base ok
								if(texte == 1){
									imgko = new Image;
									imgko = "images/chps_ko.gif";
									document.getElementById('pseudobox').innerHTML = '<img src="images/chps_ko.gif" border="0"><span style="color:#cc0000"><b>Vous êtes déjà inscrit</b></span>';
									return false;
								} else { //inscription prise en compte
									imgok = new Image;
									imgok = "images/chps_ok.gif";
									document.getElementById('pseudobox').innerHTML = '<img src="images/chps_ok.gif" border="0"><span style="color:#cc0000"><b>Inscription prise en compte</b></span>';
									return false; //pour éviter le rechargement de la page
								} // pseudo pris en compte
							} else {// fin retour base ko
								imgko = new Image;
								imgko = "images/chps_ko.gif";
								document.getElementById('pseudobox').innerHTML = texte+'<img src="images/chps_ko.gif" border="0"><span style="color:#cc0000"><b>Un problème technique est survenu</b></span>';
								return false;
							}
						}//pseudo valide
               } else { //pseudo vide
			    imgko = new Image;
				imgko = "images/chps_ko.gif";
				document.getElementById('pseudobox').innerHTML = '<img src="images/chps_ko.gif" border="0"><span style="color:#cc0000"><b>Votre email est vide</b></span>';
			   	return false;
			   }

     }
//fonction de contrôle de l email-inscription sans controle en base
function al_userid(check) {
    {
        if(document.getElementById('email').value =='')
        {
            imgko = new Image;
            imgko = "images/chps_ko.gif";
            document.getElementById('al_userid').innerHTML = '<img src="images/chps_ko.gif" border="0"><span style="color:#cc0000"><b>Votre email est invalide</b></span>';
            return false;
        }
        else if(!emailCheck(document.getElementById('email').value))
        {
            imgko = new Image;
            imgko = "images/chps_ko.gif";
            document.getElementById('al_userid').innerHTML = '<img src="images/chps_ko.gif" border="0"><span style="color:#cc0000"><b>Votre email est invalide</b></span>';
                return false;
        } else {
                        imgok = new Image;
                        imgok = "images/chps_ok.gif";
                        document.getElementById('al_userid').innerHTML = '<img src="images/chps_ok.gif" border="0">';
                        return true;

        }
    }
}
function al_amiid(check) {
    {
        if(document.getElementById('emailami').value =='')
        {
            imgko = new Image;
            imgko = "images/chps_ko.gif";
            document.getElementById('al_amiid').innerHTML = '<img src="images/chps_ko.gif" border="0"><span style="color:#cc0000"><b>Votre email est invalide</b></span>';
            return false;
        }
        else if(!emailCheck(document.getElementById('emailami').value))
        {
            imgko = new Image;
            imgko = "images/chps_ko.gif";
            document.getElementById('al_amiid').innerHTML = '<img src="images/chps_ko.gif" border="0"><span style="color:#cc0000"><b>Votre email est invalide</b></span>';
                return false;
        } else {
                        imgok = new Image;
                        imgok = "images/chps_ok.gif";
                        document.getElementById('al_amiid').innerHTML = '<img src="images/chps_ok.gif" border="0">';
                        return true;

        }
    }
}
//fonction de contrôle du nom
// le div sur le formulaire al_nom
function al_nom() {
  if(document.getElementById('nom').value !='') {
    var regex = new RegExp(/^[a-zA-Z' éèêëàâîïôûùüç-]*$/gi);
    if(regex.test(document.getElementById('nom').value))
    {
        if(document.getElementById('nom').value.length<3) {
          imgko = new Image;
          imgko = "images/chps_ko.gif";
          document.getElementById('al_nom').innerHTML = '<img src="images/chps_ko.gif" border="0"> <span style="color:#cc0000"><b>Vous devez saisir plus de 2 caractères</b></span>';
          return false ;
        } else {
         imgok = new Image;
         imgok = "images/chps_ok.gif";
         document.getElementById('al_nom').innerHTML = '<img src="images/chps_ok.gif" border="0">';
         return true ;
        }
    }
      else
    {
        imgko = new Image;
        imgko = "images/chps_ko.gif";
        document.getElementById('al_nom').innerHTML = '<img src="images/chps_ko.gif" border="0"> <span style="color:#cc0000"><b>Le nom contient des caractères incorrects</b></span>';
        return false ;
    }
    } else {
        imgko = new Image;
        imgko = "images/chps_ko.gif";
        document.getElementById('al_nom').innerHTML = '<img src="images/chps_ko.gif" border="0"> <span style="color:#cc0000"><b>Vous devez renseigner votre nom</b></span>';
        return false ;
    }
}
//fonction de contrôle du code de contrôle
function al_crypt() {
// le div sur le formulaire al_crypt
    if(document.getElementById('userCode').value !='') {   
    var regex = new RegExp(/^[0-9a-zA-Z]{5}$/g);
    if(regex.test(document.getElementById('userCode').value))
    {
         imgok = new Image;
         imgok = "images/chps_ok.gif"; 
         document.getElementById('al_crypt').innerHTML = '<img src="images/chps_ok.gif" border="0">';            
         return true ;     
    }
      else
    {
        imgko = new Image;
        imgko = "images/chps_ko.gif";
        document.getElementById('al_crypt').innerHTML = '<img src="images/chps_ko.gif" border="0"> <span style="color:#cc0000"><b>Le code de vérification est incorrect</b></span>';
        return false ;
    }
    } else {
        imgko = new Image;
        imgko = "images/chps_ko.gif";
        document.getElementById('al_crypt').innerHTML = '<img src="images/chps_ko.gif" border="0" alt="ok"> <span style="color:#cc0000"><b>Vous devez renseigner le code de vérification</b></span>';
        return false ;
    }            
}

//fonction contrôlant l'adresse email
function emailCheck (emailStr) {
        var emailPat=/^(.+)@(.+)$/
        var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
        var validChars="\[^\\s" + specialChars + "\]"
        var quotedUser="(\"[^\"]*\")"
        var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
        var atom=validChars + '+'
        var word="(" + atom + "|" + quotedUser + ")"
        var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
        var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
        var matchArray=emailStr.match(emailPat)
        if (matchArray==null) {
            return false
        }
        var user=matchArray[1]
        var domain=matchArray[2]
        if (user.match(userPat)==null) {
            return false
        }
        var IPArray=domain.match(ipDomainPat)
        if (IPArray!=null) {
              for (var i=1;i<=4;i++) {
                if (IPArray[i]>255) {
                return false
                }
            }
            return true
        }
        var domainArray=domain.match(domainPat)
        if (domainArray==null) {
            return false
        }
        var atomPat=new RegExp(atom,"g")
        var domArr=domain.match(atomPat)
        var len=domArr.length
        if (domArr[domArr.length-1].length<2 || 
            domArr[domArr.length-1].length>4) {
           return false
        }
        if (len<2) {           
           return false
        }
        return true;
    }
//fonction utilisé lors de la vérif du pseudo
function file(fichier)
{
if(window.XMLHttpRequest) // FIREFOX
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // IE
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else
return(false);
xhr_object.open("GET", fichier, false);
xhr_object.send(null);
if(xhr_object.readyState == 4) return(xhr_object.responseText);
else return(false);
}

//fonction premier caractère en majuscule
function changeCase() {
    var index;
    var tmpStr;
    var tmpChar;
    var preString;
    var postString;
    var strlen;
    tmpStr = document.getElementById('prn').value.toLowerCase();
    strLen = tmpStr.length;
        if (strLen > 0)  {
                for (index = 0; index < strLen; index++)  {
                    if (index == 0)  {
                        tmpChar = tmpStr.substring(0,1).toUpperCase();
                        postString = tmpStr.substring(1,strLen);
                        tmpStr = tmpChar + postString;
                    }else {
                        tmpChar = tmpStr.substring(index, index+1);
                            if (tmpChar == " " && index < (strLen-1))  {
                                tmpChar = tmpStr.substring(index+1, index+2).toUpperCase();
                                preString = tmpStr.substring(0, index+1);
                                postString = tmpStr.substring(index+2,strLen);
                                tmpStr = preString + tmpChar + postString;
                            }
                    }
                }
        }
        document.getElementById('prn').value = tmpStr;
}

// fonction calcul nbre de caractères
function textCounter(field, countfield, maxlimit) {
if (field.value.length > maxlimit)
{field.value = field.value.substring(0, maxlimit);}
else
{countfield.value = maxlimit - field.value.length;}
}
// fonction vérifiant si le pseudo existe ds la table newsletter et proposer l'inscription
function rechNL()
	 {
	 pseudo=document.getElementById('email').value;
     if(pseudo != '')
               { //pseudo non vide	 
				if(texte = file('divnewslet.php?pseudo='+escape(pseudo)))
					{ // retour base ok
						var targetElement;
						targetElement = document.getElementById('inscr_nl') ;
						if(texte == 1){ // déjà inscrit
								targetElement.style.display = "none" ;
								return false;
						} else { //jamais inscrit
								targetElement.style.display = "" ;
								return true; 
						} 
					} else {// fin retour base ko
						return false;
					}
               } 
     }
// fonction de validation au submit du formulaire contact et commentaire
function valid_form() {
	if(!al_nom()) //champs nom non valide
	{ 
		alert("Veuillez saisir ou corriger la zone 'Nom ou pseudo'");
		return false ;
	} 
	if(!al_userid(1)) //champs nom non valide
	{ 
		alert("Veuillez saisir ou corriger la zone 'Adresse email'");
		return false ;
	} 
	if(!al_crypt()) //champs nom non valide
	{ 
		alert("Veuillez saisir le code de validation");
		return false ;
	} 	
	 return true;
}

// fonction de validation au submit du formulaire gestion newsletter
function valid_gest_nl() {
	if(!al_userid(1)) //champs nom non valide
	{ 
		alert("Veuillez saisir ou corriger la zone 'Adresse email'");
		return false ;
	} 
	if(!al_crypt()) //champs nom non valide
	{ 
		alert("Veuillez saisir le code de validation");
		return false ;
	} 	
	 return true;
}

// fonction de validation au submit du formulaire send friend
function valid_send_friend() {
	if(!al_nom()) //champs nom non valide
	{ 
		alert("Veuillez saisir ou corriger la zone 'Nom ou pseudo'");
		return false ;
	} 
	if(!al_userid(1)) //champs nom non valide
	{ 
		alert("Veuillez saisir ou corriger la zone 'Adresse email'");
		return false ;
	} 
	if(!al_amiid(1)) //champs nom non valide
	{ 
		alert("Veuillez saisir ou corriger la zone 'Adresse email de votre ami'");
		return false ;
	} 
	if(!al_crypt()) //champs nom non valide
	{ 
		alert("Veuillez saisir le code de validation");
		return false ;
	} 	
	 return true;
}