function enableButton(bottone, casella1, casella2)
{
  if (document.getElementById(casella1).checked==true && document.getElementById(casella2).checked==true)
    document.getElementById(bottone).disabled=false;
  else document.getElementById(bottone).disabled=true;
}
function checkFile(file)
{
	// controllo il tipo di file
  ext = file.substr(file.lastIndexOf("."))+".";
  perm = ".gif.jpg.jpeg.png.";
        
	if(perm.indexOf(ext.toLowerCase())<0)
  {
    alert("Puoi caricare solo file con estensione GIF JPG o PNG");
    document.getElementById('immagine').value='';
  } 
  else
  {}
}
      
function checkForm()
{
  if (document.getElementById("immagine").value=="")
  {
    alert("Devi selezionare un file");
    return false;
  }
  else if (trim(document.getElementById("descrizione_it").value)=="")
  {
    alert("Devi inserire la descrizione in italiano");
    return false;
  }
  else
  {
    document.getElementById("load").style.display="block";
    return true;
  }
}
      
      var fromDate = new Date();
      var now = new Date();

      function disallowDatesFrom(date) 
      {
        if( date.getYear() < now.getYear() ||
            date.getYear() == now.getYear() && date.getMonth() < now.getMonth() ||
            date.getYear() == now.getYear() && date.getMonth() == now.getMonth() && date.getDate() < now.getDate())
            
            return true;
          return false;
      }
      function disallowDatesTo1(date)
      {
        fromDate = new Date( 
            document.getElementById( "data_in" ).value.substr( 6 ),
            document.getElementById( "data_in" ).value.substr( 3, 2 ) - 1,
            document.getElementById( "data_in" ).value.substr( 0, 2 ) 
        );
        fromDate.setDate(fromDate.getDate()+1);
        
        if( date.getYear() < fromDate.getYear() ||
            date.getYear() == fromDate.getYear() && date.getMonth() < fromDate.getMonth() ||
            date.getYear() == fromDate.getYear() && date.getMonth() == fromDate.getMonth() && date.getDate() < fromDate.getDate() )
        
            return true;
          return false;
      }
      function disallowDatesTo(date)
      {
        fromDate = new Date( 
            /*
            document.getElementById( "dal" ).value.substr( 0, 4 ),
            document.getElementById( "dal" ).value.substr( 5, 2 ) - 1,
            document.getElementById( "dal" ).value.substr( 8, 2 ) 
            */
            document.getElementById( "dal" ).value.substr( 6 ),
            document.getElementById( "dal" ).value.substr( 3, 2 ) - 1,
            document.getElementById( "dal" ).value.substr( 0, 2 )
        );
        fromDate.setDate(fromDate.getDate()+1);
        
        if( date.getYear() < fromDate.getYear() ||
            date.getYear() == fromDate.getYear() && date.getMonth() < fromDate.getMonth() ||
            date.getYear() == fromDate.getYear() && date.getMonth() == fromDate.getMonth() && date.getDate() < fromDate.getDate() )
        
            return true;
          return false;
      }
     function trim(stringa)
      {
        while (stringa.substring(0,1) == ' ')
        {
          stringa = stringa.substring(1, stringa.length);
        }
        while (stringa.substring(stringa.length-1, stringa.length) == ' ')
        {
          stringa = stringa.substring(0,stringa.length-1);
        }
        return stringa;
      }
      function is_integer(arg)
      {
        var len = arg.length;
        var count=0;
        var Number=true;
        
        /* ciclo su tutti i caratteri e verifico */
        for( count=0; count<len; count++ )
        {
        /* leggo il carattere */
          if( arg.charAt( count ) < '0' || arg.charAt( count ) > '9' )
          {
          /* non e' un numero */
            Number=false;
            break;
          }
        }
        return Number
      }
      function check_mail(indirizzo) 
      {
        if (window.RegExp) 
        {
          var nonvalido = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)";
          var valido = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$";
          var regnv = new RegExp(nonvalido);
          var regv = new RegExp(valido);
          
          if (!regnv.test(indirizzo) && regv.test(indirizzo))
            return true;
          return false;
        }
        else 
        {
          if(indirizzo.indexOf("@") >= 0 && indirizzo.indexOf(".") > indirizzo.indexOf("@"))
            return true;
          return false;
        }
      }
      function check_username(user)
      {
        var pattern = /\W/i;
        var result = user.search(pattern);
        
        return result;
      }
      function check_data(data, italiana)
      {
        if (italiana)
          var myRegex = /^\d{2}-\d{2}-\d{4}/;
        else var myRegex = /^\d{4}-\d{2}-\d{2}/;
 
        var result = myRegex.test(data);
        return result;
	}
	function controllaModuloPaga(numero_clienti, min_notti)
	{
    var data_arrivo=document.getElementById("data_arrivo");
    var notti=document.getElementById("notti");
    var email=document.getElementById("email");
		var ripeti_email=document.getElementById("ripeti_email");
    var metodo_pagamento=document.getElementById("metodo_pagamento");
		
		if (trim(data_arrivo.value)=="")
		{
			alert("Devi inserire la data di arrivo");
			data_arrivo.focus();
			return false;
		}
		else if (!check_data(data_arrivo.value, true))
		{
			alert("Formato data errato.\n\nFormato corretto: gg-mm-aaaa\nEsempio: 31-11-2009");
			data_arrivo.focus();
			return false;
		}
		else if (trim(notti.value)=="")
		{
			alert("Devi inserire un numero di notti");
			notti.focus();
			return false;
		}
    else if (!is_integer(notti.value))
    {
      alert("Devi inserire un numero intero positivo");
			notti.focus();
			return false;
    }
		else if (parseInt(notti.value) < parseInt(min_notti))
		{
			alert("Il numero minimo di notti \350 "+min_notti);
			notti.focus();
			return false;
		}
		else if (true)
		{
			var cliente=document.getElementById("cliente_1");
				
			if (trim(cliente.value)=="")
			{
				alert("Devi inserire i dati del cliente 1");
				cliente.focus();
				return false;
			}
		}
		
		if (trim(email.value)=="")
		{
		  alert("Devi inserire una email");
		  email.focus();
		  return false;
		}
		else if (!check_mail(email.value))
		{
		  alert("Formato email non valido");
		  email.focus();
		  return false;
		}
		if (trim(ripeti_email.value)=="")
		{
		  alert("Devi reinserire l'email");
		  email.focus();
		  return false;
		}
		else if (trim(email.value)!=trim(ripeti_email.value))
		{
		  alert("I due campi email devono essere uguali");
		  ripeti_email.focus();
		  return false;
		}
		else if (!document.formPrenotazione.metodo_pagamento[0].checked && !document.formPrenotazione.metodo_pagamento[1].checked)
		{
			alert("Seleziona un metodo di pagamento");
			return false;
		}
		else return true;
		
	}
	function controllaModuloCerca()
	{
		var data_in=document.getElementById("data_in");
		var data_out=document.getElementById("data_out");
		var regione=document.getElementById("regione");
		var provincia=document.getElementById("provincia");
		
		if (trim(data_in.value)!="" && trim(data_out.value)=="")
		{
			alert("Devi inserire la data di partenza");
			data_out.focus();
			return false;
		}
		else if (trim(data_out.value)!="" && trim(data_in.value)=="")
		{
			alert("Devi inserire la data di arrivo");
			data_in.focus();
			return false;
		}
		else if (trim(data_in.value)!="" && !check_data(data_in.value, true))
		{
			alert("Formato data arrivo errato.\n\nFormato corretto: gg-mm-aaaa\nEsempio: 31-11-2009");
			data_in.focus();
			return false;
		}
		else if (trim(data_out.value)!="" && !check_data(data_out.value, true))
		{
			alert("Formato data partenza errato.\n\nFormato corretto: gg-mm-aaaa\nEsempio: 31-11-2009");
			data_out.focus();
			return false;
		}
		else return true;
	}
	function controllaModulo(registrazione)
	{
		var struttura=document.getElementById("struttura");
    var indirizzo=document.getElementById("indirizzo");
    var cap=document.getElementById("cap");
        
    if (registrazione)
      var regione=document.getElementById("regione_reg");
    else var regione=document.getElementById("regione");
        
    if (registrazione)
      var provincia=document.getElementById("provincia_reg");
    else var provincia=document.getElementById("provincia");
        
    var comune=document.getElementById("comune");
    var telefono=document.getElementById("telefono");
    var piva=document.getElementById("piva");
    var email=document.getElementById("email");
    var ripeti_email=document.getElementById("ripeti_email");
        var nome=document.getElementById("nome");
        var cognome=document.getElementById("cognome");
        var cellulare=document.getElementById("cell");
        var desc_it=document.getElementById("desc_it");
        var code=document.getElementById("code");
        var username=document.getElementById("username");
        
        if (trim(struttura.value)=="")
        {
          alert("Devi inserire il nome della struttura");
          struttura.focus();
          return false;
        }
        else if (trim(indirizzo.value)=="")
        {
          alert("Devi inserire un indirizzo");
          indirizzo.focus();
          return false;
        }
        else if (!is_integer(cap.value))
        {
          alert("Il CAP deve essere un numero");
          cap.focus();
          return false;
        }
        else if (trim(cap.value)=="" || cap.value.length < 5)
        {
          alert("Devi inserire un CAP di almeno 5 numeri");
          cap.focus();
          return false;
        }
        else if (trim(regione.value)=="" || regione.value=="- Seleziona -")
        {
          alert("Devi selezionare una regione");
          regione.focus();
          return false;
        }
        else if (trim(provincia.value)=="" || provincia.value=="- Seleziona -")
        {
          alert("Devi selezionare una provincia");
          provincia.focus();
          return false;
        }
        else if (trim(comune.value)=="" || comune.value=="- Seleziona -")
        {
          alert("Devi selezionare un comune");
          comune.focus();
          return false;
        }
        else if (trim(telefono.value)=="")
        {
          alert("Devi inserire un numero di telefono");
          telefono.focus();
          return false;
        }
        else if (trim(piva.value)=="")
        {
          alert("Devi inserire una P. IVA o Cod. Fiscale");
          piva.focus();
          return false;
        }
        else if (trim(email.value)=="")
        {
          alert("Devi inserire una email");
          email.focus();
          return false;
        }
        else if (!check_mail(email.value))
        {
          alert("Formato email non valido");
          email.focus();
          return false;
        }
        else if (registrazione && trim(ripeti_email.value)=="")
        {
          alert("Devi inserire di nuovo l'email");
          ripeti_email.focus();
          return false;
        }
        else if (registrazione && trim(email.value)!=trim(ripeti_email.value))
        {
          alert("I due campi email devono essere uguali");
          ripeti_email.focus();
          return false;
        }
        else if (trim(nome.value)=="")
        {
          alert("Devi inserire un nome");
          nome.focus();
          return false;
        }
        else if (trim(cognome.value)=="")
        {
          alert("Devi inserire un cognome");
          cognome.focus();
          return false;
        }
        else if (trim(cellulare.value)=="")
        {
          alert("Devi inserire un numero di cellulare");
          cellulare.focus();
          return false;
        }
        else if (cellulare.value.substring(0,2) != "39")
        {
          alert("Formato numero cellulare errato devi inserire il prefisso 39 davanti al numero");
          cellulare.focus();
          return false;
        }
        else if (!is_integer(cellulare.value) || cellulare.value.length !=12)
        {
          alert("Formato numero di cellulare errato\nInserisci il prefisso internazionale(39), il prefisso e il numero senza lasciare spazi vuoti");
          cellulare.focus();
          return false;
        }
        else if (trim(desc_it.value)=="")
        {
          alert("Devi inserire la descrizione in italiano");
          desc_it.focus();
          return false;
        }
        else if (registrazione && trim(code.value)=="")
        {
          alert("Devi inserire il codice anti-spam");
          code.focus();
          return false;
        }
        else if (registrazione && trim(username.value)=="")
        {
          alert("Devi inserire uno username");
          username.focus();
          return false;
        }
        else if (registrazione && (check_username(trim(username.value))!=-1 || username.value.length < 3 || username.value.length > 15))
        {
          var stringa="Lo username pu\362 contenere solo lettere e numeri e pu\362 avere una lunghezza massima di 15 caratteri e minima di 3";
          alert(stringa);
          username.focus();
          return false;
        }
        else return true;
      }
      function controllaModuloOfferta()
      {
        var nome_offerta=document.getElementById("nome_offerta");
        var dal=document.getElementById("dal");
        var al=document.getElementById("al");
        var al=document.getElementById("al");
        var tipologia_camera=document.getElementById("tipologia_camera");
        var prezzo_listino=document.getElementById("prezzo_listino");
        var prezzo_offerta=document.getElementById("prezzo_offerta");
        
        if (trim(nome_offerta.value)=="")
        {
          alert("Devi inserire il nome dell' offerta");
          nome_offerta.focus();
          return false;
        }
        else if (!check_data(dal.value, true))
        {
          alert("Formato data errato. Formato corretto: gg-mm-aaaa");
          dal.focus();
          return false;
        }
        else if (!check_data(al.value, true))
        {
          alert("Formato data errato. Formato corretto: gg-mm-aaaa");
          al.focus();
          return false;
        }
        else if (trim(tipologia_camera.value)=="")
        {
          alert("Devi inserire la tipologia della camera");
          tipologia_camera.focus();
          return false;
        }
        else if (trim(prezzo_listino.value)=="")
        {
          alert("Devi inserire un prezzo di listino");
          prezzo_listino.focus();
          return false;
        }
        else if (!is_integer(prezzo_listino.value) || parseInt(prezzo_listino.value) > 100)
        {
          alert("Il prezzo di listino deve essere un numero positivo minore o uguale a 100");
          prezzo_listino.focus();
          return false;
        }
        else if (trim(prezzo_offerta.value)=="")
        {
          alert("Devi inserire un prezzo in offerta");
          prezzo_offerta.focus();
          return false;
        }
        else if (!is_integer(prezzo_offerta.value) || parseInt(prezzo_offerta.value) > 40)
        {
          alert("Il prezzo di offerta deve essere un numero positivo minore o uguale a 40");
          prezzo_offerta.focus();
          return false;
        }
        else return true;
      }

function mostra_province(id_regione, registrazione)
{
  if (id_regione.value!="- Seleziona -")
	{
    if (registrazione)
      url = "registrazione.php?id_regione="+id_regione.value;
    else url = "index.php?id_regione="+id_regione.value;
    
    var http_request = false;
    
    if (window.XMLHttpRequest) 
    { // Mozilla, Safari,...
      http_request = new XMLHttpRequest();
    } 
    else if (window.ActiveXObject) 
    { // IE.
      try 
      {
        http_request = new ActiveXObject("Msxml2.XMLHTTP");
      } 
      catch (e)
      {
        try 
        {
          http_request = new ActiveXObject("Microsoft.XMLHTTP");
        } 
        catch (e) {}
      }
    }
    if (!http_request) 
    {
      return false;
    }
    http_request.onreadystatechange = function() { crea_lista_province(http_request, registrazione); };
    http_request.open('GET', url, true);
    http_request.send(null);
  }
}

function crea_lista_province(http_request, registrazione)
{
  if (http_request.readyState == 4)
  {
    if (http_request.status == 200)
    {
      if (registrazione)
        document.getElementById("prov_reg").innerHTML=http_request.responseText;
      else document.getElementById("prov").innerHTML=http_request.responseText;
    } 
    else
    {
      alert("problema con la richiesta HTTP");
    }
  }
}

function mostra_comuni(id_provincia)
{
  if (id_provincia.value!="- Seleziona -")
	{
    url = "registrazione.php?id_provincia="+id_provincia.value;
    
    var http_request = false;
    
    if (window.XMLHttpRequest) 
    { // Mozilla, Safari,...
      http_request = new XMLHttpRequest();
    } 
    else if (window.ActiveXObject) 
    { // IE.
      try 
      {
        http_request = new ActiveXObject("Msxml2.XMLHTTP");
      } 
      catch (e)
      {
        try 
        {
          http_request = new ActiveXObject("Microsoft.XMLHTTP");
        } 
        catch (e) {}
      }
    }
    if (!http_request) 
    {
      return false;
    }
    http_request.onreadystatechange = function() { crea_lista_comuni(http_request); };
    http_request.open('GET', url, true);
    http_request.send(null);
  }
}

function crea_lista_comuni(http_request) 
{
  if (http_request.readyState == 4) 
  {
    if (http_request.status == 200) 
    {
      document.getElementById("com").innerHTML=http_request.responseText;
    } 
    else 
    {
      alert("problema con la richiesta HTTP");
    }
  }
}
function checkUser(user)
{
  url = "registrazione.php?username="+user.value;
  
  var http_request = false;
  
  if (window.XMLHttpRequest) 
  { // Mozilla, Safari,...
    http_request = new XMLHttpRequest();
  } 
  else if (window.ActiveXObject) 
  { // IE.
    try 
    {
      http_request = new ActiveXObject("Msxml2.XMLHTTP");
    } 
    catch (e)
    {
      try 
      {
        http_request = new ActiveXObject("Microsoft.XMLHTTP");
      } 
      catch (e) {}
    }
  }
  if (!http_request) 
  {
    return false;
  }
  http_request.onreadystatechange = function() { cercaUtente(http_request); };
  http_request.open('GET', url, true);
  http_request.send(null);

}

function cercaUtente(http_request) 
{
  if (http_request.readyState == 4) 
  {
    if (http_request.status == 200) 
    {
      document.getElementById("checkUser").innerHTML=http_request.responseText;
    } 
    else 
    {
      alert("problema con la richiesta HTTP");
    }
  }
}