var activeElement;
function HCal()
{
	if (document.getElementById('calendar'))
	{
		document.getElementById('calendar').style.visibility="hidden";
	}
}

if(window.navigator.appName.toLowerCase().indexOf("netscape") > -1)
{
	window.captureEvents(Event.CLICK);
	window.onmousemove = NS_MouseEventHandler;

	window.event = new Object;
}

function NS_MouseEventHandler(theMouseEvent)
{
	window.event.clientX = theMouseEvent.pageX;
	window.event.clientY = theMouseEvent.pageY;

	//back to main event handler for the desired purpose
	routeEvent(theMouseEvent)
}


document.onkeydown = StartSearch; 
function StartSearch(keyEvent)
{
    var keyPressedCode = (keyEvent != null ? keyEvent.keyCode : event.keyCode);
    if (keyPressedCode == 13)
    {
        SearchNow();
    }
}

function setNewDate(theDateStr)
{
	document.getElementById(activeElement).value		= theDateStr;
	document.getElementById("calendar").style.display	= "none";
	try
	{
		eval(evalOnDateChange);
	}catch(e){}
}
function showCalendar(obj)
{
    var ctrl = document.getElementById(obj);
   SC(ctrl);
}

function hideCalendar()
{
	document.getElementById("calendar").style.display = "none";
	document.getElementById(activeElement).focus();
	
}


var air = document.getElementById("rbAir");
var car = document.getElementById("rbCar");
var hotel = document.getElementById("rbHotel");
var activity = document.getElementById("rbAct");
var vacation = document.getElementById("rbVac");
var cruise = document.getElementById("rbCru");
var btn = document.getElementById("ibSubmit");
var tabAir = document.getElementById("tabAir");
var tabCar = document.getElementById("tabCar");
var tabHotel = document.getElementById("tabHotel");
var difReturn = document.getElementById("cbDifReturn");
var btnFlight = document.getElementById("btnFlight");
var btnHotel = document.getElementById("btnHotel");
var btnCar = document.getElementById("btnCar");
var btnActivity = document.getElementById("btnActivity");
var btnVacation = document.getElementById("btnVacation");
var btnCruise = document.getElementById("btnCruise");

function focusToReturn()
{
	document.getElementById("tbTo").focus();
}

function ToggleTabs()
{   
    manageCompTabs();
}
function tabOver(tab)
{
	if (document.getElementById(tab.id).className == 'searchTabSel')
	{}
	else
	{
		document.getElementById(tab.id).className = 'searchTabSel1'
	}
}
function tabOut(tab)
{
	if (document.getElementById(tab.id).className == 'searchTabSel')
	{}
	else
	{
		document.getElementById(tab.id).className = 'searchTab';
	}
}
function ToggleTripType()
{
	if (document.getElementById("rbOW").checked)
	{
		document.getElementById("tdtxt").style.visibility = "hidden";
		if(document.getElementById("tdtxt"))
		{
			document.getElementById("tdtext").style.visibility = "hidden";
		}
	}
	else 
	{
		document.getElementById("tdtxt").style.visibility = "visible";
		if(document.getElementById("tdtxt"))
		{
			document.getElementById("tdtext").style.visibility = "visible";
		}
	}
}

function getAirportCode(theTagID)
{
	var strUrl = "/DesktopModules/Fareportal/Modules/Flight/AirportCode.aspx?frm=Form&textbox=" + theTagID;
	window.open(strUrl,"AirportPicker","toolbar=no,status=no,resizable=no,scrollbars=yes,width=650,height=650,top=100,left=100");
}


window.onload = function window_loaded()
{
	InitPage();
}

function InitPage()
{
	manageCompTabs();
	document.onclick = HCal;
	//set default Dates
	var fromDate = new Date();
	var toDateDate = new Date();
	fromDate.setDate(fromDate.getDate()+14);
	toDateDate.setDate(toDateDate.getDate()+21);
	SetDateObj("tbDTime",fromDate);
	SetDateObj("tbRTime",toDateDate);
	SetDateObj("tbChIn",fromDate);
	SetDateObj("tbChOut",toDateDate);
	SetDateObj("tbPick",fromDate);
	SetDateObj("tbDrop",toDateDate);
	
	calObj = document.getElementById('calendar');
	calObj.style.display = 'none';
	calObj.style.zIndex = '100';
	calObj.style.width = '148px';
	calObj.style.position = 'absolute';
	calObj.style.height = '177px';

}

function manageTabs(tab)
{
	if (tab == 'air')
	{
		air.checked = true;
		manageCompTabs();
	}
	if (tab == 'hotel')
	{
		hotel.checked = true;	
		manageCompTabs();
	}
	if (tab == 'car')
	{
		car.checked = true;	
		manageCompTabs();
	}
	if (tab == 'vacation')
	{
		vacation.checked = true;	
		manageCompTabs();
	}
	if (tab == 'activity')
	{
		activity.checked = true;	
		manageCompTabs();
	}
	if (tab == 'cruise')
	{
		cruise.checked = true;	
		manageCompTabs();
	}
	
}

function manageCompTabs()
{
	if (air.checked)
	{
		tabAir.style.display = "block";
		tabCar.style.display = "none";
		tabHotel.style.display = "none";
		btnFlight.className = 'searchTabSel';
		btnHotel.className = 'searchTab';
		btnCar.className = 'searchTab';
		btnActivity.className = 'searchTab';
		btnVacation.className = 'searchTab';
		btnCruise.className = 'searchTab';
		document.getElementById('advlnk1').setAttribute('href',"/Default.aspx?tabid=1916");
	}

	if (car.checked)
	{
		tabAir.style.display = "none";
		tabCar.style.display = "block";
		tabHotel.style.display = "none";
		btnFlight.className = 'searchTab';
		btnHotel.className = 'searchTab';
		btnCar.className = 'searchTabSel';
		btnActivity.className = 'searchTab';
		btnVacation.className = 'searchTab';
		btnCruise.className = 'searchTab';
		document.getElementById('advlnk1').setAttribute('href',"/Default.aspx?tabid=1933");
	}

	if (hotel.checked)
	{
		tabAir.style.display = "none";
		tabCar.style.display = "none";
		tabHotel.style.display = "block";
		btnFlight.className = 'searchTab';
		btnHotel.className = 'searchTabSel';
		btnCar.className = 'searchTab';
		btnActivity.className = 'searchTab';
		btnVacation.className = 'searchTab';
		btnCruise.className = 'searchTab';
		document.getElementById('advlnk1').setAttribute('href',"/Default.aspx?tabid=1927");
	}
	
	if (activity.checked)
	{
		window.location = '/Default.aspx?tabid=3602';
		btnFlight.className = 'searchTab';
		btnHotel.className = 'searchTab';
		btnCar.className = 'searchTab';
		btnActivity.className = 'searchTabSel';
		btnVacation.className = 'searchTab';
		btnCruise.className = 'searchTab';
	}
	
	if (vacation.checked)
	{
		window.location = 'http://www.futurevacations.com/onetravel/';
		btnFlight.className = 'searchTab';
		btnHotel.className = 'searchTab';
		btnCar.className = 'searchTab';
		btnActivity.className = 'searchTab';
		btnVacation.className = 'searchTabSel';
		btnCruise.className = 'searchTab';
	}
	
	if (cruise.checked)
	{
		window.location = '/Default.aspx?tabid=3619';
		btnFlight.className = 'searchTab';
		btnHotel.className = 'searchTab';
		btnCar.className = 'searchTab';
		btnActivity.className = 'searchTab';
		btnVacation.className = 'searchTab';
		btnCruise.className = 'searchTabSel';
	}
}

function GetTag(tagId)
{
	return document.getElementById(tagId);
}

function SearchNow()
{
	var searchStr = "/Default.aspx?tabid=3582&";
	if (GetTag("rbAir").checked)
	{
		searchStr += "from=" + GetTag("tbFrom").value + "&fromDt=" + GetTag("tbDTime").value
			+ "&fromTm=" + GetTag("ddOBTime").value + "&to=" + GetTag("tbTo").value
			+ "&toDt=" + GetTag("tbRTime").value + "&toTm=" + GetTag("ddInTime").value
			+ "&rt=" + GetTag("rbRT").checked + "&ad=" + GetTag("ddAdult").value
			+ "&ch=" + GetTag("ddChild").value + "&class=" + GetTag("ddClass").value
			+ "&se=" + GetTag("ddSenior").value + "&infl=" + GetTag("ddLInfant").value
			+ "&infs=" + GetTag("ddSInfant").value;
	}
	else if (GetTag("rbHotel").checked)
	{
		searchStr += "to=" + GetTag("tbCity").value + "&fromDt=" + GetTag("tbChIn").value
			+ "&toDt=" + GetTag("tbChOut").value + "&ad=" + GetTag("ddGuest").value
			+ "&ht=Default";
	}
	else
	{
		searchStr += "to=" + GetTag("tbAirp").value + "&fromDt=" + GetTag("tbPick").value
			+ "&fromTm=" + GetTag("tbTPick").value + "&toDt=" + GetTag("tbDrop").value 
			+ "&toTm=" + GetTag("tbTDrop").value + "&cr=Default";
	}
	//alert(searchStr);
	location=searchStr;

	//window.open(searchStr,"fareportal");
}

//--------------by ankit**

function DE(el){
    return document.getElementById(el);
}

function GetControlObjectDepart(obj,objParent)
{
    var ctrl = document.getElementById(obj);
    var ctrlParent = document.getElementById(objParent);
    if ((ctrlParent.value!=null || ctrlParent.value.length>0))
    {
        if ((ctrl.value==null || ctrl.value.length==0))
        {
            ctrl.value = ctrlParent.value
        }
    }
    SC(ctrl);
}

function SC(el)
{
	if (DE('calendar') == null)
	{
	    return;
	}
	var id = el.id;
	var n = el.id;
	el.select();
	var temp=id;
	ShowCalendar(el,el,DE(temp),CalS,CalE);
	
}


//cal.js

function GetDowStart() {return 0;}function GetDateFmt() {return "mmddyy";}function GetDateSep() {return "/";}
function ShowCalendar(eP,eD,eDP,dmin,dmax)
{
	SCal(eP,eD,eDP,dmin,dmax);
}
function ShowCalSimp(fm,eD,eDP,dmin,dmax){
 if(!dmin)dmin='3/1/2005';if(!dmax)dmax='1/25/2006';
 if(fm){SetNextFocus(objNext(fm,eD));SetPrevFocus(objPrev(fm,eD));}
 SCal(eD,eD,eDP,dmin,dmax);
}

var zz, zv, d, fTSR;
d = new Date();
fTSR=0;
zv = d.getTime();
zz = "&zz="+zv;

var gBF=false;
function GoTo(u){window.top.location = u + zz;}
function Go(u){window.top.location = u;} 

function BF(){gBF=true;}

function Foci(o){if(!gBF && IsVis(o)){o.focus();}}

function IsVis(o)
{
	if(!o || o.type=="hidden")
	return false;
	
	while(o && o.style && o.style.display!='none')
	{
	o = o.parentNode;	
	}
	return !o || !o.style;
}


function TEK(a,evt){	
	var keycode;
	if (window.event){ keycode = window.event.keyCode; evt = window.event;}
	else if(evt) {keycode = evt.which;}
	else {return true;}
	if(13==keycode){evt.cancelBubble = true; evt.returnValue = false; eval(a);}
	}

function getObj(objID)
	{
	if (document.getElementById) {return document.getElementById(objID);}
	else if (document.all) {return document.all[objID];}
	else if (document.layers) {return document.layers[objID];}
	}
	
function objNext(f,d)
{
	var fFnd=false,el=f.elements,i=0;
	for(;i < el.length;i++)
	{
	if('hidden'!=el[i].type && false==el[i].disabled && IsVis(el[i]) && fFnd)return el[i];
	if(d.id==el[i].id)fFnd=true;
	}
	return null;
}
function objPrev(f,d)
{
	var fFnd=false,el=f.elements,i=el.length - 1;
	for(;i >= 0;i--)
	{
	if('hidden'!=el[i].type && false==el[i].disabled && IsVis(el[i]) && fFnd)return el[i];
	if(d.id==el[i].id)fFnd=true;
	}
	return null;
}

function DoNothing() {return false;}




//--------scripts/calx.js

var FDate = 'mm/dd/yy';
var TDate = 'mm/dd/yy';
var MDate = '';
var CalS = '';
var CalE = '';

var FTime = '362';
var TTime = '362';


var cF=null;var cW=null;var g_tid=0;var g_cP,g_eD,g_eDP,g_dmin,g_dmax;
var nextFocus;var g_fNoCal=false;

function getEventObj(e){if(!e)e=window.event;return e;}

function stopBubble(e){e=getEventObj(e);e.cancelBubble=true;if(e.stopPropagation)e.stopPropagation();}

function CB(){stopBubble(event);}

function SCal(cP,eD,eDP,dmin,dmax)
{
 clearTimeout(g_tid);

 if(g_fNoCal){
    g_fNoCal=false;return;
 }
 if(g_calShown && eD==g_eD)
 {
//    return;
 }
 g_calShown = true;
 g_calCB = null;
 g_cP=cP;
 g_eD=eD;
 g_eDP=eDP;
 g_dmin=dmin;
 g_dmax=dmax;
 WaitCal();
}

function CancelCal(){clearTimeout(g_tid);if(!cF)cF=getObj('calendar');cF.style.visibility="hidden";g_calShown=false;}
function WaitCal()
{ 
 if(!cW)
 	cW=frames['calendar'];
 
 if(null==cW || null==cW.g_fCL || false==cW.g_fCL)
 {
	g_tid=setTimeout("WaitCal()", 200);
 }
 else
 {
 	if(!cF)cF=getObj('calendar');
		cF.style.visibility="hidden";
	setTimeout("DoCal()",1);
 }
}

function DoCal(){
	PosCal(g_cP);
	if(!cW)cW=frames['calendar'];
		cW.DoCal(g_eD,g_eDP,g_dmin,g_dmax);
}

function getScrollTop()
{
	if(document.documentElement.scrollTop) return document.documentElement.scrollTop;
	if(document.body.scrollTop) return document.body.scrollTop;
	if(window.pageYOffset) return window.pageYOffset;
	return 0;
}

function getWinHeight()
{
	if(window.innerHeight) return window.innerHeight;
	if(document.documentElement.clientHeight) return document.documentElement.clientHeight;
	if(document.body.clientHeight) return document.body.clientHeight;
	return 0;
}

function PosCal(cP)
{
	var dB=document.body;var eL=0;var eT=0;
 if(!cF)cF=getObj('calendar');
	for(var p=cP;p&&p.tagName!='BODY';p=p.offsetParent){eL+=p.offsetLeft;eT+=p.offsetTop;}
	var eH=cP.offsetHeight;var dH=parseInt(cF.style.height);var sT=getScrollTop();
	if(eT-dH>=sT&&eT+eH+dH>getWinHeight()+sT)eT-=dH;else eT+=eH;
	cF.style.left=eL+'px';cF.style.top=eT+'px';
}

function SetNextFocus(e){nextFocus=e;if(nextFocus)nextFocus.onfocus=CancelCal;}
function SetPrevFocus(e){if(e)e.onfocus=CancelCal;}

function FGoNextFocus(){if(nextFocus){nextFocus.focus();return true;}return false;}

function CalSetFocus(e){if(e){g_fNoCal=true;e.focus();setTimeout("EndCalFocus()", 200);}}
function EndCalFocus(){g_fNoCal=false;}

function CalDateSet(eInp,d,m,y,giveFocus)
{
	var ds=GetDateSep();
	var fmt=GetDateFmt();

	if(fmt=="mmddyy")eInp.value=m+ds+d+ds+y;
	else if(fmt=="ddmmyy")eInp.value=d+ds+m+ds+y;
	else eInp.value=y+ds+m+ds+d;
	if(!giveFocus)
	CalSetFocus(eInp);
}

var g_calShown = false;
function SetCalShown(fcshown){g_calShown=fcshown;}

var g_calCB;
function CalendarCallback(){if(g_calCB)g_calCB();}
function SetCalendarCallback(cb){g_calCB=cb;}


function GetInputDate(t)
{
	if(!t.length) return null;
	t=t.replace(/\s+/g,"");
	if(t.match(/[^-|\d|\.|\/]/)) return null;
	var rgt=t.split(/-|\.|\//);
	for(var i=0;i<rgt.length;i++) rgt[i]=parseInt(rgt[i],10);
	if(!rgt[1]) return null;
	var m,d,y;
	var fmt=GetDateFmt();
	if(fmt=="yymmdd")
	{
	if(!rgt[2]) return null;
	m=rgt[1];d=rgt[2];y=rgt[0];
	}
	else
	{
	if(fmt=="mmddyy"){m=rgt[0];d=rgt[1];}
	else{m=rgt[1];d=rgt[0];}//fmt=="ddmmyy"
	if(rgt[2])y=rgt[2];
	else y=DefYr(m-1,d);
	}
	m-=1;if(y<100)y+=2000;
	if(y<1601||y>4500||m<0||m>11||d<1||d>GetMonthCount(m,y))return null;
	return new Date(y,m,d);
}

function _isInteger(val) {
	var digits="1234567890";
	for (var i=0; i < val.length; i++) {
		if (digits.indexOf(val.charAt(i))==-1) { return false; }
		}
	return true;
	}
function _getInt(str,i,minlength,maxlength) {
	for (var x=maxlength; x>=minlength; x--) {
		var token=str.substring(i,i+x);
		if (token.length < minlength) { return null; }
		if (_isInteger(token)) { return token; }
		}
	return null;
	}
	
	
var rM=new Array(12);rM[0]=rM[2]=rM[4]=rM[6]=rM[7]=rM[9]=rM[11]=31;rM[3]=rM[5]=rM[8]=rM[10]=30;rM[1]=28;
function GetMonthCount(m,y){var c=rM[m];if((1==m)&&IsLY(y))c++;return c;}
function IsLY(y){if(0==y%4&&((y%100!=0)||(y%400==0)))return true;else return false;}
function DefYr(m,d){var dt=new Date();var yC=(dt.getYear()<1000)?1900+dt.getYear():dt.getYear();if(m<dt.getMonth()||(m==dt.getMonth()&&d<dt.getDate()))yC++;return yC;}
