var gMonths=12;var gMinDay,gMaxDay;var gToday,gM,gY,gMin,gMax,gDate,gF,gX,gMonth,gDay,gDir,gDual;var gRM,gRD,gDM,gDD,xmlHttp,gCity,gCi,gCm,gCl;var Months=new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec','Jan','Feb');var weekDays=new Array("Sun","Mon","Tue","Wed","Thu","Fri","Sat");var cTxt="Type City or 3 Letter Airport Code.";var cMode=0;var Msg;var srch="/widgetsearch.php";var icon1="<img src='/images/1.gif' width='16' height='16'/>";var icon2="<img src='/images/0.gif' width='16' height='16'/>";var Msgs=new Array("No Results:Check Cities and Dates","Enter 3 or More Letters For City Names","Both Cities Can't be the Same","Pick Dates After Today(mm/dd/yyyy)","Date Format Not Recognized. Use mm/dd/yyyy","Pick Dates within 12 Months","Type numerical date format mm/dd/yyyy","Type city, country");gDate=new Date();gToday=gDate.getDate();gM=gDate.getMonth();gY=gDate.getFullYear();gDM=0;gDD=0;gRM=-1;gRD=0;document.onmousedown=mouseDown;function selectDate(field,dir,dual){var trg,d,m,v;if(cMode==2)cMode=1;document.onkeydown=keyDown3;Msg=document.getElementById('md');Msg.innerHTML='';gF=field;v=validDate(field.value);if(field.value=='mm/dd/yyyy')field.value='';if(dir){gDir=true;gMin=gDM;gMax=gMonths;if(v>-1){m=Math.floor(v/100);d=v%100;if(m>=gMin&&m<=gMax){gRM=m;if(m==gMin){if(d>=gRD)gRD=d;}else gRD=d;}}gMonth=gRM;if(gMonth==-1)gMonth=0;gDay=gRD;}else{gDir=false;gMin=0;gMax=gRM;if(gMax==-1)gMax=gMonths;if(v>-1){m=Math.floor(v/100);d=v%100;if(m>=gMin&&m<=gMax){gDM=m;if(m==gMin){if(d>=gToday)gDD=d;else gDD=gToday;}else gDD=d;}}gMonth=gDM;gDay=gDD;}trg=document.getElementById('dp');if(trg.style.display=='none'){if(dual){trg.className='dual';gDual=true;}else{trg.className='';gDual=false;}d=findPos(field);trg.style.left=d[0]+"px";trg.style.top=(d[1]+field.offsetHeight+5)+"px";trg.style.display='block';showMonth(gMonth);}}function showMonth(month){var s,M,Y;if(month!=month*1)return '';if(month<gMin)month=gMin;if(month>gMax)month=gMax;M=month+gM;Y=gY+Math.floor(M/12);M=M%12;gX=month;if(gDual){s="<fieldset><a href='javascript:;' onclick='showMonth("+(month-2)+")'><</a><span>"+Months[M]+" "+Y+"</span>";if(month<gMax){M++;if(M>11){M=0;Y++;}s+="<span class='fx'>&nbsp;</span><span>"+Months[M]+" "+Y+"</span>";s+="<a href='javascript:;' onclick='showMonth("+(month+2)+")'>></a><a href='javascript:;' onclick='hidePicker();' class='closer'>X</a></fieldset>";s+="<div class='h we'>S</div><div class='h'>M</div><div class='h'>T</div><div class='h'>W</div><div class='h'>T</div><div class='h'>F</div><div class='h we'>S</div>";s+="<div class='h we fx2'>S</div><div class='h'>M</div><div class='h'>T</div><div class='h'>W</div><div class='h'>T</div><div class='h'>F</div><div class='h we'>S</div>";s+="<div class='panelA'>"+showDays(month)+"</div>";s+="<div class='panelB'>"+showDays(month+1)+"</div>";}else{s+="<span class='fx'>&nbsp;</span><span>&nbsp;</span><a href='javascript:;' onclick='showMonth("+(month+2)+")'>></a><a href='javascript:;' onclick='hidePicker();' class='closer'>X</a></fieldset>";s+="<div class='h we'>S</div><div class='h'>M</div><div class='h'>T</div><div class='h'>W</div><div class='h'>T</div><div class='h'>F</div><div class='h we'>S</div>";s+="<div class='panelA'>"+showDays(month)+"</div>";}}else{s="<fieldset><a href='javascript:;' onclick='showMonth("+(month-1)+")'><</a><span>"+Months[M]+" "+Y+"</span><a href='javascript:;' onclick='showMonth("+(month+1)+")'>></a><a href='javascript:;' onclick='hidePicker();' class='closer'>X</a></fieldset>";s+="<div class='h we'>S</div><div class='h'>M</div><div class='h'>T</div><div class='h'>W</div><div class='h'>T</div><div class='h'>F</div><div class='h we'>S</div>";s+="<div class='panelA'>"+showDays(month)+"</div>";}document.getElementById('dp').innerHTML=s;}function getDays(m){var d,m;d=30;if(m==-1||m==0||m==2||m==4||m==6||m==7||m==9||m==11)d=31;if(m==1){gDate.setMonth(2,0);d=gDate.getDate();}return d;}function showDays(month){var c,d,i,j,s,w,m,y;m=month+gM;y=gY+Math.floor(m/12);m=m%12;gDate=new Date();gDate.setFullYear(y,m,1);w=gDate.getDay();w--;if(w<0)w=6;d=getDays(m-1);s='';c='we old';j=0;if(w<6)for(i=w;i>=0;i--){s+="<div class='"+c+"'>"+(d-i)+"</div>";if(i==w)c='old';j++;}else w=-1;d=getDays(m);for(i=1;i<=d;i++){c='d';e=" onclick='X(this);'";if(month==gMin){if(i<gToday&&month==0){c='x';e='';}if(i<gDD&&gDir){c='x';e='';}}if(month==gMax){if(i>gRD&&!gDir){c='x';e='';}}if(month==gMonth&&i==gDay)c='now';if(j==6||j==0)c+=" we";s+="<a href='javascript:;' class='"+c+"'"+e+">"+i+"</a>";j++;if(j==7)j=0;}w=41-d-w;for(i=1;i<=w;i++){c='old';if(j==6||j==0)c="we old";s+="<div class='"+c+"'>"+i+"</div>";j++;if(j==7)j=0;}return s;}function validDate(arg){var A,c,i,now,N,Y;if(arg=='mm/dd/yy')return -1;c=' ';i=arg.indexOf(c);if(i==-1){c='/';i=arg.indexOf(c);}if(i==-1){c='-';i=arg.indexOf(c);}if(i==-1)return -1;A=arg.split(c);if(A.length!=3)return -1;if(A[0]<1||A[0]>12||A[0]*1!=A[0])return -1;if(A[1]<1||A[1]>31||A[1]*1!=A[1])return -1;if(A[2]<8||A[2]*1!=A[2])return -1;if(A[2]<2000)A[2]+=2000;if(A[2]<gY)return -2;A[0]=A[0]-1;gDate=new Date();i=(A[2]-gDate.getFullYear())*12+(A[0]-gDate.getMonth());if(i<0)i=-1;i=i*100+A[1]*1;I=A[2]*10000+(A[0]+1)*100+A[1]*1;now=new Date();N=now.getFullYear()*10000+(now.getMonth()+1)*100+now.getDate();Y=(now.getFullYear()+1)*10000+(now.getMonth()+1)*100+now.getDate();if(I<N)i=-2;if(I>Y)i=-3;return i;}function verifyDate(arg){var msg='';if(arg.value.length==0){arg.value='mm/dd/yyyy';return;}switch(validDate(arg.value)){case -1:msg=Msgs[4];break;case -2:msg=Msgs[3];break;case -3:msg=Msgs[5];break;}if(msg==''){var A=arg.value.split("/");var m=A[0]*1;var D=A[1]*1;var y=A[2]*1;var s="x"+gF.name;var d=new Date();d.setFullYear(y,m-1,D);var S=weekDays[d.getDay()]+", "+Months[m-1]+" "+D+", "+y;document.getElementById(s).innerHTML=S;if(arg.name=='date1'){A=document.book.date2.value.split("/");m=A[0]*1;D=A[1]*1;y=A[2]*1;var e=new Date();e.setFullYear(y,m-1,D);}else{var e=new Date();e.setFullYear(y,m-1,D);A=document.book.date1.value.split("/");m=A[0]*1;D=A[1]*1;y=A[2]*1;var d=new Date();d.setFullYear(y,m-1,D);}if(d>e)msg="Return Date must be after Departure Date";else{m=e.getTime()-d.getTime();if(m>=31536000000)msg="Pick dates within 12 months(mm/dd/yyyy)";}}if(msg)msg=icon2+' <span>'+msg+'</span>';document.getElementById('md').innerHTML=msg;}function keyDown3(e){var evt=e||window.event;if((evt.keyCode>=48&&evt.keyCode<=57)||evt.keyCode==191)Msg.innerHTML='';else setTimeout(fix3,1);}function X(arg){var s,y,m;document.getElementById('md').innerHTML='';if(arg.parentNode.className=='panelB')gMonth=gX+1;else gMonth=gX;m=gMonth+gM;y=gY+Math.floor(m/12);m=m%12;s=arg.innerHTML;gDate=new Date();gDay=s*1;if(gDir){gRM=gMonth;gRD=gDay;}else{gDM=gMonth;gDD=gDay;}s=m+1;if(s<10)s='0'+s;s=s+"/";if(gDay<10)s+='0';s+=gDay+"/"+y;document.getElementById('dp').style.display='none';gF.value=s;s="x"+gF.name;var d=new Date();d.setFullYear(y,m,gDay);S=weekDays[d.getDay()]+", "+Months[m]+" "+gDay+", "+y;document.getElementById(s).innerHTML=S;}function hidePicker(){document.getElementById('dp').style.display='none';}function mouseDown(e){var trg,t;if(!e)var e=window.event;if(e.target)trg=e.target;else if(e.srcElement)trg=e.srcElement;if(trg.nodeType==3)trg=trg.parentNode;t=true;if(trg.parentNode.id=='dp')t=false;else{if(trg.parentNode.nodeName!='#document')if(trg.parentNode.parentNode.id=='dp')t=false;}if(t)if(trg==gF)t=false;if(t)document.getElementById('dp').style.display='none';if(trg.parentNode.id=='cp')setCity(trg);}function findPos(obj){var curleft=curtop=0;if(obj.offsetParent){do{curleft +=obj.offsetLeft;curtop +=obj.offsetTop;}while(obj=obj.offsetParent);}return [curleft,curtop];}function selectCity(field,mode){if(cMode==2)return;document.onkeydown=keyDown2;gCity=field;field.value='';trg=document.getElementById('cp');if(mode){cMode=0;trg.className='down';}else trg.className='up';d=findPos(field);trg.style.left=d[0]+"px";trg.style.top=(d[1]+field.offsetHeight)+"px";gCl=field.value.length;Msg=document.getElementById("mc"+gCity.name.substr(gCity.name.length-1));Msg.innerHTML='';}function verifyCity(){var msg='';if(document.book.city1.value==document.book.city2.value)msg=Msgs[2];if(gCity.value.length<3)msg=Msgs[1];if(msg!='')msg=icon2+' <span>'+msg+'</span>';Msg=document.getElementById("mc"+gCity.name.substr(gCity.name.length-1));Msg.innerHTML=msg;}function hideCity(){document.getElementById('cp').style.display="none";document.onkeydown=null;verifyCity();}function listCity(field){var oRequest;trg=document.getElementById('cp');l=field.value.length;if(l<1)trg.style.display='none';if(l==gCl||l==0)return;gCl=l;xmlHttp=GetXmlHttpObject();if(xmlHttp==null){alert("Browser does not support HTTP Request");return;}Msg=document.getElementById('mc'+field.name.substr(field.name.length-1));Msg.innerHTML='';if(l<3)return;else url=srch+"?b=1&Search="+field.value+"&sid="+Math.random();Msg.innerHTML=icon1+" Searching City Database";xmlHttp.onreadystatechange=stateChanged;xmlHttp.open("GET",url,true);xmlHttp.send(null);}function setCity(div){gCity.value=div.innerHTML;setTimeout(fix2,1);}function show(){trg=document.getElementById('c1');trg.className='sel';}function sel(div){div.className='sel';}function unsel(div){if(div.id!='c'+gCi)div.className='';}function keyDown(e){var evt=e||window.event;if(evt.keyCode>=48&&evt.keyCode<=57)setTimeout(fix,1);if(evt.keyCode==9){gCity.value=document.getElementById("c"+gCi).innerHTML;verifyCity();if(cMode){cMode=2;document.book.city2.focus();}}if(evt.keyCode==39){gCity.value=document.getElementById("c"+gCi).innerHTML;if(gCity.name=='city1'){if(cMode>0)document.book.city2.focus();else document.book.date1.focus();}else document.book.date1.focus();}if(evt.keyCode==13){document.book.f.value='x';return;}gCo=gCi;if(evt.keyCode==38){gCi--;if(gCi<1)gCi=1;}if(evt.keyCode==40){gCi++;if(gCi>gCm)gCi=gCm;}if(gCo!=gCi){document.getElementById("c"+gCo).className='';document.getElementById("c"+gCi).className='sel';}}function keyDown2(e){var evt=e||window.event;if(evt.keyCode==9){if(cMode>0&&gCity.name=='city1'){cMode=2;document.book.city2.focus();return;}}if(evt.keyCode==16||evt.keyCode==32||(evt.keyCode>=65&&evt.keyCode<=90)||evt.keyCode==188)Msg.innerHTML='';else{setTimeout(fix,1);return;}if((gCity.value==''&&evt.keyCode==32)||(evt.keyCode>=48&&evt.keyCode<=57))setTimeout(fix,1);}function fix(){gCity.value=gCity.value.substr(0,gCity.value.length-1);Msg.innerHTML=icon2+' <span>'+Msgs[7]+'</span>';}function fix2(){if(gCity.name=='city1'){if(cMode==0)document.book.city2.focus();else document.book.date1.focus();}else{document.book.date1.focus();}}function fix3(){gF.value=gF.value.substr(0,gF.value.length-1);Msg.innerHTML=icon2+' <span>'+Msgs[6]+'</span>';}function stateChanged(){if(xmlHttp.readyState==4||xmlHttp.readyState=="complete"){s=xmlHttp.responseText;Msg.innerHTML='';trg=document.getElementById('cp');if(s.indexOf('<div')!=0)s='none';if(s!="none"){trg.style.display='block';trg.innerHTML=s;gCi=1;gCm=trg.childNodes.length;if(s.indexOf('<b>')>0)gCm--;document.onkeydown=keyDown;setTimeout(show, 25);}else{trg.style.display='none';Msg.innerHTML=icon2+" <span>No Cities Found:Please Re-Type</span>";}}}function GetXmlHttpObject(){var objXMLHttp=null;if(window.XMLHttpRequest){objXMLHttp=new XMLHttpRequest();}else if(window.ActiveXObject){objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");}return objXMLHttp;}function validate(){if(document.book.f.value=='x'){gCity.value=document.getElementById("c"+gCi).innerHTML;gCl=gCity.value.length;document.getElementById("cp").style.display='none';document.book.f.value='';if(gCity.name=='city1'){if(cMode==0)document.book.city2.focus();else document.book.date1.focus();}else if(gCity.name=='city2')document.book.date1.focus();return false;}send=true;c='none';if(document.book.city1.value==cTxt||document.book.city1.value.length<3){send=false;c="error";document.getElementById('mc1').innerHTML=icon2+" <span>"+Msgs[1]+"</span>";}document.getElementById("scity1").className=c;c='none';if(document.book.city2.value==cTxt||document.book.city2.value.length<3){send=false;c="error";document.getElementById('mc2').innerHTML=icon2+" <span>"+Msgs[1]+"</span>";}if(document.book.city2.value==document.book.city1.value&&c=='none'){send=false;c="error";document.getElementById('mc2').innerHTML=icon2+" <span>"+Msgs[2]+"</span>";}document.getElementById("scity2").className=c;c='none';msg='';switch(validDate(document.book.date1.value)){case -1:msg=Msgs[4];break;case -2:msg=Msgs[3];break;case -3:msg=Msgs[5];break;}if(msg!=''){send=false;c="error";document.getElementById('md').innerHTML=icon2+" <span>"+msg+"</span>";}document.getElementById("sdate1").className=c;c='none';msg='';switch(validDate(document.book.date2.value)){case -1:msg=Msgs[4];break;case -2:msg=Msgs[3];break;case -3:msg=Msgs[5];break;}if(msg!=''){send=false;c="error";document.getElementById('md').innerHTML=icon2+" <span>"+msg+"</span>";}document.getElementById("sdate2").className=c;return send;}function complete(){showD(document.book.date1);showD(document.book.date2);if(document.book.bad.value==1){msg=icon2+' <span>'+Msgs[0]+'</span>';document.getElementById('mc1').innerHTML=msg;document.getElementById('md').innerHTML=msg;}if(document.book.city2.value!=cTxt)cMode=1;}function showD(field){var v=field.value;c=' ';i=v.indexOf(c);if(i==-1){c='/';i=v.indexOf(c);}if(i==-1){c='-';i=v.indexOf(c);}if(i==-1)return -1;A=v.split(c);if(A.length!=3)return -1;if(A[0]<1||A[0]>12||A[0]*1!=A[0])return -1;if(A[1]<1||A[1]>31||A[1]*1!=A[1])return -1;if(A[2]<8||A[2]*1!=A[2])return -1;if(A[2]<2000)A[2]+=2000;A[0]=A[0]-1;v=A[0]+"/"+A[1]+"/"+A[2];var s="x"+field.name;var d=new Date();d.setFullYear(A[2],A[0],A[1]);S=weekDays[d.getDay()]+", "+Months[A[0]]+" "+A[1]+", "+A[2];document.getElementById(s).innerHTML=S;}
