function MM_validateForm() { //v4.0

  if (document.getElementById){
    var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
	
    for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]);
      if (val) { nm=val.name; 
	  
	  	if (nm=="Nom") nmtext="Nom";
		else if (nm=="Poblacio") nmtext="Població";
		else if (nm=="Email") nmtext="E-mail";
		else{ nmtext=nm.replace(/_db/gi, " ");nmtext=nmtext.replace(/_/gi, " ");}
		disa=val.disabled;
		len = document.getElementsByName(nm).length;
		chck=val.checked; if ((val=val.value)!="") {
        if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
          if (p<1 || p==(val.length-1)) errors+='- '+nmtext+' ha de contenir una adreça de correu electrònic vàlida.\n';
        } 
		else if (test.indexOf('checked') != -1){
		
	}else if (test!='R') { num = parseFloat(val);
          if (isNaN(val)) errors+='- '+nmtext+' ha de contenir un número.\n';
          if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
            min=test.substring(8,p); max=test.substring(p+1);
            if (num<min || max<num) errors+='- '+nmtext+' must contain a number between '+min+' and '+max+'.\n';
      }
	  
	  } } else if (test.charAt(0) == 'R') if (disa == false){ errors += '- '+nmtext+' és obligatori.\n'; }}
    } 

	if (errors) alert('S´han trobat els següents errors:\n'+errors);
    document.MM_returnValue = (errors == '');
} }