	/*
 	 creator: 	chip Kreis
	 date:		3/19/2006
	 purpose:	functions which call an asp page via http,
				returning information for the calling page
	 change log: 9/21/06 Debra McClarran - return information for the calendar popup to replace calSBT.asp
	*/

	// set global variables
	var g_restool_url = g_ADDRESS + "restools/calSBT.asp";
	//var g_restool_url = "http://localhost/iun_2.0_content/restools/calSBT.asp";

function filldate(m,d,y,caltype) {
	datestr = m + "/" + d + "/" + y;
		
	{	
		if (caltype == "Depart")
		{
		
			document.restool.gsDepartureDate.value = datestr;
			newCalendarClass('changing_depart','visibility_off','Depart')
		
			
		}
		else if (caltype == "Return")
		{
			
			document.restool.gsReturnDate.value = datestr;
			newCalendarClass('changing_return','visibility_off','Return')
		}
	}
}

	
	
	function setDepartDate(dttoday){
		{
			if (document.restool.gsDepartureDate.value == dttoday)
			{
				document.restool.gsDepartureDate.value = padAge((d.getMonth() + 1).toString()) + "/" + padAge(d.getDate().toString()) + "/" +  d.getFullYear().toString().substr(2,2);
			}
			
	
			else if (document.restool.gsDepartureDate.value.length == 0) <!--"mm/dd/yy"-->
			{
				document.restool.gsDepartureDate.value = padAge((d.getMonth() + 1).toString()) + "/" + padAge(d.getDate().toString()) + "/" +  d.getFullYear().toString().substr(2,2);
			}
		}
	}
	
	
		
	function newCalendarClass (id, newClass, calType) {
		var elemToChange = document.getElementById(id);
		elemToChange.className = newClass;

		if (calType == "Depart")
			//Turn the time dropdowns back on in the restool, otherwise they show through the calendar
			{
			//document.getElementById("divDepartTime").style.visibility='visible';
			}
				//Turn the time dropdowns back on in the restool, otherwise they show through the calendar
				if(document.getElementById("divReturnTime") != null){
					document.getElementById("divReturnTime").style.visibility='visible';
				}
				if(document.getElementById("divDepartTime") != null){
					document.getElementById("divDepartTime").style.visibility='visible';
				}
		
				if(document.getElementById("gsDestination") != null){
					document.getElementById("gsDestination").style.visibility='visible';
				}

				if(document.getElementById("gsOrigin") != null){
					document.getElementById("gsOrigin").style.visibility='visible';
				}				
				if(document.getElementById("gsVacationType") != null){
					document.getElementById("gsVacationType").style.visibility='visible';
				}
				//Show only the return if the Return calendar is selected
				if(document.getElementById("divReturnTime") != null){
					document.getElementById("divReturnTime").style.visibility='visible';
				}
                if(document.getElementById("gsNumOfAdults") != null){
		            document.getElementById("gsNumOfAdults").style.visibility='visible';
	            }		
	            if(document.getElementById("gsNumOfChildren") != null){
		            document.getElementById("gsNumOfChildren").style.visibility='visible';
	            }
	}
	
	function getDateValue(inDate, inPart){
		var sSeparator = findSeperator(inDate);
		var arrayDate = inDate.split(sSeparator);
	
		if (inPart == "YEAR")
			//return parseInt(arrayDate[2],10);
			return ("20" + (arrayDate[2]));
		if (inPart == "MONTH")
			return parseInt(arrayDate[0],10);
		if (inPart == "DAY")
			return parseInt(arrayDate[1],10);
	}
	
	function changeCalendarClass (id, newClass, calType) 
	{
		var elemToChange = document.getElementById(id);
		var currentMonth = getDateValue(document.restool.gsDepartureDate.value, "MONTH").toString()
		var currentYear = getDateValue(document.restool.gsDepartureDate.value, "YEAR").toString()
		if (calType == "Depart"){
			//Hide the time dropdowns in the restool, otherwise they show through the calendar
			if(document.getElementById("divDepartTime") != null){			
				document.getElementById("divDepartTime").style.visibility='hidden';
			}
		}
		//Hide the time dropdowns in the restool, otherwise they show through the calendar
//		if(document.getElementById("divReturnTime") != null){			
//			document.getElementById("divReturnTime").style.visibility='hidden';
//		}
//
	
	if(document.getElementById("gsDestination") != null){
			document.getElementById("gsDestination").style.visibility='hidden';
	}

	if(document.getElementById("gsOrigin") != null){
			document.getElementById("gsOrigin").style.visibility='hidden';
	}
	    
	if(document.getElementById("gsVacationType") != null){
		document.getElementById("gsVacationType").style.visibility='hidden';
	}
	
	if(document.getElementById("gsNumOfAdults") != null){
		document.getElementById("gsNumOfAdults").style.visibility='hidden';
	}
		
	if(document.getElementById("gsNumOfChildren") != null){
		document.getElementById("gsNumOfChildren").style.visibility='hidden';
	}
		
//		if (logoadjust == "" ){
//			document.getElementById("gsDestination").style.visibility='visible';
//			document.getElementById("gsOrigin").style.visibility='visible';
//			document.getElementById("gsVacationType").style.visibility='visible';
//		}
						
		elemToChange.className = newClass;
		navigateCalendar(calType,currentMonth,currentYear);
	}

	function createXmlHttpRequest()
	{
		var p_xmlHttp;
		if ( window.ActiveXObject ) 
		{
			p_xmlHttp = new ActiveXObject( "Microsoft.XMLHTTP" );
		}	
		else if ( window.XMLHttpRequest ) 
		{
			p_xmlHttp = new XMLHttpRequest();
		}
		return p_xmlHttp;
	}
	
	// gets destinations and their corresponding types in xml format
	function navigateCalendar(calType, startMonth, startYear)
	{
		var thisVals = "CalType=" + calType + "&startMonth=" + startMonth + "&startYear=" + startYear + "";
		doXmlHttpPost( thisVals, calType);
	
	}
	
	
	// ------------------------------------------------------------------------------------------------------
	function doXmlHttpPost( vals, calType)
	{
		var thisPostURL = g_restool_url;
		
		if ( thisPostURL == "" )
		{
			thisPostURL = g_restool_url;
		}
		
		var thisXmlHttpObject = new createXmlHttpRequest();
		
		thisXmlHttpObject.open( "POST", thisPostURL, true );
		
		thisXmlHttpObject.onreadystatechange = function()
		{
			
			handleXmlHttpPostStateChange( thisXmlHttpObject, calType );
		}
		
		thisXmlHttpObject.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded;" );
		thisXmlHttpObject.send( vals );
		
	}


	// ------------------------------------------------------------------------------------------------------
	function handleXmlHttpPostStateChange( theXmlHttpObject, calendarType )
	{
		if ( theXmlHttpObject.readyState == 4 ) 
		{
			if ( theXmlHttpObject.status == 200 ) 
			{
				if ( theXmlHttpObject.responseText != "" )
				{
					{
					if ( calendarType == "Depart" )
					{
						// populate div with returned html for depart calendar
						document.getElementById("departCalendar").innerHTML = theXmlHttpObject.responseText;
						
					}
					else if ( calendarType == "Return" )
					{	
						// populate div with returned html for return calendar
						document.getElementById("returnCalendar").innerHTML = theXmlHttpObject.responseText;
						
					}
					}
				}			
			} 	
		}
	}
//Used on nick/index.asp to open disclaimer and hide restool fields	
		function openFeedbackForm (id, newClass, pageName){
		var elemToChange = document.getElementById(id);
		if(document.getElementById("numOfNights") != null){
            document.getElementById("numOfNights").style.visibility='hidden';
            }
        if(document.getElementById("Select1") != null){
            document.getElementById("Select1").style.visibility='hidden';
            }
        if(document.getElementById("Select2") != null){
            document.getElementById("Select2").style.visibility='hidden';
            }
        if(document.getElementById("Select3") != null){
            document.getElementById("Select3").style.visibility='hidden';
            }
        if(document.getElementById("Select4") != null){
            document.getElementById("Select4").style.visibility='hidden';
            }
        if(document.getElementById("Select5") != null){
            document.getElementById("Select5").style.visibility='hidden';
            }            
        elemToChange.className = newClass;
		doXmlHttpPost5(pageName);
		 


	}
//Used on nick/index.asp to close disclaimer and show restool fields	
	function closeFeedbackForm (id, newClass){
		var elemToChange = document.getElementById(id);
		if(document.getElementById("numOfNights") != null){
            document.getElementById("numOfNights").style.visibility='visible';
            }
        if(document.getElementById("Select1") != null){
            document.getElementById("Select1").style.visibility='visible';
            }
        if(document.getElementById("Select2") != null){
            document.getElementById("Select2").style.visibility='visible';
            }
        if(document.getElementById("Select3") != null){
            document.getElementById("Select3").style.visibility='visible';
            }
        if(document.getElementById("Select4") != null){
            document.getElementById("Select4").style.visibility='visible';
            }
        if(document.getElementById("Select5") != null){
            document.getElementById("Select5").style.visibility='visible';
            }
        elemToChange.className = newClass;
	}