//code from Pierre Vittet

function EcrireBox(texte, box, correct)
     {
     	//box.value = texte;
		msg=document.getElementById(box);
		msg.innerHTML=texte;
		if (correct){
		msg.setAttribute('color', '#03A300');
		}
		else{
		msg.setAttribute('color', '#FF0C11');		
		}
	}
     
    

function verifier_syntaxe_txt(txt, typebox){
		//l'expression réguliere est de type: Expression = /motif/drapeau
		//l'expression utilisé comporte la traduction des caracteres accentués en octal afind d'assurer la compatibilité en iso
		//expression = /^[a-zA-Zèêëàâäìïîôöòùûüç]+$/;
		expression = /^[a-zA-Z\351\352\353\340\342\344\354\357\356\364\366\362\371\372\373\374\350\347]+$/;
		//l'expression réguliere est de type: Expression = /motif/drapeau
		var expression = /^[a-zA-Zèêëàâäìïîôöòùûüç-]+$/;
		if (!expression.test(txt)){ 			//signifie qu'il  a  des carateres non valide
			EcrireBox('invalide', typebox, false);
			return false;
		}
		return true;
	}
	
	//on vérifie l'adresse mail	
function verifier_mail(addr, typebox){
	var expression= /^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$/;	//la regex vient de l'exemple du site du zero sur les expressions régulieres en php)
	if (!expression.test(addr)){			//signifie que le mail est valide
			EcrireBox('invalide', typebox, false);
			return false;
		}
	return true;
}

function verifier_tel(tel, typebox){
		expression = /^[^a-zA-Z'"{\(\[\]\)}!:;\351\352\353\340\342\344\354\357\356\364\366\362\371\372\373\374\350\347]+$/;
	if (!expression.test(tel)){			//signifie que le mail est non-valide
			EcrireBox('invalide', typebox, false);
			return false;
	}
	return true;
}

function verifier_addr(addr, typebox){ //les adresses pouvant être de type varié on vérifie juste qu'elle n'est pas nulle
	if (addr==""){			//signifie que l'adresse est non-valide
			EcrireBox('invalide', typebox, false);
			return false;
	}
	return true;
}


function verifierChamps(){
	var erreur=0;
	elements=document.getElementsByTagName('input');
	for (i=0; i<elements.length; i++){
		if(elements[i].getAttribute('type')=='text'){
			
			//permet de ne pas valider un invalide
			if(elements[i].value=="invalide"){
				elements[i].value="";
			}
			switch (elements[i].getAttribute('champs_type')){
				
				case 'text':
						
					if (!verifier_syntaxe_txt(elements[i].value, elements[i].getAttribute('box'))){
						erreur=1;
						}
					else{
						EcrireBox('correct', elements[i].getAttribute('box'), true);
						
					}
						break;
						
				case 'mail':
				
					if (!verifier_mail(elements[i].value, elements[i].getAttribute('box'))){
						erreur=1;
						}
					else{
						EcrireBox('correct', elements[i].getAttribute('box'), true);
					}
						break;
			
				case 'tel':
					if (!verifier_tel(elements[i].value, elements[i].getAttribute('box'))){
						erreur=1;
					}
					else{
						EcrireBox('correct', elements[i].getAttribute('box'), true);
					}
					break;
					
					
				case 'addr':
					if (!verifier_addr(elements[i].value, elements[i].getAttribute('box'))){
						erreur=1;
					}
					else{
						EcrireBox('correct', elements[i].getAttribute('box'), true);
					}
					break;
										

			}
		}
			
			
	}

	if (erreur==0){
		alert("Merci d'avoir utilis\351 notre devis en ligne");
			document.forms[0].submit();
	}
	
}
