function validateForm(thisform) {

    

    with (thisform) { 
        //Required           
        if (checkString(FirstName,"»Nome«")==false) { 
        selectField(document.getElementById('FirstName').id,'FirstName');

        return false;
        }
        else {
        deselectField(document.getElementById('FirstName').id);
        }

        
        //Required
        if (checkString(LastName,"»Cognome«")==false) {
        selectField(document.getElementById('LastName').id,'LastName');
        return false;
        }
        else {
        deselectField(document.getElementById('LastName').id);
        }

        
        

        
        //Required
        if (checkString(CompanySize,"»Company Size«")==false) {
        selectField(document.getElementById('CompanySize').id,'CompanySize');
        return false;
        }
        else {
        deselectField(document.getElementById('CompanySize').id);
        }

        
        //Required
        if (checkString(Country,"»Paese«")==false) {
        selectField(document.getElementById('Country').id,'Country');
        return false;
        }
        else {
        deselectField(document.getElementById('Country').id);
        }


        //required field
        if(Country.value == "United States" || Country.value == "Canada" || Country.value == "US" || Country.value == "CA") {
            if (checkString(StateProvince,"»Stato/Provincia«")==false) {
            selectField(document.getElementById('StateProvince').id,'StateProvince');
            return false;
            }
            else {
            deselectField(document.getElementById('StateProvince').id);
            }
        }


        //required field
        if(Country.value != "United States" && Country.value != "Canada" && Country.value != "US" && Country.value != "CA") {
            if (checkString(RegionProvinceState,"»Region / State / Province«")==false) {
            selectField(document.getElementById('RegionProvinceState').id,'RegionProvinceState');
            return false;
            }
            else {
            deselectField(document.getElementById('RegionProvinceState').id);
            }
        }


        
        //Required
        if (checkString(ZipPostalCode,"»Codice Postale«")==false) {
        selectField(document.getElementById('ZipPostalCode').id,'ZipPostalCode');
        return false;
        }
        else {
        deselectField(document.getElementById('ZipPostalCode').id);
        }
        
        var ZipPostalCodeString = ZipPostalCode.value; 
        if (Country.value=='United States' || Country.value=='US'){       
            if (ZipPostalCodeString.length < 5  || ZipPostalCodeString.length > 10) {
                alert("");
                selectField(document.getElementById('ZipPostalCode').id,'ZipPostalCode');
                return false;
            }
            else {
                deselectField(document.getElementById('ZipPostalCode').id);
            }
        }
        if (Country.value=='Canada' || Country.value=='CA'){       
            if (ZipPostalCodeString.length < 6 || ZipPostalCodeString.length > 7) {
                alert("You've entered an invalid postal code. Please correct and resubmit.");
                selectField(document.getElementById('ZipPostalCode').id,'ZipPostalCode');
                return false;
            }
            else {
                deselectField(document.getElementById('ZipPostalCode').id);
            }
        }

        
        //Required
        if (checkString(EmailAddress,"»E-Mail«")==false) {
        selectField(document.getElementById('EmailAddress').id,'EmailAddress'); 
        return false;
        }
        else {
        deselectField(document.getElementById('EmailAddress').id);
        }

        
        //Required
        if (checkString(ConfirmEmailAddress,"»Confirma Indirizzo E-Mail«")==false) {
        selectField(document.getElementById('ConfirmEmailAddress').id,'ConfirmEmailAddress');
        return false;
        }
        else {
        deselectField(document.getElementById('ConfirmEmailAddress').id);
        }
        
        if (ConfirmEmailAddress.value!=EmailAddress.value) {
        alert("L'indirizzo e-mail non corrisponde a quello immesso nel campo &quot;E-mail&quot;. Confermare nuovamente l'indirizzo e-mail.");
        selectField(document.getElementById('ConfirmEmailAddress').id,'ConfirmEmailAddress');
        ConfirmEmailAddress.select();
        return false;
        }
        else {
        deselectField(document.getElementById('ConfirmEmailAddress').id);
        }

        
        


        

        if (checkString(CompanySize,"[ Company Size ]")==false) {
            selectField(document.getElementById('CompanySize').id,'CompanySize');
            return false;
        }
        else {
            deselectField(document.getElementById('CompanySize').id);
        }


        if (checkString(Message,"[ Messaggio ]")==false) {
            selectField(document.getElementById('Message').id,'Message');
            return false;
        }
        else {
            deselectField(document.getElementById('Message').id);
        }
if (checkCheckbox(personal_data_consent,"'Consento'")==false) {
    selectCheckboxField(document.getElementById('personal_data_consent').id,personal_data_consent);
    return false;
}
else {
    deselectCheckboxField(document.getElementById('personal_data_consent').id);
}

    }

    //copy contents of State/Province or Region/Province/State to a single hidden Region/Province/State field for form submission
    if(thisform.StateProvince != null) {
        if(thisform.StateProvince.value != '') {
            thisform.elqStateProvinceRegion.value = thisform.StateProvince.value;
        }
    }    
    if(thisform.RegionProvinceState != null) {
        if(thisform.RegionProvinceState.value != '') {
            thisform.elqStateProvinceRegion.value = thisform.RegionProvinceState.value;
        }
    }

    //copy contents of "CompanySize" field to hidden "00N60000001SXb4" input field for SalesForce compatibility
    if(thisform.CompanySize != null) {
        if(thisform.CompanySize.value != '') {
            thisform.elements['00N60000001SXb4'].value = thisform.CompanySize.value;
        }
    }

    //populate a hidden FormURL field
    if(thisform.FormURL) thisform.FormURL.value = window.location.href;

     

      
  
}
//end
