  /*  verifica se ci sono caratteri
      nella stringa passata
  */
  function verifyOne(str)
  {
    for (i=0;i<str.length; i++)
    if (str.charAt(i)!=' ') return true;
    return false;
  }

  /*  verifica che i campi testuali
      del form non siano vuoti
  */
  function verify(modulo)
  {

    /*
      inserire questa funzione nell' onSubmit della form,
      passando come primo parametro obbligatorio this (cioè
      il form stesso) oppure il nome del form come stringa,
      e come parametri opzionali il nome dei campi testuali
      che si vuole verificare.
      Definire 'verifyMsg' nel file init.js di ogni lingua
    */

    var elem  = verify.arguments;
    var elLen = verify.arguments.length;
    var tipo;
    if(typeof(modulo) == "object") tipo = modulo; else if (typeof(modulo) == "string") tipo = document.forms[modulo];
    if(tipo)
    {
      for(var u = 1; u < elLen; u++)
      {
        if(!(verifyOne(tipo[elem[u]].value))) return false;
      }
    }
    return true;
  }

  function verifyEmail(valore)
  {
    var i=new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,5}|[0-9]{1,4})(\\]?)$");
    if(!i.test(valore))
    {
      return false;
    }
    return true;
  }

  function checkDateFormat(dateToCheck,separator)
  {
  /*
    verifica che la stringa "s" sia una data formattata
    nel modo richiesto e che sia valida oppure che sia una
    stringa vuota.
    da inserire nell'onsubmit del form o nell'onchange del campo
    che contiene la data e passare il valore di tale campo
  */
    if(typeof(separator) != "string") separator = "-";
    var reString = "[0-3]\\d\\" + separator + "[0-1]\\d\\" + separator + "\\d{4}";
    var re = new RegExp(reString);

    if(!(verifyOne(dateToCheck))) return true;

    if(dateToCheck.length < 10)
    {
      alert("La data inserita è incompleta.\nControllare, grazie.");
    }
    else
    {
      if(re.test(dateToCheck))
      {
        parti = dateToCheck.split(separator,3);
        var an = parti[2];
        var me = parti[1];
        var gi = parti[0];
        if(me == 0 || me > 12)
        {
          alert("Il mese non è corretto.\nControllare, grazie.");
        }
        if(gi > 0 && gi < 32)
        {
          if(gi > 30 && (me == 4 || me == 6 || me == 9 || me == 11)) ;
          else if (gi > 29 && me == 2) ;
          else return true;
        }
        alert("Il giorno non è corretto.\nControllare, grazie.");

      }
      else
      {
        alert("Il formato della data non è valido.\nLa data va inserita nel formato gg" + separator + "mm" + separator + "aaaa.\nControllare, grazie.");
      }
    }
    return false;
  }
