// Mickael Rottiers
// Creation Date : 26 feb 2003
// Last update : 6 jun 2003
// Validation des formulaire uniquement si tous les champs obligatoires sont renseignes.
// Les champs obligatoires contiennent le tag 'required'
// Le nom precis des champs peut etre ajoute dans le tag 'label'
var msgReq1 = '';
var msgReq2 = '';
var msgEMail = '';
var msgReturn = '';

function validateForm(lang,msgExtra)
{
  msgReturn = '';
  msgEMail = '';
  if(msgExtra==undefined) {
	  
	  msgExtra="";
  }
  
  if(lang=='ES'){
  	msgReq1 = 'Por favor, revise os seguintes campos:\n';
  	msgReq2 = 'Por favor introduzca un e-mail válido.\n';
  }
  
  if(lang=='PT'){
  	msgReq1 = 'Por favor revise os seguintes campos:\n';
  	msgReq2 = 'Por favor introduza um e-mail válido.\n';
  }
  
  else{
    msgReq1 = 'These fields are required :\n';
  	msgReq2 = 'Must type in a valid e-mail address.\n';
  }

  validFieldType('INPUT');
  validFieldType('SELECT');
  validFieldType('TEXTAREA');
  validFieldType('RADIO');
  
  if(msgReturn==''){
  	if(msgEMail=='true'){
  		alert(msgReq2);
  		return false;
  	}
  	else{
		
	  	return true;
	}
  }
  else{
  	if(msgEMail=='true'){
  		alert(msgReq1+msgReturn+'\n'+msgReq2+'\n'+msgExtra);
  	}
  	else{
  		alert(msgReq1+msgReturn+'\n'+msgExtra);
	}
  	return false;
  }
}



function validFieldType(typ){
  void(d=document);
  void(el=d.getElementsByTagName(typ));
  
  for(i=0;i<el.length;i++){
	 
	 
	/* if(el[i].required!='required') {
	 	alert("El campo es: " + typ + "\nValor: " + el[i].value + "\nR: " + el[i].required);
	 }*/
	
  	if(el[i].title.indexOf('-')>=0 && el[i].value==''){
//	if(el[i].value==''){
  		if(el[i].title!='' && (''+el[i].title)!='undefined' && el[i].title!=null){
  			msgReturn+='    '+el[i].title+'\n';
  		}
  		else{
  			msgReturn+='    '+el[i].name+'\n';
  		}
  	}
  	else{
  		if(el[i].name.toUpperCase().indexOf('EMAIL')>=0){
						
	
			var emailRegExp = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
						
			if(el[i].value !="") {
				if(emailRegExp.test(el[i].value) != true) {
					msgEMail='true';
				}
				
			}
			
  		}
  	}
  }
  
}


// France support case
function validFormSupport() {
	if ( validateForm('FR') ){ 
		// 4D Mono 
		if ( document.FormName.Product.value == '4D' && document.FormName.Mono.value == ''){ 
			alert('Vous devez renseigner le champ '+document.FormName.Mono.label); 
			return false; 
		}
		
		// 4D Server or 4D Client 
		if ( document.FormName.Product.value == '4D Server' || document.FormName.Product.value == '4D Client'){ 
			if ( document.FormName.Server.value == '' || document.FormName.Client.value == '' ){ 
				alert('Vous devez renseigner les champs '+document.FormName.Client.label+' et '+document.FormName.Server.label); 
				return false; 
			} 
		}
		
		return true; 
	} 
	else{
		return false; 
	} 
} 