/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

function doOnLoad(){
    if(typeof load=="undefined"){
        load();
    }
}

function trim(myString){
    return myString.replace(/^\s+/g,'').replace(/\s+$/g,'')
}

function getNameInp(txtIn){
    var id=txtIn.getAttribute("id");
    var labels=document.getElementsByTagName("label");
    var name=txtIn.name;
    for(var i=0;i<labels.length;i++){
        if(labels.item(i).getAttribute("for")==id){
            name=labels.item(i).innerHTML;
        }
    }
    return name;
}

function verifMdp(txtIn){
    var mdp=txtIn.value;
    mdp=trim(mdp);
    if(mdp.length!=8){
        alert("Votre mot de passe doit comporter 8 caractères, il en comporte "+mdp.length);
        txtIn.focus();
        return false;
    }
    return true;
}

function verifNonVide(txtIn){
    var txt=txtIn.value;
    txt=trim(txt);
    if(txt.length==0){
        var name=getNameInp(txtIn);
		if(name.charAt(name.length-1)=='*') name=name.substr(0,name.length-1);
        alert("Votre "+name+" ne doit pas être laissé vide");
        txtIn.focus();
        return false;
    }
    return true;
}

function verifCP(txtIn){
    if(verifNonVide(txtIn)){
        var cp=txtIn.value;
        cp=trim(cp);
        if(isNaN(cp)){
            alert("Votre code postal : "+cp+", ne doit comporter que des chiffres");
            txtIn.focus();
            return false;
        }
        if(cp.length!=5){
            alert("Votre code postal : "+cp+", doit comporter 5 chiffres, il en comporte "+cp.length);
            txtIn.focus();
            return false;
        }
        return true;
    }else{
        return false;
    }
}

function verifTel(txtIn){
    var no=txtIn.value;
    no=trim(no);
    for(var i=0;i<10;i++){
        no=no.replace(".", "");
    }
    var name;
    if(isNaN(no)){
        name=getNameInp(txtIn);
        alert("Votre "+name+" : "+no+", ne doit comporter que des chiffres");
        txtIn.focus();
        return false;
    }
    if(no.length!=10){
        name=getNameInp(txtIn);
        alert("Votre "+name+" : "+no+", doit comporter 10 chiffres, il en comporte "+no.length);
        txtIn.focus();
        return false;
    }
    return true;
}

function verifMail(txtIn){
    var REGEX_EMAIL = new RegExp(/^[a-zA-Z0-9][a-zA-Z0-9-._]+@[a-zA-Z0-9-._]{2,}[.][a-zA-Z]{2,5}$/);
    var mail=txtIn.value;
    if(!REGEX_EMAIL.test(mail)){
        alert("Adresse e-mail incorrecte");
        txtIn.focus();
        return false;
    }
    return true;
}

function verifNombre(txtIn){
    var nb=txtIn.value;
    nb=trim(nb);
    if(nb.length==0){
        var name=getNameInp(txtIn);
        alert("Votre "+name+" ne doit pas être laissé vide");
        txtIn.focus();
        return false;
    }
    if(isNaN(nb)){
        var name=getNameInp(txtIn);
        alert("Votre "+name+" : "+nb+", ne doit comporter que des chiffres");
        txtIn.focus();
        return false;
    }
    return true;
}

function verifDate(txtIn){
    var date=txtIn.value;
    date=trim(date);
    var name=getNameInp(txtIn);
    if(date.length<6){
        alert("La "+name+" : "+date+", doit comporter au minmum 6 caractères, elle en comporte "+date.length);
        txtIn.focus();
        return false;
    }
    var res=date.split('/');
    if(res.length!=3){
        res=date.split('-');
        if(res.length!=3){
            alert("La "+name+" : "+date+", doit être séparée par des slashs (/) ou des tirets (-)");
            txtIn.focus();
            return false;
        }
    }
    var jour=res[0];
    var mois=res[1];
    var annee=res[2];
    if(isNaN(jour)){
        alert("Le jour de la "+name+" : "+jour+", ne doit comporter que des chiffres");
        txtIn.focus();
        return false;
    }
    if(isNaN(mois)){
        alert("Le mois de la "+name+" : "+mois+", ne doit comporter que des chiffres");
        txtIn.focus();
        return false;
    }
    if(isNaN(annee)){
        alert("L'année de la "+name+" : "+annee+", ne doit comporter que des chiffres");
        txtIn.focus();
        return false;
    }
    if(jour.length!=1&&jour.length!=2){
        alert("Le jour de la "+name+" : "+jour+", doit comporter un ou deux chiffres");
        txtIn.focus();
        return false;
    }
    if(mois.length!=1&&mois.length!=2){
        alert("Le mois de la "+name+" : "+mois+", doit comporter un ou deux chiffres");
        txtIn.focus();
        return false;
    }
    if(annee.length!=2&&annee.length!=4){
        alert("L'année de la "+name+" : "+annee+", doit comporter deux ou quatre chiffres");
        txtIn.focus();
        return false;
    }
    if(jour<1||jour>31){
        alert("Le jour de la "+name+" : "+jour+", doit être compris entre 1 et 31");
        txtIn.focus();
        return false;
    }
    if(mois<1||mois>12){
        alert("Le mois de la "+name+" : "+mois+", doit être compris entre 1 et 12");
        txtIn.focus();
        return false;
    }
    if(annee.length==4){
        if(annee<1880||annee>2030){
            alert("L'année de la "+name+" : "+annee+", doit être comprise entre 1880 et 2030");
            txtIn.focus();
            return false;
        }
    }else{
        var an=new Date();
        an=(an.getFullYear()+1).toString();
        an=an.substr(2,2);
        if(annee>an){
            annee="19"+annee;
        }else{
            annee="20"+annee;
        }
    }
    txtIn.value=jour+"/"+mois+"/"+annee;
    return true;
}


