function containOnly(str, chars)
{
for(var i=0; i<str.length; i++)
{
var b=false;
for(var j=0; j<chars.length; j++)
if(chars.charAt(j)==str.charAt(i)) b=true;
if(b==false) return false;
}
return true;
} 

function ChangeField(field) {
	var fieldId = field.name;
	if(fieldId == 'lastName' || fieldId == 'firstName' || fieldId == 'deliveryLastName' || fieldId == 'deliveryFirstName') {
		if(field.value != '' && containOnly(field.value, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZéèôâûêçàùîïöë ,'")) {
			field.className = 'borderVert';
		}
		else {
			field.className = 'borderRouge';
		}
	}
	if(fieldId == 'addressStreet' || fieldId == 'addressCity' || fieldId == 'deliveryStreet' || fieldId == 'deliveryCity' || fieldId == 'addressNumber' || fieldId == 'deliveryNumber') {
		if(field.value != '') {
			field.className = 'borderVert';
		}
		else {
			field.className = 'borderRouge';
		}
	}
	if(fieldId == 'addressPostcode' || fieldId == 'deliveryPostcode') {
		p = field.value.substring(0, 3);
		if(field.value != '' && containOnly(field.value, '0123456789') && p != '971' && p != '972' && p != '973' && p != '974' && p != '975' && p != '976' && p != '984' && p != '985' && p != '986' && p != '987') {
			field.className = 'borderVert';
		}
		else {
			field.className = 'borderRouge';
		}
	}
	if(fieldId == 'emailAddress') {
		if(field.value != '' && emailCheck(field.value)) {
			field.className = 'borderVert';
		}
		else {
			field.className = 'borderRouge';
		}
	}
	if(fieldId == 'fax' || fieldId == 'mobilePhone') {
		if(field.value == '') {
			field.className = '';
		}
		else {
			if(containOnly(field.value, '0123456789') && field.value.charAt(0) == '0') {
				if(fieldId == 'fax' && containOnly(field.value.charAt(1), '123458')) {
					field.className = 'borderVert';
				}
				else {
					field.className = 'borderRouge';
				}
				if(fieldId == 'mobilePhone' && containOnly(field.value.charAt(1), '6')) {
					field.className = 'borderVert';
				}
				else {
					field.className = 'borderRouge';
				}
			}
			else {
				field.className = 'borderRouge';
			}
		}
	}
	if(fieldId == 'phone' || fieldId == 'deliveryPhone') {
        var maxLength = 10;
        if(document.getElementById("addressCountry").value == "Belgique"){
            maxLength = 9;
        }
        
        if(field.value != '' && field.value.length >= maxLength && containOnly(field.value, '0123456789') && field.value.charAt(0) == '0' && containOnly(field.value.charAt(1), '012345689')) {
            field.className = 'borderVert';
        }
        else {
            field.className = 'borderRouge';
        }
    }
	if(fieldId == 'password1' || fieldId == 'password2') {
		if(field.value != '' && field.value.length >= 5) {
			if(fieldId == 'password1') {
				field.className = 'borderVert';
			}
			if(fieldId == 'password2') {
				if(field.value == document.editAccount.password1.value) {
					field.className = 'borderVert';
				}
				else {
					field.className = 'borderRouge';
				}
			}
		}
		else {
			field.className = 'borderRouge';
		}
	}
    
    if(fieldId == "dateNaissanceJour" || fieldId == "dateNaissanceMois" || fieldId == "dateNaissanceAnnee"){
        if(field.options.selectedIndex == 0){
            document.getElementById("td_" + fieldId).className = 'borderRouge';  
        }else{
            document.getElementById("td_" + fieldId).className = 'borderVert'; 
        }
      
    }     
}

function form_check_create_account(pro)
{
    var errors = '';
    with(document)
    {
        if(!editAccount.civility[0].checked && !editAccount.civility[1].checked && !editAccount.civility[2].checked)
            errors += "\nLa civilité est obligatoire.";
        if(editAccount.firstName.value=='') {
            errors += "\nLe champ Prénom est obligatoire.";
            editAccount.firstName.className = 'borderRouge';
        }
        if(!containOnly(editAccount.firstName.value, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZéèôâûêçàùîïö ,'-")) {
            errors += "\nLe champ Prénom doit être constitué de caractères alphabétiques.";
            editAccount.firstName.className = 'borderRouge';
        }
        if(editAccount.lastName.value=='') {
            errors += "\nLe champ Nom est obligatoire.";
            editAccount.lastName.className = 'borderRouge';
        }
        if(!containOnly(editAccount.lastName.value, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZéèôâûêçàùîïö ,'-")) {
            errors += "\nLe champ Nom doit être constitué de caractères alphabétiques.";
            editAccount.lastName.className = 'borderRouge';
        }

        if(editAccount.dateNaissanceJour.value==0)
        {
            errors += "\nLa date de naissance est obligatoire.";
            editAccount.dateNaissanceJour.className = 'borderRouge';
    }
        if(editAccount.dateNaissanceMois.value==0)
        {
            errors += "\nLa date de naissance est obligatoire.";
            editAccount.dateNaissanceMois.className = 'borderRouge';
    }
        if(editAccount.dateNaissanceAnnee.value==0)
        {
            errors += "\nLa date de naissance est obligatoire.";
            editAccount.dateNaissanceAnnee.className = 'borderRouge';
    }
        
        if(editAccount.fax.value!='')
        {
            if(!containOnly(editAccount.fax.value, '0123456789/.+- ')) {
                errors += "\nLe champ fax ne doit contenir que des chiffres.";
                editAccount.fax.className = 'borderRouge';
            }
            //if(editAccount.adressCountry.value == 'France')
            //{
            /*
                if(editAccount.fax.value.charAt(0)!='0' || (editAccount.fax.value.charAt(1)!='1' && editAccount.fax.value.charAt(1)!='2' && editAccount.fax.value.charAt(1)!='3' && editAccount.fax.value.charAt(1)!='4' && editAccount.fax.value.charAt(1)!='5' && editAccount.fax.value.charAt(1)!='8')) {
                    errors += "\nLe champ fax doit commencer par 01, 02, 03, 04, 05 ou 08.";
                    editAccount.fax.className = 'borderRouge';
                }
                */
//                if(editAccount.fax.value.length != 10)
//                    errors += "\nLe champ fax doit comporter 10 chiffres.";
            //}
            if(editAccount.fax.value.substring(2)=='00000000') {
                errors += "\nCe numéro de fax est invalide.";
                editAccount.fax.className = 'borderRouge';
            }
        }
        
        

        if(editAccount.mobilePhone.value!='')
        {
            if(!containOnly(editAccount.mobilePhone.value, '0123456789/.+- ')) {
                errors += "\nLe champ Portable ne doit contenir que des chiffres.";
                editAccount.mobilePhone.className = 'borderRouge';
            }
//            if(editAccount.mobilePhone.value.substring(0, 2)!='06')
//                errors += "\nLe champ Portable doit commencer par 06.";
//            if(editAccount.mobilePhone.value.length != 10)
//                errors += "\nLe champ Portable doit comporter 10 chiffres.";
            if(editAccount.mobilePhone.value.substring(2)=='00000000') {
                errors += "\nCe numéro de portable est invalide.";
                editAccount.mobilePhone.className = 'borderRouge';
            }
        }

       if(editAccount.phone.value!='')
        {
            //editAccount.phone.value.replace(' ', '');
            if(!containOnly(editAccount.phone.value, '0123456789')) {
                errors += "\nLe champ Téléphone fixe ne doit contenir que des chiffres.";
                alert("Le champ Téléphone principal ne doit contenir que des chiffres.");
                editAccount.phone.className = 'borderRouge';
            }else{            
                if(editAccount.addressCountry.value == "France"){
                    if(editAccount.phone.value.length < 10) {
                        errors += "\nLe champs Téléphone fixe doit comporter 10 chiffres minimum.";
                        alert("Le champ Téléphone principal doit comporter 10 chiffres.");
                        editAccount.phone.className = 'borderRouge';
                    }else{
                            editAccount.phone.className = 'borderVert';
                        }
                }else{
                    if(editAccount.addressCountry.value == "Belgique"){
                        if(editAccount.phone.value.length < 9) {
                            errors += "\nLe champs Téléphone fixe doit comporter 9 chiffres minimum.";
                            alert("Le champ Téléphone principal doit comporter 9 chiffres minimum.");
                            editAccount.phone.className = 'borderRouge';
                        }else{
                            editAccount.phone.className = 'borderVert';
                        }
                    }
                }
            }            
            
            if(editAccount.phone.value.substring(2)=='00000000') {
                errors += "\nCe numéro de téléphone fixe est invalide.";
                editAccount.phone.className = 'borderRouge';
            }
        }
        else
        {
            errors += "\nLe champ téléphone fixe est obligatoire ; si vous ne disposez pas d'un téléphone fixe, indiquez celui d'un proche.";
        }

/*        if((editAccount.phone.value=='') && (editAccount.mobilePhone.value==''))
        {
            errors += "\nVeuillez saisir un numéro de téléphone fixe ou portable.";
        }*/

        if(editAccount.addressStreet.value=='') {
            errors += "\nLe champ Nom de voie est obligatoire.";
            editAccount.addressStreet.className = 'borderRouge';
        }
        var p=editAccount.addressPostcode.value;
        var p2=editAccount.addressPostcode.value;
        if(editAccount.addressPostcode.value=='') {
            errors += "\nLe champ Code postal est obligatoire.";
            editAccount.addressPostcode.className = 'borderRouge';
        }
        /*
        if(!containOnly(p, '0123456789 ')) {
            errors += "\nLe champ Code postal doit être numérique.";
            editAccount.addressPostcode.className = 'borderRouge';
        }
        */
        //if(editAccount.adressCountry.value == 'France')

        p=p.substring(0, 3);
        p2=p2.substring(0, 2);
        var errorCP = document.getElementById("errorCP");       
        if(p2=='97' || p2=='98' || p2=='00') {
            errors += "\nDésolé, nous ne livrons pas ces zones (uniquement France métropolitaine et Corse).";
            editAccount.addressPostcode.className = 'borderRouge';
            errorCP.style.display = "block";    
        }else{
            errorCP.style.display = "none"; 
        }
        
        
        if(editAccount.addressCity.value=='') {
            errors += "\nLe champ Ville est obligatoire.";
            editAccount.addressCity.className = 'borderRouge';
        }
        
        if(pro == 1)
        {
            /*
            if(editAccount.companyVat.value=='' || editAccount.companyVat.value==' ' || editAccount.companyVat.value=='  ' || editAccount.companyVat.value=='   ' || editAccount.companyVat.value=='    ' || editAccount.companyVat.value=='     ' || editAccount.companyVat.value=='      ' || editAccount.companyVat.value=='       ' || editAccount.companyVat.value=='        ' || editAccount.companyVat.value=='         ' || editAccount.companyVat.value=='          ' || editAccount.companyVat.value=='           ' || editAccount.companyVat.value=='            ' || editAccount.companyVat.value=='             ' || editAccount.companyVat.value=='              ') {
                errors += "\nLe numéro de TVA est obligatoire.";
                editAccount.companyVat.className = 'borderRouge';
            }
            */
        }

        if(editAccount.phone.value=='') {
            errors += "\nLe champ Téléphone est obligatoire.";
            editAccount.phone.className = 'borderRouge';
        }
        
          if(editAccount.dateNaissanceJour.options.selectedIndex == 0){
             errors += "\nLe champ Jour de la Date de naissance est obligatoire."; 
              document.getElementById("td_dateNaissanceJour").className = 'borderRouge';             
        }
        
         if(editAccount.dateNaissanceMois.options.selectedIndex == 0){
             errors += "\nLe champ Mois de la Date de naissance est obligatoire.";  
               document.getElementById("td_dateNaissanceMois").className = 'borderRouge';                       
        }
        
         if(editAccount.dateNaissanceAnnee.options.selectedIndex == 0 ){
             errors += "\nLe champ Année de la Date de naissance est obligatoire.";   
               document.getElementById("td_dateNaissanceAnnee").className = 'borderRouge';                      
        }
        
         if(editAccount.addressNumber.value=='') {
            errors += "\nLe numéro de rue est obligatoire.";
            editAccount.addressNumber.className = 'borderRouge';
        }
        
       /* var errorNewsletter = document.getElementById("errorNewsletter");
        if(!editAccount.newsletter[0].checked && !editAccount.newsletter[1].checked){
            errorNewsletter.style.display="block";
        }else{
            errorNewsletter.style.display="none";    
        }  */
    
        /*
        var non = new Array(",","?",";",".",":","/","!","§","&","'","#",'"',"{","}","(",")","[","]","-","|","_","^","=","+","*","µ","$","£","¨","%","<",">");
        for (i=0 ; i <= editAccount.password1.value.length ; i++)
            {
            for (y=0 ; y <= non.length ; y++)
                { if(editAccount.password1.value.charAt(i) == non[y]) {
                        errors += "\nLe mot de passe ne doit pas contenir de caractères spéciaux.";
                        editAccount.password1.className = 'borderRouge';
                        }
                }
            }
        if(editAccount.password1.value.length<5) {
            errors += "\nLe mot de passe doit contenir au moins 5 caractères.";
            editAccount.password1.className = 'borderRouge';
        }
        if(editAccount.password1.value!=editAccount.password2.value) {
            errors += "\nLes mots de passe ne concordent pas.";
            editAccount.password2.className = 'borderRouge';
        }
        */

        if(errors=='')
        {
            //editAccount.submit();
            
            return true;
        }
        //alert(errors);
        editAccount.msgError.className = 'msgErrorOn';
        return false;
        
    }
}
