var _RESIZE_LARGEUR=420;
var _RESIZE_HAUTEUR=545;

function Webmail(){
//alert('/'+langue+'/contact.asp?dest='+dest);
  window.open('contact.asp','Webmail', 'resizable=yes,location=no,width=700,height=600');
}

function ValiderFormulaire(){
  InitLabelClass();
  document.getElementById('pErreur').innerHTML = ''; 
  document.getElementById('dvErreur').style.display='none';
  var ErrorMessage='';
  
  if (document.getElementById('emailclient').value.length==0){
     ErrorMessage+= eval("CONTACT_EMAIL")
     oLabel=GetLabelFor('emailclient');
     oLabel.className='champErreur';
  }

  if (document.getElementById('emailclient').value.length>0 && !IsEmail(document.getElementById('emailclient').value)){
     ErrorMessage+= eval("CONTACT_INVALIDE_EMAIL");
     oLabel=GetLabelFor('emailclient');
     oLabel.className='champErreur';
  }
  if (document.getElementById('emailclientConfirm')){
	  if (document.getElementById('emailclientConfirm').value.length==0 && !IsEmail(document.getElementById('emailclientConfirm').value)){
		 ErrorMessage+= eval("CONTACT_INVALIDE_EMAIL_CONFIRM");
		 oLabel=GetLabelFor('emailclientConfirm');
		 oLabel.className='champErreur';
	  }
  }
  
  if (document.getElementById('emailclientConfirm')){
	  if (document.getElementById('emailclientConfirm').value.length>0 && document.getElementById('emailclient').value.length>0){
		   if (document.getElementById('emailclientConfirm').value != document.getElementById('emailclient').value){
			 ErrorMessage+= eval("CONTACT_INVALIDE_EMAIL");
			 oLabel=GetLabelFor('emailclient');
			 oLabel.className='champErreur';
		   }
	  }
  }
  
  /*if (document.getElementById('civilite')){
	if (document.getElementById('civilite').selectedIndex==0){
     ErrorMessage+= eval("CONTACT_CIVILITE");
     oLabel=GetLabelFor('civilite');
     oLabel.className='champErreur';
  	}
  }
  
  if (document.getElementById('nom')){
	  if (document.getElementById('nom').value.length==0){
		 ErrorMessage+= eval("CONTACT_NOM");
		 oLabel=GetLabelFor('nom');
		 oLabel.className='champErreur';
	  }
  }
  
  if (document.getElementById('prenom')){
	  if (document.getElementById('prenom').value.length==0){
		 ErrorMessage+= eval("CONTACT_PRENOM");
		 oLabel=GetLabelFor('prenom');
		 oLabel.className='champErreur';
	  }
  }
  
  if (document.getElementById('tel')){
	  if (document.getElementById('tel').value.length==0 && isNotTelephone(document.getElementById('tel').value,"inte")){
		 ErrorMessage+= eval("CONTACT_TEL");
		 oLabel=GetLabelFor('tel');
		 oLabel.className='champErreur';
	  }
  }
  */	
  if (document.getElementById('titreemail')){
	  if (document.getElementById('titreemail').value.length==0) {
		 ErrorMessage+= eval("CONTACT_SUJET");
		 oLabel=GetLabelFor('titreemail');
		 oLabel.className='champErreur';
	  }
  }
  
  if (document.getElementById('message')){
	  if (document.getElementById('message').value.length==0) {
		 ErrorMessage+= eval("CONTACT_MESSAGE");
		 oLabel=GetLabelFor('message');
		 oLabel.className='champErreur';
	  }
  }
  
  if(ErrorMessage.length>0){
     //il y a des erreurs de saisie
     //-> on ajoute le message d'intro //UPDATE : finalement on n'affiche que le message d'intro
     //ErrorMessage = eval("CONTACT_ENTETE_" + LANGUE_ISO) + ErrorMessage;
     ErrorMessage = eval("CONTACT_ENTETE");
     //-> on affiche le div d'erreur
	 
     document.getElementById('pErreur').innerHTML = ErrorMessage; 
     document.getElementById('dvErreur').style.display='block';
     //-> on agrandit la fenêtre pour éviter que le bouton submit disparaisse
     //window.resizeTo(_RESIZE_LARGEUR, _RESIZE_HAUTEUR); 
     //-> on signifie l'échec de la validation
     return false
   }else{
     //Aucune erreur détectée
     return true
  }
}


function IsEmail(email){
  // a very simple email validation checking.
  // you can add more complex email checking if it helps
  var splitted = email.match("^(.+)@(.+)$");
  if(splitted == null) return false;
  if(splitted[1] != null )
  {
    var regexp_user=/^\"?[\w-_\.]*\"?$/;
    if(splitted[1].match(regexp_user) == null) return false;
  }
  if(splitted[2] != null)
  {
    var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
    if(splitted[2].match(regexp_domain) == null)
    {
      var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
      if(splitted[2].match(regexp_ip) == null) return false;
    }// if
    return true;
  }
  return false;
}

var regExpCodePostal=/^([A-Z]+[A-Z]?\-)?[0-9]{1,2} ?[0-9]{3}$/g;							
// Accepte une chaine de type 'code postal'. Ex : F-33370 ou 33 370 ou 33370 ou F-1 370
var regExpTelephoneInternational=/^(\+[0-9]{2})[ \.\-]?[0-9][ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}$/g;	
// Accepte un numero de téléphone de type 'international'. Ex : (+33) 1 34 12 52 30

//Les deux fonction suivantes servent à identifier si une chaine de caractère est compatible ou non avec une expression régulière passée en paramètre
function matchRegularExpression(valeur, regularExpression)
{
	var resultat = valeur.match(regularExpression);
	if(resultat!=null && resultat.length==1) return true;
	else return false;
}

function doesntMatchRegularExpression(valeur, regularExpression)
{
	if(matchRegularExpression(valeur, regularExpression)) return false;
	else return true;
}
function isNotCodePostal(valeur)
{
	return doesntMatchRegularExpression(valeur, regExpCodePostal);
}

function isNotTelephone(valeur, mode)
{
	switch (mode)
	{
		case "fixe" : 
			return doesntMatchRegularExpression(valeur, regExpTelephoneFixe);
			break;
		case "port" :
			return doesntMatchRegularExpression(valeur, regExpTelephonePortable);
			break;
		case "nati" :
			return doesntMatchRegularExpression(valeur, regExpTelephoneNational);
			break;
		case "inte" :
			return doesntMatchRegularExpression(valeur, regExpTelephoneInternational);
			break;
		default : 
			return doesntMatchRegularExpression(valeur, regExpTelephoneNational);
			break;
	}
}
function GetLabelFor(sInputId){
      		if(document.getElementsByTagName){
      			cLabel=document.getElementsByTagName('label');
      			
      			for(iLabel=0;iLabel<cLabel.length;iLabel++){
      				if(cLabel[iLabel].htmlFor==sInputId){return cLabel[iLabel];}
      			}
      			return null;
      		}
      }
      
      
function InitLabelClass(){
	if(document.getElementsByTagName){
  	cLabel=document.getElementsByTagName('label');
  	for(i=0;i<cLabel.length;i++){
			cLabel[i].className="inherit";													 
  	}
  }
}


