dojo.require("dojo.widget.DatePicker");
dojo.require("dojo.widget.FloatingPane");

var panetoggler = 0;

function toggleLayer(whichLayer)
{
	if (document.getElementById)
	{
		// this is the way the standards work
		var style2 = document.getElementById(whichLayer).style;
		style2.display = style2.display? "":"none";
		style2.backgroundColor = "#c2d3e7";
	}
	else if (document.all)
	{
		// this is the way old msie versions work
		var style2 = document.all[whichLayer].style;
		style2.display = style2.display? "":"none";
	}
	else if (document.layers)
	{
		// this is the way nn4 works
		var style2 = document.layers[whichLayer].style;
		style2.display = style2.display? "":"none";
	}
}

function togglePane(obj){
	var floatingpane = dojo.widget.byId(obj);
	
	if (panetoggler == 0){
		floatingpane.show();
		panetoggler = 1;
	}
	else{
		floatingpane.hide();
		panetoggler = 0;
	}
	
}

var availabilitytoggler = 0;
var availabilityTop = 0;
var availabilityLeft = 0;
var availabilityBoat = "";

function showAvailabilityCalendar(id, type, boat, time){
	var floatingpane = dojo.widget.byId('floatingPaneAvailability');	
	floatingpane.domNode.style.left = availabilityLeft-8+"px"; 
	
	if (navigator.appName == "Microsoft Internet Explorer"){
		floatingpane.domNode.style.top = availabilityTop+30+"px"; 
	}
	else{
		floatingpane.domNode.style.top = availabilityTop+15+"px"; 
	}	
	
	if (availabilityBoat == ""){
		setDefaultDate('availability-date');
		overrideFloatingPane('floatingPaneAvailability');
	}
	
	if (availabilityBoat == id){
		if (availabilitytoggler == 0){
			floatingpane.show();
			availabilitytoggler = 1;
		}
		else{
			floatingpane.hide();
			availabilitytoggler = 0;
		}	
	}
	else{
		floatingpane.show();
		availabilitytoggler = 1;
		availabilityBoat = id;
		
		document.getElementById('availability-type').value = type;
		document.getElementById('availability-boat').value = boat;
		document.getElementById('availability-time').value = time;
	}	
}

function updateCalendarPosition(obj)
{
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	availabilityLeft = curleft;
	availabilityTop = curtop;
}

function overrideFloatingPane(obj){
	var floatingDate = dojo.widget.byId(obj);
	floatingDate.titleBar.style.display='none';
	floatingDate.titleBarDisplay = 'none';
}

function setDefaultDate(obj){
	var datefield  = dojo.widget.byId(obj);

	datefield.inputNode.value = "MM/DD/YY";	
	datefield.inputNode.readOnly = true;
	dojo.event.connect(datefield.inputNode, 'onclick', datefield, datefield.onIconClick);
}

function compareDateTime(obj){
	var datefield  = dojo.widget.byId(obj + '-date');
	var month = (datefield.getDate().getMonth()+1) + "";
	var day = datefield.getDate().getDate() + "";	
	//date
	var cbcdate = datefield.getDate().getFullYear() + "-" + ((month.length == 1)?"0"+month:month) + "-" + ((day.length == 1)?"0"+day:day);

	var timefield = document.getElementById(obj + '-time');
	//time of day
	var cbctime = timefield.options[timefield.selectedIndex].value;
	
	var cbcboat = "no_preference";
	var boat = document.getElementById(obj + '-boat');
	if (boat != null){
		cbcboat = boat.value;
	}	
	
	var cbctype = "no_preference";
	var type = document.getElementById(obj + '-type');
	if (type != null){
		cbctype = type.value;
	}	
	document.getElementById('cruiseTime').value = cbctime;
	document.getElementById('cruiseDate').value = cbcdate;
	document.compareForm.action = "http://www.pyireservations.com/reservations/results_page.aspx";
	document.compareForm.submit();
}

