// Italiano
var aryMesiIT = new Array('Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno','Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre');
var aryGiorniIT = new Array('Domenica','Luned%EC','Marted%EC','Mercoled%EC','Gioved%EC','Venerd%EC','Sabato');
var aryMesiBreviIT = new Array('gen','feb','mar','apr','mag','giu','lug','ago','set','ott','nov','dic');
var aryGiorniBreviIT = new Array('Dom','Lun','Mar','Mer','Gio','Ven','Sab');
var aryTratIT = new Array('Mostra tutti i disponibili','Bed %26 Breakfast','Mezza Pensione','Pensione Completa','Solo Pernottamento');

// English
var aryGiorniEN = new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');
var aryMesiEN = new Array('January','February','March','April','May','June','July','August','September','October','November','December');
var aryMesiBreviEN = new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
var aryGiorniBreviEN = new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat');
var aryTratEN = new Array('Show any available','Bed %26 Breakfast','Half Board','Full Board','Room Only');

// Deutsch
var aryGiorniDE = new Array('Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag');
var aryMesiDE = new Array('Januar','Februar','Maerz','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember');
var aryMesiBreviDE = new Array('Jan','Feb','Mrz','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez');
var aryGiorniBreviDE = new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat');
//var aryTratDE = new Array('Show any available','%DCbernachtung/Fr%FChst%FCck','Halbpension','Vollpension','%DCbernachtung');
var aryTratDE = new Array('Show any available','%DCbernachtung/Fr%FChst%FCck','Halbpension','Vollpension','%DCbernachtung');

// Français
var aryGiorniFR = new Array('Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi');
var aryMesiFR = new Array('Janvier','F%E9vrier','Mars','Avril','Mai','Juin','Juillet','Ao%FBt','Septembre','Octobre','Novembre','D%E9cembre');
var aryMesiBreviFR = new Array('janv.','f%E9vr.','mars','avr.','mai','juin','juil.','ao%FBt','sept.','oct.','nov.','d%E9c.');
var aryGiorniBreviFR = new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat');
var aryTratFR = new Array('Show any available','Bed %26 Breakfast','Demi-pension','Pension compl%E8te','Seulement chambres');

// Español
var aryMesiES = new Array('Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre');
var aryGiorniES = new Array('Domingo', 'Lunes', 'Martes', 'Mi%E9rcoles', 'Jueves', 'Viernes', 'Sabado');
var aryMesiBreviES = new Array('ene','feb','mar','abr','may','jun','jul','ago','sep','oct','nov','dic');
var aryGiorniBreviES = new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat');
var aryTratES = new Array('Show any available','Alojamiento y desayuno','Media pensi%F3n','Pensi%F3n completa','Solo alojamiento');

// Português
//var aryMesiPT = new Array('Janeiro','Fevereiro','Mar%E7o','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro');
var aryMesiBreviPT = new Array('jan','fev','mar','abr','mai','jun','jul','ago','set','out','nov','dez');
var aryGiorniPT = new Array('Domingo','Segunda-feira','Ter%E7a-feira','Quarta-feira','Quinta-feira','Sexta-feira','S%E1bado');
var aryGiorniBreviPT = new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat');
var aryTratPT = new Array('Amostras disponíveis','Bed %26 Breakfast','Meia-pens%E3o','Pens%E3o Completa','S%F3 Pernoite');


var aryGiorni = null;
var aryMesi = null;
var aryMesiBrevi = null;
var aryGiorniBrevi = null;
var aryTrat = null;
var aryGiorniSel = null;
var aryMesiSel = null;

var Step = 1;

var DataArrivoGiorno = 'ddlArrivoGiorno';
var DataArrivoMese = 'ddlArrivoMese';
var DataArrivoAnno = 'ddlArrivoAnno';
var DataPartenzaGiorno = 'ddlPartenzaGiorno';
var DataPartenzaMese = 'ddlPartenzaMese';
var DataPartenzaAnno = 'ddlPartenzaAnno';

var Persone = 'ddlPersone';
var Camere = 'ddlCamere';
var Trattamenti = 'ddlTrattamento';

var DivGiornoArrivo = "dvGiornoArrivo";
var DivGiornoPartenza = "dvGiornoPartenza";

var GuidStruttura = '';
var CodLingua = 'EN';
//var bolPrenOggiSi = false;		// true = consente prenotazione giorno stesso
var bolSoloMultipli = false;		// true = imposta valori multipli del minimum stay
var intMinStay = 1;					// imposta i giorni di minimum stay
var intReleaseDays = 1;				// imposta i giorni di anticipo
var strGiorni = '0,1,2,3,4,5,6';
var aryGiorniChkIn = this.strGiorni.split(',');
var strTratSel = '1,2,3,4';
var aryTratSel = this.strTratSel.split(',');

var TipoDescrGiorni = 0;	// se diverso da 1 = giorni brevi
var TipoDescrMesi = 0;		// se diverso da 1 = mesi brevi
var TipoDescrAnni = 1;		// se diverso da 1 = anno di 2 cifre


var bolChkConfigurazione = true;

var HttpHost = 'https://www.simplebooking.it';
//var HttpHost = 'http://simplebooking.qntdev.com';
var BookUrl = HttpHost + '/booking.aspx';
var CancUrl = HttpHost + '/booking.aspx';
var Calendar = HttpHost + '/Inclusioni/Popup/calendario_javascript.aspx';

this.onload = function() { InizializzaModulo(); }

var scriptloaded = false;

function InizializzaModulo()
{
	try
	{
		this.GuidStruttura = GetObj('GUID').value;
		this.CodLingua = GetObj('LANG').value;
		if(this.GuidStruttura != null && this.CodLingua != null)
		{
			if(this.scriptloaded == false)
			{
				try
				{
					try
					{
						this.aryGiorni = eval('aryGiorni' + this.CodLingua);
						this.aryMesi = eval('aryMesi' + this.CodLingua);
						this.aryMesiBrevi = eval('aryMesiBrevi' + this.CodLingua);
						this.aryGiorniBrevi = eval('aryGiorniBrevi' + this.CodLingua);
						this.aryTrat = eval('aryTrat' + this.CodLingua);
					}
					catch(exp)
					{
						this.aryGiorni = this.aryGiorniEN;
						this.aryMesi = this.aryMesiEN;
						this.aryMesiBrevi = this.aryMesiBreviEN;
						this.aryGiorniBrevi = this.aryGiorniBreviEN;
					}
					if(this.aryGiorni == null || this.aryMesi == null || this.aryMesiBrevi == null || this.aryGiorniBrevi == null || this.aryTrat == null)
					{
						this.aryGiorni = this.aryGiorniEN;
						this.aryMesi = this.aryMesiEN;
						this.aryMesiBrevi = this.aryMesiBreviEN;
						this.aryGiorniBrevi = this.aryGiorniBreviEN;
						this.aryTrat = this.aryTratEN;
					}
					try 
					{ 
						if(this.TipoDescrMesi) 
						{
							if(this.TipoDescrMesi == 1)
								this.aryMesiSel = this.aryMesi;
							else
								this.aryMesiSel = this.aryMesiBrevi;
						}
						else
						{ 
							this.aryMesiSel = this.aryMesiBrevi;
						}
					}
					catch(exp) 
					{ 
						this.aryMesiSel = this.aryMesiBrevi;
					}
					try 
					{ 
						if(this.TipoDescrGiorni) 
						{
							if(this.TipoDescrGiorni== 1)
								this.aryGiorniSel = this.aryGiorni;
							else
								this.aryGiorniSel = this.aryGiorniBrevi;
						} 
						else
						{ 
							this.aryGiorniSel = this.aryGiorniBrevi;
						}
					}
					catch(exp) 
					{ 
						this.aryGiorniSel= this.aryGiorniBrevi;
					}
				
					var DalDayObj = GetObj(DataArrivoGiorno);
					var DalMonthObj = GetObj(DataArrivoMese);
					var DalYearObj = GetObj(DataArrivoAnno);
					var AlDayObj = GetObj(DataPartenzaGiorno);
					var AlMonthObj = GetObj(DataPartenzaMese);
					var AlYearObj = GetObj(DataPartenzaAnno);
					
					var PerObj = GetObj(Persone);
					var CamObj = GetObj(Camere);
					var TratObj = GetObj(Trattamenti);
					
					if(
						DalDayObj == null &&
						DalMonthObj == null &&
						DalYearObj == null &&
						AlDayObj == null && 
						AlMonthObj == null &&
						AlYearObj == null &&
						PerObj == null
					)
					{
						MostraErroreConfigurazione();
						bolChkConfigurazione = false; 
						return;
					}
				
					DalDayObj.onchange = function() { CheckDates(); }
					AlDayObj.onchange = function() { CheckDates(); }
					
					DalMonthObj.onchange = function() { SetDays('0'); }
					AlMonthObj.onchange = function() { SetDays('1'); }
					DalYearObj.onchange = function() { SetDays('0'); }
					AlYearObj.onchange = function() { SetDays('1'); }
					
					PerObj.onchange = function() { ReimpostaCamere(); }
				
					var Today = new Date();
					var TodayYear = Today.getFullYear();
					var TodayMonth = Today.getMonth();
					var TodayDay = Today.getDate() + intReleaseDays; //((bolPrenOggiSi == false) ? 1 : 0);
					var Today = new Date(parseInt(TodayYear), parseInt(TodayMonth), parseInt(TodayDay));
					var TodayYear = Today.getFullYear();
					var TodayMonth = Today.getMonth();
					var TodayDay = Today.getDate();
				
					for(var i = 1; i <= 31; i++)
					{
						var idx = DalDayObj.options.length;
						var strI = new String(i);
						DalDayObj.options[idx] = new Option(((strI.length < 2) ? '0' + strI : strI));
						DalDayObj.options[idx].value = strI;
						AlDayObj.options[idx] = new Option(((strI.length < 2) ? '0' + strI : strI));
						AlDayObj.options[idx].value = strI;
					}
					for(var j = 0; j < 12; j++)
					{
						var idx = DalMonthObj.options.length;
						DalMonthObj.options[idx] = new Option(unescape(this.aryMesiSel[j]));
						DalMonthObj.options[idx].value = (j+1);
						AlMonthObj.options[idx] = new Option(unescape(this.aryMesiSel[j]));
						AlMonthObj.options[idx].value = (j+1);
					}
					try { if(this.intTipoDescrAnni) { this.TipoDescrAnni = this.intTipoDescrAnni; } }
					catch(exp) { this.TipoDescrAnni = 1; }
					for(var k = 0; k < 3; k++)
					{
						var Year = TodayYear + k;
						var idx = DalYearObj.options.length;
						if(this.TipoDescrAnni == 1)
						{
							DalYearObj.options[idx] = new Option(Year);
							DalYearObj.options[idx].value = Year;
							AlYearObj.options[idx] = new Option(Year);
							AlYearObj.options[idx].value = Year;
						} 
						else
						{
							var strY = new String(Year);
							DalYearObj.options[idx] = new Option(strY.substring(2,4));
							DalYearObj.options[idx].value = Year;
							AlYearObj.options[idx] = new Option(strY.substring(2,4));
							AlYearObj.options[idx].value = Year;
						}
					}
					for(var l = 1; l <= 8; l++)
					{
						var idx = PerObj.options.length;
						PerObj.options[idx] = new Option(l);
						PerObj.options[idx].value = l;
						if(l == 2) { PerObj.options[idx].selected = true; }
					}
					if(CamObj != null)
					{
						CamObj.options[0] = new Option('--');
						CamObj.options[0].value = 0;
						for(var m = 1; m <= 2; m++)
						{
							var idx = CamObj.options.length;
							CamObj.options[idx] = new Option(m);
							CamObj.options[idx].value = m;
						}
					}
					//try { if(this.PrenotaOggi) { this.bolPrenOggiSi = this.PrenotaOggi; } }
					//catch(exp) { this.bolPrenOggiSi = false; }
					try { if(this.SoloMultipli) { this.bolSoloMultipli = this.SoloMultipli; } }
					catch(exp) { this.bolSoloMultipli = false; }
					try { if(this.MininumStay) { this.intMinStay = this.MininumStay; } }
					catch(exp) { this.intMinStay = 1; }
					try
					{ 
						if(this.GiorniPrenotabili == undefined) { this.strGiorni = this.GiorniPrenotabili; } 
						this.aryGiorniChkIn = this.strGiorni.split(',');
					}
					catch(exp) 
					{ 
						this.strGiorni = '0,1,2,3,4,5,6'; 
						this.aryGiorniChkIn = this.strGiorni.split(',');
					}
					try
					{
						if(this.TrattamentiSelezionati == undefined) { this.strTratSel = this.TrattamentiSelezionati; }
						this.aryTratSel = this.strTratSel .split(',');
					}
					catch(exp) 
					{ 
						this.strTratSel = '1,2,3,4';
						this.aryTratSel = this.strTratSel .split(',');
					}

					SetDays('0', TodayDay, (TodayMonth+1), TodayYear);
				
					if(TratObj != null)
					{
						TratObj.options[0] = new Option(aryTrat[0]);
						TratObj.options[0].value = 0;
						for(var n = 0; n < aryTratSel.length; n++)
						{
							var idx = TratObj.options.length;
							TratObj.options[idx] = new Option(unescape(aryTrat[aryTratSel[n]]));
							TratObj.options[idx].value = aryTratSel[n];
						}
					}
					this.scriptloaded = true;
				}
				catch(e)
				{ 
					MostraErroreConfigurazione();
					bolChkConfigurazione = false; 
				}
			}
		}
	}
	catch (exp) {}
}
function MostraErroreConfigurazione()
{
	var strMex = 'Errore di configurazione!\n';
	strMex += 'Si  verificato un errore durante l\'inizializzazione del modulo di ricerca.\n';
	strMex += 'Ecco un riepilogo degli oggetti mancanti:';

	var DalDayObj = GetObj(DataArrivoGiorno);
	var DalMonthObj = GetObj(DataArrivoMese);
	var DalYearObj = GetObj(DataArrivoAnno);
	var AlDayObj = GetObj(DataPartenzaGiorno);
	var AlMonthObj = GetObj(DataPartenzaMese);
	var AlYearObj = GetObj(DataPartenzaAnno);
		
	var PerObj = GetObj(Persone);
		
	if(DalDayObj == null) { strMex += '\n - Selezione giorno arrivo'; }
	if(DalMonthObj == null) { strMex += '\n - Selezione mese arrivo'; }
	if(DalYearObj == null) { strMex += '\n - Selezione anno arrivo'; }
	if(AlDayObj == null) { strMex += '\n - Selezione giorno partenza'; }
	if(AlMonthObj == null) { strMex += '\n - Selezione mese partenza'; }
	if(AlYearObj == null) { strMex += '\n - Selezione anno partenza'; }
	if(PerObj == null) { strMex += '\n - Selezione numero di persone'; }
	alert(strMex);
}
var wndFrm = null;
function Ricerca()
{
	if(this.bolChkConfigurazione == false) { MostraErroreConfigurazione(); return; }
	if(GetObj('GUID').type == 'hidden') { this.GuidStruttura = GetObj('GUID').value; }
	else { this.GuidStruttura = GetObj('GUID')[GetObj('GUID').selectedIndex].value; }
	var wndPram = 'scrollbars=no,resizable=yes,location=no,menubar=no,status=yes,width=630,height=400';
	if(wndFrm != null) { if(!wndFrm.closed) { wndFrm.close(); } }
	var Name = new String('OnlineBooking_' + this.GuidStruttura);
	var re = /-/g;
	wndFrm = window.open('', Name.replace(re, ''), wndPram);
	//var wndFrm = window.open('', 'OnlineBooking', '');
	if(wndFrm != null)
	{
		
		try { ImpostaLoad(wndFrm); }
		catch(ex)
		{ 
			if(!wndFrm.closed) { wndFrm.close(); }
			wndFrm = window.open('', 'OnlineBooking_' + this.GuidStruttura, wndPram);
			ImpostaLoad(wndFrm);
		}
		timer = setTimeout("LanciaForm()",2000)
		var url = this.BookUrl + '?GUID=' + this.GuidStruttura + '&LANG=' + this.CodLingua + '&DO=SEARCH';
		var frm = GetObj('frm');
		frm.target = wndFrm.name;
		frm.action = url;
	}
}
function ImpostaLoad(wnd)
{
	wnd.id = wnd.name;
	wnd.document.open();
	wnd.document.write('Loading...');
	wnd.document.close();
}
function LanciaForm()
{
	if(this.bolChkConfigurazione == false) { MostraErroreConfigurazione(); return; }
	document.frm.submit();
}
function GetObj(Id)
{
	return (document.getElementById) ? document.getElementById(Id) : eval('document.all.' + Id);
}
function ReimpostaCamere()
{
	if(this.bolChkConfigurazione == false) { MostraErroreConfigurazione(); return; }
	var PerObj = GetObj(Persone);
	var CamObj = GetObj(Camere);
	if(CamObj != null)
	{
		var NPers = PerObj[PerObj.selectedIndex].value;
		var OldCam = CamObj[CamObj.selectedIndex].value;
		for(var i = CamObj.options.length; i >= 0; i--) {CamObj.options[i] = null;}
		CamObj.options[0] = new Option('--');
		CamObj.options[0].value = 0;
		for(var i = 1; i <= NPers; i++)
		{
			var idx = CamObj.options.length;
			CamObj.options[idx] = new Option(i);
			CamObj.options[idx].value = i;
			if(i == OldCam) { CamObj.options[idx].selected = true; }
		}
	}
}
function SetDays(Tipo, GiornoSel, MeseSel, AnnoSel)
{
	if(this.bolChkConfigurazione == false) { MostraErroreConfigurazione(); return; }
	// Reimpostazione parametri
	Tipo = (Tipo == null) ? "" : Tipo;
	GiornoSel = (GiornoSel == null) ? "" : GiornoSel;
	MeseSel = (MeseSel == null) ? "" : MeseSel;
	AnnoSel = (AnnoSel == null) ? "" : AnnoSel;
	
	// Recupero oggetti select indistintamente
	var DalDayObj = GetObj(DataArrivoGiorno);
	var DalMonthObj = GetObj(DataArrivoMese);
	var DalYearObj = GetObj(DataArrivoAnno);
	var AlDayObj = GetObj(DataPartenzaGiorno);
	var AlMonthObj = GetObj(DataPartenzaMese);
	var AlYearObj = GetObj(DataPartenzaAnno);

	// Recupero oggetti select
	var DayObj = DalDayObj;
	var MonthObj = DalMonthObj;
	var YearObj = DalYearObj;
	if(Tipo == "1")
	{
		var DayObj = AlDayObj;
		var MonthObj = AlMonthObj;
		var YearObj = AlYearObj;
	}

	// Giorno, mese, anno della data di oggi
	var Today = new Date();
	var TodayDay = Today.getDate();
	var TodayMonth = Today.getMonth();
	var TodayYear = Today.getFullYear();

	var ChkDate = new Date(parseInt(AnnoSel), parseInt(MeseSel)-1, parseInt(GiornoSel));

	// Preparazione variabili
	var aryMonth = new Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12);
	var FebDays = 28
	var CheckYear = (AnnoSel == "") ? YearObj[YearObj.selectedIndex].value : AnnoSel;
	if(CheckYear/4 == Math.round(CheckYear/4)) {var FebDays = 29;}
	var aryTotDays = new Array(31, FebDays, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
	var oldSelDay = "";
	if(DayObj.selectedIndex != -1) {oldSelDay = DayObj[DayObj.selectedIndex].value;}
	if(GiornoSel != "") { oldSelDay = GiornoSel; }
	
	if(AnnoSel != "")
	{
		for(var i = 0; i < YearObj.options.length; i++)
		{
			if(YearObj.options[i].value == AnnoSel)
			{
				YearObj.options[i].selected = true;
				AnnoSel = parseInt(YearObj.options[i].value);
				break;
			}
		}
	}
	else
	{
		AnnoSel = parseInt(YearObj[YearObj.selectedIndex].value);
	}
	// Reimpostazione giorni
	for(var i = DayObj.options.length; i >= 0; i--) {DayObj.options[i] = null;}
	for(var m = 0; m < aryMonth.length; m++)
	{
		if((parseInt(aryMonth[m]) == parseInt(MonthObj[MonthObj.selectedIndex].value) && MeseSel == "") ||
			(parseInt(aryMonth[m]) == parseInt(MeseSel))
		)
		{
			for(var d = 0; d < aryTotDays[m]; d++)
			{
				var g = new String(d+1);
				var chkD = new Date(AnnoSel, (aryMonth[m]-1), g);
				var ChkIn = false;
				if(Tipo == '1' && !this.bolSoloMultipli)
				{
					ChkIn = true;
				}
				else
				{
					for(var iChk = 0; iChk < aryGiorniChkIn.length; iChk++)
					{
						if(chkD.getDay() == parseInt(aryGiorniChkIn[iChk]))
						{
							ChkIn = true;
							break;
						}
					}
				}
				if(ChkIn)
				{
					var idxGiorno = DayObj.options.length;
					DayObj.options[idxGiorno] = new Option(((g.length < 2) ? "0" + g : g));
					DayObj.options[idxGiorno].value = g;
					if(oldSelDay != "" && parseInt(oldSelDay) == parseInt(DayObj.options[idxGiorno].value)) { DayObj.options[idxGiorno].selected = true; }
				}
			}
			if(this.bolSoloMultipli && (DayObj.selectedIndex == -1 || DayObj.options[idxGiorno].value < GiornoSel))
			{
				SetDays(Tipo, 1, parseInt(aryMonth[m])+1, AnnoSel);
				return;
			}
		}
	}
	if(DayObj.selectedIndex == -1) 
	{ 
		for(var idxDay = 0; idxDay < DayObj.options.length; idxDay++)
		{
			if(parseInt(DayObj.options[idxDay].value) >= TodayDay)
			{
				DayObj.options[idxDay].selected = true; 
				break;
			}
		}
		if(DayObj.selectedIndex == -1) {DayObj.options[0].selected = true;}
	}
	else
	{
		if(DayObj.options[DayObj.selectedIndex].value < TodayDay && Today > ChkDate && ((
		Tipo == '1' && MonthObj.selectedIndex == TodayMonth && MonthObj.options[MonthObj.selectedIndex].value == DalMonthObj.options[DalMonthObj.selectedIndex].value
		) || (
		Tipo != '1' && MonthObj.selectedIndex == TodayMonth && MonthObj.options[MonthObj.selectedIndex].value == AlMonthObj.options[AlMonthObj.selectedIndex].value
		)))
		{
			DayObj.selectedIndex = -1;
			for(var idxDay = 0; idxDay < DayObj.options.length; idxDay++)
			{
				if(parseInt(DayObj.options[idxDay].value) >= TodayDay)
				{
					DayObj.options[idxDay].selected = true; 
					break;
				}
			}
		}
	}
	if(MeseSel != "")
	{
		for(var i = 0; i < MonthObj.options.length; i++)
		{
			if(MonthObj.options[i].value == MeseSel)
			{
				MonthObj.options[i].selected = true;
				break;
			}
		}
	}
	if(Tipo != "1") { CheckDates(); }
	StampaStringaGiorno();
}
function StampaStringaGiorno()
{
	if(this.bolChkConfigurazione == false) { MostraErroreConfigurazione(); return; }
	var dvGrnArr = GetObj(DivGiornoArrivo);
	var dvGrnPar = GetObj(DivGiornoPartenza);
	
	if(dvGrnArr != null && dvGrnPar)
	{
		var DalGiornoObj = GetObj(DataArrivoGiorno);
		var DalMeseObj = GetObj(DataArrivoMese);
		var DalAnnoObj = GetObj(DataArrivoAnno);
		var AlGiornoObj = GetObj(DataPartenzaGiorno);
		var AlMeseObj = GetObj(DataPartenzaMese);
		var AlAnnoObj = GetObj(DataPartenzaAnno);
		
		if(
			DalGiornoObj.selectedIndex != -1 &&
			DalMeseObj.selectedIndex != -1 &&
			DalAnnoObj.selectedIndex != -1
		)
		{
			var DalAnno = DalAnnoObj.options[DalAnnoObj.selectedIndex].value;
			var DalMese = DalMeseObj.selectedIndex;
			var DalGiorno = DalGiornoObj.options[DalGiornoObj.selectedIndex].value;
	
			var DataArrivo = new Date(parseInt(DalAnno), parseInt(DalMese), parseInt(DalGiorno));
	
			dvGrnArr.innerText = this.aryGiorniSel[DataArrivo.getDay()]; // + " " + this.aryMesi[parseInt(DalMese)];
		}

		if(
			AlGiornoObj.selectedIndex != -1 &&
			AlMeseObj.selectedIndex != -1 &&
			AlAnnoObj.selectedIndex != -1
		)
		{
			var AlAnno = AlAnnoObj.options[AlAnnoObj.selectedIndex].value;
			var AlMese = AlMeseObj.selectedIndex;
			var AlGiorno = AlGiornoObj.options[AlGiornoObj.selectedIndex].value;
		
			var DataPartenza = new Date(parseInt(AlAnno), parseInt(AlMese), parseInt(AlGiorno));
			
			dvGrnPar.innerText = this.aryGiorniSel[DataPartenza.getDay()]; // + " " + this.aryMesi[parseInt(AlMese)];
		}
	}
}
function CheckDates()
{
	if(this.bolChkConfigurazione == false) { MostraErroreConfigurazione(); return; }
	// Recupero oggetti select
	var DalGiornoObj = GetObj(DataArrivoGiorno);
	var DalMeseObj = GetObj(DataArrivoMese);
	var DalAnnoObj = GetObj(DataArrivoAnno);
	var AlGiornoObj = GetObj(DataPartenzaGiorno);
	var AlMeseObj = GetObj(DataPartenzaMese);
	var AlAnnoObj = GetObj(DataPartenzaAnno);

	var DalAnno = DalAnnoObj.options[DalAnnoObj.selectedIndex].value;
	var DalMese = DalMeseObj.selectedIndex;
	var DalGiorno = DalGiornoObj.options[DalGiornoObj.selectedIndex].value;

	var AlAnno = AlAnnoObj.options[AlAnnoObj.selectedIndex].value;
	var AlMese = AlMeseObj.selectedIndex;
	var AlGiorno = AlGiornoObj.options[AlGiornoObj.selectedIndex].value;

	var DataArrivo = new Date(parseInt(DalAnno), parseInt(DalMese), parseInt(DalGiorno));
	var DataPartenza = new Date(parseInt(AlAnno), parseInt(AlMese), parseInt(AlGiorno));
	
	var MilliSecDiff = DataPartenza.valueOf() - DataArrivo.valueOf();
	// Recuperato da una funzione datediff ricreata in javascript
	var NGiorni = parseInt(MilliSecDiff/1000/60/60/24)
	if(NGiorni < this.intMinStay)
	{
		var NewData = DataArrivo;
		NewData.setDate(NewData.getDate() + this.intMinStay);
		SetDays("1", NewData.getDate(), NewData.getMonth() + 1, NewData.getYear());
	}
	this.StampaStringaGiorno();
}
function ChkDatePrenotazione()
{
	if(this.bolChkConfigurazione == false) { MostraErroreConfigurazione(); return; }
	this.CheckDates();
	return true;
}
var wndCal = null
function ApriCalendario(Tipo)
{
	DalGiornoObj = GetObj(DataArrivoGiorno);
	DalMeseObj = GetObj(DataArrivoMese);
	DalAnnoObj = GetObj(DataArrivoAnno);
	AlGiornoObj = GetObj(DataPartenzaGiorno);
	AlMeseObj = GetObj(DataPartenzaMese);
	AlAnnoObj = GetObj(DataPartenzaAnno);
	
	var url = '/_paradiso/simplebooking';
	url += '/calendar.asp';
	url += '?GUID=' + this.GuidStruttura;
	url += '&LANG=' + this.CodLingua;
	url += '&MESE=' + ((Tipo == '0') ? DalMeseObj[DalMeseObj.selectedIndex].value : AlMeseObj[AlMeseObj.selectedIndex].value);
	url += '&ANNO=' + ((Tipo == '0') ? DalAnnoObj[DalAnnoObj.selectedIndex].value : AlAnnoObj[AlAnnoObj.selectedIndex].value);
	url += '&TIPO=' + Tipo;
	url += '&DAL_GIORNO=' + DalGiornoObj[DalGiornoObj.selectedIndex].value;
	url += '&DAL_MESE=' + DalMeseObj[DalMeseObj.selectedIndex].value;
	url += '&DAL_ANNO=' + DalAnnoObj[DalAnnoObj.selectedIndex].value;
	url += '&AL_GIORNO=' + AlGiornoObj[AlGiornoObj.selectedIndex].value;
	url += '&AL_MESE=' + AlMeseObj[AlMeseObj.selectedIndex].value;
	url += '&AL_ANNO=' + AlAnnoObj[AlAnnoObj.selectedIndex].value;

	if(wndCal != null) { if(!wndCal.closed) { wndCal.close(); } }
	wndCal = window.open(url, 'Calendar', 'scrollbar=yes,resizable=no,menu=no,status=no,width=160,height=161');
	wndCal.focus();
}
function RecuperaDataDaCalendario(Tipo, Anno, Mese, Giorno)
{
	if(this.bolChkConfigurazione == false) { MostraErroreConfigurazione(); return; }
	SetDays(Tipo, Giorno, Mese, Anno);
	/*var GiornoObj;
	var MeseObj;
	var AnnoObj;
	if(Tipo == "1")
	{
		GiornoObj = GetObj(DataPartenzaGiorno);
		MeseObj = GetObj(DataPartenzaMese);
		AnnoObj = GetObj(DataPartenzaAnno);
	}
	else
	{
		GiornoObj = GetObj(DataArrivoGiorno);
		MeseObj = GetObj(DataArrivoMese);
		AnnoObj = GetObj(DataArrivoAnno);
	}
	for(var idxG = 0; idxG < GiornoObj.options.length; idxG++)
	{
		if(GiornoObj.options[idxG].value == Giorno)
		{
			GiornoObj.options[idxG].selected = true;
			break;
		}
	}
	for(var idxM = 0; idxM < MeseObj.options.length; idxM++)
	{
		if(MeseObj.options[idxM].value == Mese)
		{
			MeseObj.options[idxM].selected = true;
			break;
		}
	}
	for(var idxA = 0; idxA < AnnoObj.options.length; idxA++)
	{
		if(AnnoObj.options[idxA].value == Anno)
		{
			AnnoObj.options[idxA].selected = true;
			break;
		}
	}*/
}
