
          var campiDaValidare = "Attenzione : \n";

          function submitForm(aForm){
            document.getElementById("submitLink").href="#";
            aForm.submit();
          }

          function doSubmit(n_form){                                    
             var esito = validateForm(n_form);
            if(esito){
              document.contactForm.elements["azione"].value="subscribe";
              submitForm(document.contactForm);
            }else{
              alert(campiDaValidare);
              campiDaValidare = "Attenzione : \n";
            }

          }

          function validateForm(n_form)
          {
          	
            var continua = true;

            // controllo del first name
            var nome = document.contactForm.elements["MMV-Nome"];
            if (!textNotNull(nome)){
              campiDaValidare = campiDaValidare + "- inserire il nome \n";
              continua = false;
            }

            // controllo del last name
            var cognome = document.contactForm.elements["MMV-Cognome"];
            if (!textNotNull(cognome)){
              campiDaValidare = campiDaValidare + "- inserire il cognome \n";
              continua = false;
            }

            // controllo sul modello
            var modello;            
            if(n_form == 'testdrive') 
              modello = document.contactForm.elements["MMV-ModelloAutoDesc"];
			else if(n_form == 'preventivo')
			{
				modello = document.contactForm.elements["MMV-Modello-Prev"];
				
			}
            else { 
            	if(n_form != 'salapoli')
                modello = document.contactForm.elements["MMV-ModelloAuto"];
            }                          
            
            if(modello != null && modello.value == "")
            {
              campiDaValidare = campiDaValidare + "- valorizzare il modello \n";
              continua = false;
            }                        
              

			//solo per il form preventivo controllo anche la marca, colore, tipo di vettura, l'anno di immatricolaz.
			if(n_form == 'preventivo')
			{
				var marca = document.contactForm.elements["MMV-Marca-Prev"];
				if (!textNotNull(marca)){
					campiDaValidare = campiDaValidare + "- inserire la marca \n";
					continua = false;
				}
				var colore = document.contactForm.elements["MMV-Colore-Prev"];
				/*if (!textNotNull(colore)){
					campiDaValidare = campiDaValidare + "- inserire il colore \n";
					continua = false;
				}*/
				var vettura = document.contactForm.elements["MMV-Vettura-Prev"];
			}




			  
            // validazione dell'indirizzo email
            if (!checkEmail()){
              campiDaValidare = campiDaValidare + "- inserire un indirizzo e-mail valido \n";
              continua = false;
            }                        
            
            if(!telefonoVal())
              continua = false;                       

            if(!document.contactForm.elements["MMV-CTFC"].checked)  {
              campiDaValidare = campiDaValidare + "- occorre approvare le condizioni di privacy \n";
              continua = false;
            }                        
            
            var commento;
            if(document.contactForm.elements["Commento"] != null)
            {
            	commento = document.contactForm.elements["Commento"];
            	if(commento.value == "" && n_form != 'officina' && n_form != 'preventivo') {
            	  campiDaValidare = campiDaValidare + "- occorre inserire il testo di richiesta \n";
                continua = false;	
            	}            	              	  
            }                        
            
			if(n_form != 'preventivo')
			{
	            var tipo_richiesta;
	            if(document.contactForm.elements["MMV-KindOfRequest"] != null)
	            {
	            	tipo_richiesta = document.contactForm.elements["MMV-KindOfRequest"];
	            	if(tipo_richiesta.value == "") {
	            	  campiDaValidare = campiDaValidare + "- occorre scegliere il tipo di richiesta \n";
	                continua = false;	
	            	}            	              	  
	            }                        
	            
	            var km = "";
	            
	            if(document.contactForm.elements["MMV-Km"] != null)
	            {
	            	km = document.contactForm.elements["MMV-Km"];
	            	if(!VerificaCampo(km)) { 
	            		campiDaValidare = campiDaValidare + "- presenza di caratteri alfanumerici nel numero di kilometri percorsi. \n";           	  
	                continua = false;	
	            	}            	              	  
	            }                        
	            
	            var data_scelta = "";
	            var day = "";
	            var month = "";
	            var year = "";
	            
	            if(document.contactForm.elements["MMV-Hidden-Date"] != null)
	            {
	              day = document.contactForm.elements["MMV-Day"].value;
	              month = document.contactForm.elements["MMV-Month"].value;
	              year = document.contactForm.elements["MMV-Year"].value;
	              //alert("day " + day + " month " + month + " year " + year );
	              
	              if(day == "" || month == "" || year == "") {
	                campiDaValidare = campiDaValidare + "- occorre valorizzare la data o controllarne la correttezza \n";
	                continua = false;
	              }else{
	                document.contactForm.elements["MMV-Hidden-Date"].value = day + "/" + month + "/" + year;                                               
	              }  
	            }                        
                        
            
			}
			return continua;
          }
          
          
          function setDataHidden()
          {
              var tmp="";
		          tmp+=document.contactForm.elements["MMV-Day"].value;
              if (tmp != "") tmp += "/";
		          tmp+=document.contactForm.elements["MMV-Month"].value;
		          if (tmp != "") tmp += "/";
		          tmp+=document.contactForm.elements["MMV-Year"].value;
		          
		          document.contactForm.elements["MMV-Hidden-Date"].value=tmp; 
		          		                                  
          }


          function brandChanged(){
            document.contactForm.elements["azione"].value="";
            submitForm(document.contactForm);
          }


          function checkEmail(){
            var mail = document.contactForm.elements["Email"];            
            if(stringTrim(mail.value) != "" && isEmail(mail))
              return true;
            else
              return false;
          }

          function isEmail(theElement) {
            // This function checks if the text entered in a field has the
            // format xxxx@yyyy.zzzz. or xxx@aaa.bbb.ccc.ddd           
            
            var email_regex = /^\w+(\.\w+){0,1}\@\w+(\.\w+)*\.[a-zA-Z]{2,3}$/;           
            
            if (email_regex.test(theElement.value)) {
              tmp = theElement.value.split(/\@/);
              var dot_num_regex = /^(\d{1,3}\.){3}\d{1,3}$/;
              if (dot_num_regex.test(tmp[1])) return (isLegalIP(tmp[1]));
              return true;
            } else {
              return false;
            }
          }


          function telefonoVal()
          {            
            var numTelefono;
            
            if(document.contactForm.elements["MMV-TelNumber"] != null)
              numTelefono = document.contactForm.elements["MMV-TelNumber"]; 
            else  
            	numTelefono = document.contactForm.elements["MMV-CelNumber"];
                       
            if(numTelefono!=null && numTelefono.value != "") {            
              if(!VerificaCampo(numTelefono)) {
                campiDaValidare = campiDaValidare + "- presenza di caratteri alfanumerici nel numero di telefono. \n";
                return false;
              }  
            }
                         
            /*if (numTelefono.value == "") {               
              campiDaValidare = campiDaValidare + "- inserire il numero di telefono \n";            
              return false;
            }*/
            
            /*var tipoNumero = document.contactForm.elements["MMV-TypeNumber"];
            if (!controllaSelect(tipoNumero)){
               campiDaValidare = campiDaValidare + "- a vehicle model \n";
               return false;
            }*/
                                    
            var tipoNumero;                        
            if(document.contactForm.elements["MMV-TypeNumber"] != null) 
            {            	 
               tipoNumero = document.contactForm.elements["MMV-TypeNumber"];               
               if(tipoNumero == null || tipoNumero.value == "") {
                  campiDaValidare = campiDaValidare + "- selezionare la tipologia del numero di telefono \n";
                  return false;
                }  
            }
            return true;
          }

          function VerificaCampo(campo)
          {

            var cifre= "0123456789.";
            var verifica= campo.value;
            var allValid = true;

            var allNum = "";
            for ( i = 0; i < verifica.length; i++ )
            {
               ch = verifica.charAt( i );
               for ( j = 0; j < cifre.length; j++ )
                 if ( ch == cifre.charAt( j ))
                        break;
                  if ( j == cifre.length )
                  {
                    allValid = false;
                    break;
                  }
                  allNum += ch;
            }
                                   
            if (!allValid)
            {
                //campiDaValidare = campiDaValidare + "- presenza di caratteri alfanumerici nel numero di telefono. \n";
                return ( false );
            }
            return ( true );
          }
          
          /*function controllaSelect(selezione){
             var opzioni = selezione.options;
             var selezionata = false;
             for (i=0; i<opzioni.length; i++){
                if (opzioni[i].selected && i != 0 ){
                  alert(i);
                  selezionata = true;

                 }
             }             
             return selezionata;
          }*/

          var indicatoreTesto = 0;

          // riceve un input text e verifica che sia valorizzato
          function textNotNull(testo)
          {
            var valore = testo.value;
            indicatoreTesto++;
            //alert("indicatoreTesto = " +indicatoreTesto );
            valore = stringTrim(valore);
            if (valore == '') return false;
            else return true;
          }

          function checkNumber(numero){
            var  reg = /[^\d ]/;
            //alert(reg.test(numero));
            return !(reg.test(numero));
          }

          var indicatoreTesto = 0;

          // riceve un input text e verifica che sia valorizzato
          function textNotNull(testo){

            var valore = testo.value;
            indicatoreTesto++;
            valore = stringTrim(valore);
            if (valore == '') return false;
            else return true;
          }

          var indicatore = 0;
          // controlla che in una select ci sia almeno un campo obbligatorio
          function controllaSelect(selezione){
            var opzioni = selezione.options;
            indicatore++;
            //alert("indicatore = "+indicatore );
            var selezionata = false;
            for (i=0; i<opzioni.length; i++){
              if (opzioni[i].selected && i != 0 ){
                //alert(i);
                selezionata = true;
              }
            }

            return selezionata;
          }
          // Funzione che esegue il left trim: rimuove tutti gli spazi all'inizio di una stringa
          function lTrim(str) {
            var index = str.search(/\S/);

            if (index < 0)
              return '';
            else
              return str.substr(index);
          }

          /*
          Rimuove tutti gli spazi a destra di una stringa.
          @param str Stringa su cui operare.
          */
          function stringRTrim(str)
          {
            var index=str.length-1;
            while( (index>=0) && str.charAt(index)==' ' )
            {
              index--;
            }
            return str.slice(0,index+1);
          }

          /*
          Rimuove tutti gli spazi a sinistra di una stringa.
          @param str Stringa su cui operare.
          */
          function stringLTrim(str)
          {          	
            var index=0;
            while( (index<str.length) && str.charAt(index)==' ' )
            {
              index++;
            }
            return str.slice(index);
          }

          /*
          Rimuove tutti gli spazi a sinistra e a destra di una stringa.
          @param str Stringa su cui operare.
          */
          function stringTrim(str)
          {
            return stringLTrim(stringRTrim(str));
          }
          
          function getUrlImageGallery(n_img)          
          {          	       	 
             var path = window.opener.document.getElementById("img"+n_img).value;           
             document.getElementById("g_image").src = path;
          }
