window.onload = prepareForm;


function prepareForm() { //preparazione degli eventi di validazione del form

  if (!document.forms[0]) {
    return;
  }

  var formEmail = document.forms[0];
  document.forms[0].onsubmit = function() {
    return validate();
  };
  var checkPrivacy = document.getElementById("privacy");
  checkPrivacy.onclick = function() {
    validatePrivacy(this);
  };

}

function validate() {
  //Validazione dell'indirizzo email.
  var email = document.getElementById("email").value;
  //elimino gli spazi all'inizio e alla fine
  email = email.replace(/^\s+|\s+$/mg, "");
  //verifico se il campo è vuoto
  if (email=="") {
    document.getElementById("email").focus();
    alert ("E-mail obbligatoria");
    return false;
  } else {
    if (!email.match(/^(?:[a-z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+\/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?)$/m)) {
      document.getElementById("email").focus();
      alert("E-mail non valida");
      return false;
    }
  }
  return true;
}      

function validatePrivacy(target) {
  //avviso che il check sulla privacy deve restare flaggato.
  target.checked = true;
  alert("Consenso al trattamento dei dati personali obbligatorio");
}    


