// Fonctions utilisées dans tout le site

// detection du navigateur
var ns4=document.layers
var ie4=document.all
var ns6=document.getElementById&&!document.all

function RollOver(img,lien){
document.images[img].src=lien;
}

function Affiche(nom) { // Affiche un calque
	if(ie4) {
		var divie4 = document.getElementsByTagName("div")
		divie4[nom].style.visibility = 'visible';
	} else if(ns4) {
		document.eval(nom).visibility = 'show';
	} else if(ns6) {
		var divns6 = document.getElementsByTagName("div")
		document.getElementsByTagName("div")[nom].style.visibility = 'visible';
	}
}

function Cache(nom) { // Cache un calque
	if(ie4) {
		var divie4 = document.getElementsByTagName("div")
		divie4[nom].style.visibility = 'hidden';
	} else if(ns4) {
		document.eval(nom).visibility = 'hidden';
	} else if(ns6) {
		var divns6 = document.getElementsByTagName("div")
		document.getElementsByTagName("div")[nom].style.visibility = 'hidden';
	}
}
function Deplace(valeur){ // Deplace de 'valeur' pixel vers la gauche un calque
		if(ns4) {
			document.layers['dhtml'].left = (valeur);
		} else if(ns6) {
			document.getElementById('dhtml').style.left = (valeur);
		} else {
			document.getElementById('dhtml').style.left = (valeur);
		}
}

function Verification(formulaire,champs) {
    var CompteurVerif = 0;
    var message = "Les champs suivants sont érronés ou mal renseignés :\n";
    
    champs = champs.split(",");
    
    var argu = new Array();
    for(i=0; i<champs.length; i++)
	argu[i] = champs[i].split("|");
    
    for(i=0; i<argu.length; i++) {
	if(eval(argu[i][1])(argu[i][0],argu[i][2])) //Appelle les différentes fonctions de vérification
	    CompteurVerif += 1;
    }
    
    //Vérification email
    function VerifEmail(email,alerte_champ) {
	var mail = document.forms[formulaire].elements[email].value;
	var recherche_mail = /[^A-Za-z0-9@.-]/;
	
	if(mail == "")
	    Erreur(alerte_champ,"vide");
	else if(recherche_mail.test(mail)) //Vérifie si les caractères sont valides
	    Erreur(alerte_champ,"");
	else if(mail.indexOf("@") <= 0  || mail.indexOf(".") <= 0 || mail.lastIndexOf(".") < mail.indexOf("@") || mail.indexOf("@.") > 0) //Vérifications de l'arobase et du point   
	    Erreur(alerte_champ,"");
	else if(mail.lastIndexOf(".") >= (mail.length-2)) //Vérifie s'il y a plus de 1 caractère après le dernier point
	    Erreur(alerte_champ,"");
	else
	    return true;
    }
    
    //Vérification téléphone
    function VerifTel(telephone,alerte_champ) {
	var tel = document.forms[formulaire].elements[telephone].value;
	var recherche_tel = /^[0-9]{10}$/;
	
	if(tel == "")
	    Erreur(alerte_champ,"vide");
	else if(recherche_tel.test(tel))
	    return true;
	else
	    Erreur(alerte_champ,"");
    }
    
    //Vérification code postal
    function VerifCP(code_postal,alerte_champ) {
	var cp = document.forms[formulaire].elements[code_postal].value;
	var recherche_cp = /^[0-9]{5}$/;
	
	if(cp == "")
	    Erreur(alerte_champ,"vide");
	else if(recherche_cp.test(cp))
	    return true;
	else
	    Erreur(alerte_champ,"");
    }
    
    //Vérification champ vide
    function VerifVide(vide,alerte_champ) {
	var StrVide = document.forms[formulaire].elements[vide].value;
	
	if(StrVide == "")
	    Erreur(alerte_champ,"vide");
	else if(StrVide != "")
	    return true;
	else
	    Erreur(alerte_champ,"vide");
    }
	
    //Vérification chiffres
    function VerifChiffres(chiffres,alerte_champ) {
	var StrChiffres = document.forms[formulaire].elements[chiffres].value;
	var recherche_chiffres = /^[0-9].*$/;
	
	if(StrChiffres == "")
	    Erreur(alerte_champ,"vide");
	else if(recherche_chiffres.test(StrChiffres))
	    return true;
	else
	    Erreur(alerte_champ,"");
    }
	
    //Vérification SIREN
    function VerifSIREN(siren,alerte_champ) {
	var StrSIREN = document.forms[formulaire].elements[siren].value;
	var recherche_siren = /^[0-9]{9}$/;
	
	if(StrSIREN == "")
	    Erreur(alerte_champ,"vide");
	else if(recherche_siren.test(StrSIREN))
	    return true;
	else
	    Erreur(alerte_champ,"");
    }
	
    //Vérification SELECT
    function VerifSelect(inputselect,alerte_champ) {
	var StrSelect = document.forms[formulaire].elements[inputselect].value;
	
	if(StrSelect == "-- Sélection --")
	    Erreur(alerte_champ,"érroné");
	else if(StrSelect != "-- Sélection --")
	    return true;
	else
	    Erreur(alerte_champ,"érroné");
    }
	
    //Vérification RADIO
    function VerifRadio(radio,alerte_champ) {
	var StrRadio1 = document.forms[formulaire].elements[radio][0].checked;
	var StrRadio2 = document.forms[formulaire].elements[radio][1].checked;
	
	if(!StrRadio1 && !StrRadio2)
	    Erreur(alerte_champ,"érroné");
	else if(StrRadio1 || StrRadio2)
	    return true;
	else
	    Erreur(alerte_champ,"érroné");
    }
	
    //Vérification CHECKBOX
    function VerifCheckbox(checkbox,alerte_champ) {
	var StrCheckbox1 = document.forms[formulaire].elements[checkbox][0].checked;
	var StrCheckbox2 = document.forms[formulaire].elements[checkbox][1].checked;
	
	if(!StrCheckbox1 && !StrCheckbox2)
	    Erreur(alerte_champ,"érroné");
	else if(StrCheckbox1 || StrCheckbox2)
	    return true;
	else
	    Erreur(alerte_champ,"érroné");
    }
    
    //Affichage de l'erreur
    function Erreur(alerte_champ,vide) {
	if(vide == "vide")
	    message  += "- "+alerte_champ+" vide\n";
	else
	    message  += "- "+alerte_champ+" incorrect\n";
	return false;
    }
    
    if(champs.length == CompteurVerif)
		document.forms[formulaire].submit();
    else
		alert(message);
}