function BookingCalc(actionPage){
  var f = document.getElementById('BookingCalcForm1');
  
  var data_inizio = isDate(f.StD.value);
  var data_fine = isDate(f.EnD.value);

  
  if(f.StD.value==f.EnD.value || data_inizio > data_fine){
    alert('Selezionare una data di fine del soggiorno successiva a quella di inizio.');
    }
  else{
    if(f.prenotazione_sistemazione.value==''){
      alert('Non sono stati compilati tutti i campi obbligatori.');
      }
    else{
      var redir = actionPage + '?idSi=' + f.prenotazione_sistemazione.value + '&idSt=' + f.idSt.value + '&StD=' + URLEncode(f.StD.value) + '&EnD=' + URLEncode(f.EnD.value) + '&tipologia=village';
      document.location = redir;
      }
    }
  }
  
function BookingCalcCamping(actionPage){
  var f = document.getElementById('BookingCalcCamping');
  
  var data_inizio = isDate(f.StD_camping.value);
  var data_fine = isDate(f.EnD_camping.value);

  
  if(f.StD_camping.value==f.EnD_camping.value || data_inizio > data_fine){
    alert('Selezionare una data di fine del soggiorno successiva a quella di inizio.');
    }
  else{
    if(f.prenotazione_sistemazione.value==''){
      alert('Non sono stati compilati tutti i campi obbligatori.');
      }
    else{
      var redir = actionPage + '?idSi=' + f.prenotazione_sistemazione.value + '&idSt=' + f.idSt.value + '&StD=' + URLEncode(f.StD_camping.value) + '&EnD=' + URLEncode(f.EnD_camping.value) + '&tipologia=camping';
      var sosta_prima_fila = 0;
      if (f.sosta_prima_fila.checked) {sosta_prima_fila=1;}
      redir = redir + '&camping_adulti=' + f.camping_adulti.value + '&camping_bambini=' + f.camping_bambini.value + '&camping_tenda=' + f.camping_tenda.value + '&camping_auto=' + f.camping_auto.value + '&camping_roulotte=' + f.camping_roulotte.value + '&camping_moto_small=' + f.camping_moto_small.value + '&camping_camper=' + f.camping_camper.value + '&camping_moto_big=' + f.camping_moto_big.value + '&sosta_prima_fila=' + sosta_prima_fila;
      document.location = redir;
      }
    }
  }
  
  
function isDate(str) { // anno a 4 cifre !!!
	spz = str.split("/"); 
	dat = new Date(spz[2], spz[1]-1, spz[0]); 
	if	( 
		dat.getFullYear() == parseFloat(spz[2]) &&
		dat.getMonth() == (parseFloat(spz[1])-1) &&
		dat.getDate() == parseFloat(spz[0]) 
		) {
			return dat;
	}
	return false;
}

  
 function URLEncode(stringa)
{
	// The Javascript escape and unescape functions do not correspond
	// with what browsers actually do...
	var SAFECHARS = "0123456789" +					// Numeric
					"ABCDEFGHIJKLMNOPQRSTUVWXYZ" +	// Alphabetic
					"abcdefghijklmnopqrstuvwxyz" +
					"-_.!~*'()";					// RFC2396 Mark characters
	var HEX = "0123456789ABCDEF";

	var plaintext = stringa;
	var encoded = "";
	for (var i = 0; i < plaintext.length; i++ ) {
		var ch = plaintext.charAt(i);
	    if (ch == " ") {
		    encoded += "+";				// x-www-urlencoded, rather than %20
		} else if (SAFECHARS.indexOf(ch) != -1) {
		    encoded += ch;
		} else {
		    var charCode = ch.charCodeAt(0);
			if (charCode > 255) {
			    alert( "Unicode Character '" 
                        + ch 
                        + "' cannot be encoded using standard URL encoding.\n" +
				          "(URL encoding only supports 8-bit characters.)\n" +
						  "A space (+) will be substituted." );
				encoded += "+";
			} else {
				encoded += "%";
				encoded += HEX.charAt((charCode >> 4) & 0xF);
				encoded += HEX.charAt(charCode & 0xF);
			}
		}
	} // for

	return encoded;
};
