var flag=false;var isD=false;var isR=false;var fx=false;var obT;var ibT;var maxVal;var minVal;var bPoints=new Array();var boardPoints=new Array();var dptS=new Array();var rptS=new Array();var oD=new Date();var iD=new Date();var DepartBP="";var ReturnBP="";var dbpStr="";var rbpStr="";var N=navigator.appName;var V=navigator.appVersion.split(";");V=parseInt(V[1].substring(6,7));var dRid="";var rRid="";var al="";var totPrice=0;var totBF=0;var totTax=0;var dPrice=0;var rPrice=0;var dTax=0;var rTax=0;var dBF=0;var rBF=0;var displayedDepart=0;var lenDepart;function showResult(h,b){if(h=="Depart"){document.getElementById("bookedDetails").innerHTML="Your Return Bus Details"}if(h=="Return"){document.getElementById("bookedDetails").innerHTML="Your Departure Bus Details"}var f=h+"form";var g=""+h+"All";var j=document.forms[""+f].elements.length;var a=true;al="";if(b.id!=g){document.getElementById(h+"All").checked=false}if(document.getElementById(h+"All").checked){for(var c=0;c<j;c++){if(!document.forms[""+f].elements[c].checked){document.forms[""+f].elements[c].checked=true}}}for(var c=0;c<j;c++){if(document.forms[""+f].elements[c].checked){al+=document.forms[""+f].elements[c].value+"|"}else{a=false}}if(a){document.getElementById(h+"All").checked=true}f_name="sliderForm";var e=document.forms[""+f_name].sortType.length;for(var c=0;c<e;c++){if(document.forms[""+f_name].sortType[c].checked){var d=c}}setResults(h,d,al)}function updatePrice(b,c,d,e,a,f,g){totPrice=(g=="Depart")?(totPrice-b):(totPrice-e);totBF=(g=="Depart")?(totBF-c):(totBF-a);totTax=(g=="Depart")?(totTax-d):(totTax-f);if(g=="Depart"){document.BusSearchResultsForm.dindex.value=""}if(g=="Return"){document.BusSearchResultsForm.rindex.value=""}if(totPrice>0){document.getElementById("left_travelsearch").style.display="";document.getElementById("price").innerHTML="Rs."+FormatNumber(totPrice);document.getElementById("price-tax").innerHTML="(inclusive of all taxes & fees.)";document.getElementById("contBooking").style.display="none";if(g=="Depart"){document.getElementById("sortOrders").style.display=""}document.getElementById("selected"+g).style.display="none"}else{document.getElementById("left_travelsearch").style.display="";document.getElementById("contBooking").style.display="none";document.getElementById("selectedResults").style.display="none"}}function setResults(g,w,q,e,j){if(!e){e=""}if(!j){j=""}if(!q){q="";var d=g+"form";var f=""+g+"All";var h=document.forms[""+d].elements.length;if(document.getElementById(g+"All").checked==true){q=""}else{for(var r=0;r<h;r++){if(document.forms[""+d].elements[r].checked){q+=document.forms[""+d].elements[r].value+"|"}}}}var y=document.sliderForm;if(g=="Depart"){Arr=bdArr;minVal=y.dMin.value;maxVal=y.dMax.value;isD=false;lenDepart=Arr.length;document.getElementById("DepartMatrix").style.display="";document.getElementById("DepartBus").innerHTML="";document.getElementById("selectedDepart").innerHTML="";document.getElementById("sortOrders").style.display=""}else{Arr=brArr;minVal=y.rMin.value;maxVal=y.rMax.value;isR=false;document.getElementById("ReturnMatrix").style.display="";document.getElementById("ReturnBus").style.display="";document.getElementById("sortOrders").style.display=""}if(!w){w="0"}switch(w){case"0":Arr.sort(sort_by_price);break;case"1":Arr.sort(sort_by_departTime);break;case"2":Arr.sort(sort_by_arrivalTime);break;case"3":Arr.sort(sort_by_duration);break;default:break}var t=Arr.length;var b=0;var n="";var c="";var s=true;var u=1;for(var r=0;r<t;r++){var x=(Arr[r].DU/60).toString().split(".");var o=Arr[r].DU%60;var p=(o>0)?x[0]+"h "+o+"m":p=x[0]+"h 0m";var a=Arr[r].DT.substr(0,2)+":"+Arr[r].DT.substr(2,2);var l=Arr[r].AT.substr(0,2)+":"+Arr[r].AT.substr(2,2);var v=Arr[r].AVL;var m="<td colspan=\"5\" class=\"boardingpoint\"><table border='0' width='100%' style='font-size:11px;font-weight:normal;'><tr><td><div id=\"selected"+g+"BP"+r+'" style="display:none;"></div><div id="'+g+"bpInfo"+r+'"><a href="#" onClick="bpRequest('+Arr[r].RID+","+r+",this.id,'"+g+"',"+Arr[r].FV+",'no'); return false;\" id=\"bP"+r+'" style="color:#000;">Select Boarding Point</a></div></td><td align=\'right\' style=\'padding-right:5px;\'><img src="/images/YT/AIR/next1.gif" style="margin-bottom:-3px;"/>&nbsp;<a href="#" class="bookfilight" onclick="writeSelected(\''+r+"','"+g+"','"+Arr[r].DD.substr(0,2)+"','"+Arr[r].FV+"','"+Arr[r].RID+"','"+g+"bp_"+r+"')\"><b>Book this Bus</b></a></td></tr></table>";if(v=="OnRequest"){m='<td colspan="6"><div style="background-color:#fffeca;width:100%;height:26px;"><div style="font-size:11px;font-weight:normal;color:#000000;padding-left:6px;padding-right:6px;padding-bottom:10px;padding-top:5px;text-align:right;"><span>This bus will be available on Request basis shortly.</span></div><div id="'+g+"bpInfo"+r+'"></div>'}document.getElementById("resultheading").innerHTML=(g=="Depart")?'<strong>Select a convenient <span style="color:#f68a24">Departure Bus</span> from the <span style="color:#f68a24" id="totBuses"></span>&nbsp;Buses listed below</strong>':'<strong>Select a convenient <span style="color:#f68a24">Return Bus</span> from the <span style="color:#f68a24" id="totBuses"></span>&nbsp;Buses listed below</strong>';document.getElementById("sortOrders").innerHTML='Sort by <img src="/images/BUS/arrow1.gif" alt="" style="vertical-align:middle;  margin-bottom:-1px;"/>&nbsp;<input name="sortType" value="Price" onclick="setResults(\''+g+'\',\'0\',\'\',\'\',\'\')" checked="checked" type="radio" style="vertical-align:middle; margin-top:-1px;"/> Price &nbsp;&nbsp;<input name="sortType" value="DepartTime" onclick="setResults(\''+g+"','1','','','')\" type=\"radio\" style=\"vertical-align:middle; margin-top:-1px;\"/> Departure Time &nbsp;&nbsp;<input name=\"sortType\" value=\"ArrivalTime\" onclick=\"setResults('"+g+"','2','','','')\" type=\"radio\" style=\"vertical-align:middle; margin-top:-1px;\"/> Arrival Time&nbsp;&nbsp;<input name=\"sortType\" value=\"Duration\" onclick=\"setResults('"+g+"','3','','','')\" type=\"radio\" style=\"vertical-align:middle; margin-top:-1px;\"/> Duration";n+='<div style="float:left; width:551px;"><div class="resultheadreleft"><div class="resultprice">Rs. '+FormatNumber(Arr[r].TF)+'<span class="resultprice1">(inclusive of all taxes &amp; fees)</span></div></div><div class="resultheadreright">&nbsp;</div></div><div style="float:left; width:551px;"><table width="551" border="1" cellspacing="0" cellpadding="0" style="border-collapse:collapse; margin-bottom:20px;" bordercolor="#dfe1e7">';if(u==1){n+='<tr><td width="124" class="resultheading">Departure</td><td width="100" class="resultheading">Arrival</td><td width="80" class="resultheading">Duration</td><td width="99" class="resultheading">Bus Type</td><td width="134" class="resultheading">Travels</td></tr>'}n+='<tr><td width="124" class="resultdetail">'+Arr[r].DL+" <br />ISBT<br /><strong> at "+a+" </strong><br />"+Arr[r].DD+'</td><td width="100" class="resultdetail">'+Arr[r].AL+"<br /><strong> at "+l+" </strong><br />"+Arr[r].AD+'</td><td width="80" class="resultdetail"><strong>'+p+'</strong></td><td width="99" class="resultdetail" style="padding:2px;">'+Arr[r].BT+'</td><td width="134" class="resultdetail">'+Arr[r].TN+"</td></tr><tr>"+m+'</td></tr></table><input type="hidden" id="'+g+"bp_"+r+'" name="'+g+"bp_"+r+'" value=""></div>';if(parseInt(Arr[r].TF)<=Math.round(maxVal)&&(Arr[r].DT>=y.timeMin.value)&&(Arr[r].DT<=y.timeMax.value)&&(q!="")&&(q.indexOf(Arr[r].TN)!=-1)){Arr[r].SH=true}else{if(parseInt(Arr[r].TF)<=Math.round(maxVal)&&(Arr[r].DT>=y.timeMin.value)&&(Arr[r].DT<=y.timeMax.value)&&(q=="")){Arr[r].SH=true}else{Arr[r].SH=false}}if(Arr[r].SH){c+=n;b++;u++}n=""}if(b==0){var k='<table width=100% cellpadding=0 cellspacing=0 bgcolor=#EFEFEF align=center><tr><Td class=ysel align=center style="color:#ff0000;font-size:8pt;font-family:verdana;border:1px solid;" height="80" valign="center"><b>No Results Found please   reset Filters</b></td></tr></table>';document.getElementById(g+"Bus").innerHTML=k}else{if(g=="Depart"){displayedDepart=b}document.getElementById("totBuses").innerHTML=b;if(w<4){document.sliderForm.sortType[w].checked=true}document.getElementById(g+"Bus").innerHTML=c;if(g=="Depart"){document.getElementById("DepartBus").style.display=""}else{document.getElementById("ReturnBus").style.display=""}}if(!isR&&!isD){document.getElementById("resultheading").innerHTML='<strong>Select a convenient <span style="color:#f68a24">Departure Bus</span> from the <span style="color:#f68a24" id="totBuses"></span>&nbsp;Buses listed below</strong>';document.getElementById("totBuses").innerHTML=displayedDepart;document.getElementById("selectedReturn").style.display="none";document.getElementById("ReturnMatrix").style.display="none";document.getElementById("ReturnBus").style.display="none"}}function writeSelected(p,d,c,f,l,r){var g=new Array();var n=document.BusSearchResultsForm;var a=7;var e="";var h="";if(d=="Depart"){isD=true;g=bdArr;dRid=l;h=document.getElementById(r).value;dPrice=g[p].TF;dTax=g[p].ST;dBF=g[p].BF;if(!isR){rPrice=0;rTax=0;rBF=0}n.r1.value=f;n.d_rid.value=l;n.compPrice.value=Math.round(g[p].TF);n.d_date.value=g[p].DD;document.getElementById("DepartMatrix").style.display="none";document.getElementById("DepartBus").style.display="none";oD.setTime(Date.parse(bdArr[p].DD.substring(6,10)+"/"+bdArr[p].DD.substring(3,5)+"/"+bdArr[p].DD.substring(0,2)+" "+bdArr[p].DT.substring(0,2)+":"+bdArr[p].DT.substring(2,4)+":00"))}if(d=="Return"){isR=true;document.getElementById("left_travelsearch").style.display="none";g=brArr;rRid=l;rPrice=g[p].TF;rTax=g[p].ST;rBF=g[p].BF;h=document.getElementById(r).value;n.r2.value=f;n.r_rid.value=l;n.compPrice.value=Math.round(n.compPrice.value)+Math.round(g[p].TF);n.r_date.value=g[p].DD;document.getElementById("ReturnMatrix").style.display="none";document.getElementById("ReturnBus").style.display="none";iD.setTime(Date.parse(brArr[p].DD.substring(6,10)+"/"+brArr[p].DD.substring(3,5)+"/"+brArr[p].DD.substring(0,2)+" "+brArr[p].DT.substring(0,2)+":"+brArr[p].DT.substring(2,4)+":00"))}var o="";var q=(g[p].DU/60).toString().split(".");var m=g[p].DU%60;var s=(m>0)?q[0]+"h "+m+"m":s=q+"h 0m";var b=g[p].DT.substr(0,2)+":"+g[p].DT.substr(2,2);var k=g[p].AT.substr(0,2)+":"+g[p].AT.substr(2,2);var j=(d=="Depart")?DepartBP:ReturnBP;totPrice=Math.round(dPrice)+Math.round(rPrice);totBF=Math.round(dBF)+Math.round(rBF);totTax=Math.round(dTax)+Math.round(rTax);o+='<div style="float:left; width:551px;"><table width="551" border="1" cellspacing="0" cellpadding="0" style="border-collapse:collapse;" bordercolor="#dfe1e7">';if(d=="Depart"){o+='<tr><td width="124" class="resultheading" colspan="2">Departure</td><td width="100" class="resultheading">Arrival</td><td width="80" class="resultheading">Duration</td><td width="99" class="resultheading">Bus Type</td><td width="134" class="resultheading">Travels</td></tr>'}o+='<tr><td class="departborder"><img src="/images/BUS/'+d.toLowerCase()+'.gif" alt="depart"/></td><td width="124" class="resultdetail">'+g[p].DL+" <br />ISBT<br /><strong> at "+b+" </strong><br />"+g[p].DD+'</td><td width="100" class="resultdetail">'+g[p].AL+"<br /><strong> at "+k+" </strong><br />"+g[p].AD+'</td><td width="80" class="resultdetail"><strong>'+s+'</strong></td><td width="99" class="resultdetail">'+g[p].BT+'</td><td width="134" class="resultdetail">'+g[p].TN+"</td></tr><tr><td colspan=\"6\" class=\"boardingpoint\"><table border='0' width='100%' style='font-size:11px;font-weight:normal;'><tr><td><div id=\"sel"+d+"BP"+p+'" style="display:none;">Boarding from <strong>'+document.getElementById(r).value+'</strong></div><div id="sel'+d+"bpInfo"+p+'" style="display:none;"><a href="#" onClick="bpRequest('+g[p].RID+","+p+",this.id,'"+d+"',"+g[p].FV+",'yes')\" id=\"bP"+p+'" style="color:#000;">Select Boarding Point</div></td><td align=\'right\' style=\'padding-right:5px;\'><img src="/images/YT/AIR/next1.gif" style="margin-bottom:-3px;"/> <a href="#" class="bookfilight" onclick="showResult(\''+d+"','"+d+"All'); updatePrice("+dPrice+","+dBF+","+dTax+","+rPrice+","+rBF+","+rTax+",'"+d+"');\"><b>Change "+d+'</b></a></td></tr></table><input type="hidden" id="'+d+"bp_"+p+'" name="'+d+"bp_"+p+'" value=""></div></td></tr></table></td>';document.getElementById("price").innerHTML="Rs."+FormatNumber(totPrice);document.getElementById("price-tax").innerHTML="(inclusive of all taxes &amp; fees)";if(d=="Depart"){document.getElementById("bookedDetails").innerHTML="Your Departure Bus Details"}if(isD&&isR){document.getElementById("bookedDetails").innerHTML="Your Depart/Return Bus Details"}document.getElementById("selectedResults").style.display="";document.getElementById("resultheading").innerHTML="";if((d=="Depart"&&isD)||(d=="Return")){document.getElementById("sortOrders").style.display="none"}document.getElementById(d+"Bus").innerHTML="";document.getElementById("selected"+d).innerHTML=o;document.getElementById("selected"+d).style.display="";if(h==""){document.getElementById("sel"+d+"bpInfo"+p).style.display=""}else{document.getElementById("sel"+d+"BP"+p).style.display=""}if(!isR&&isReturn){setResults("Return","0","",document.BusSearchResultsForm.r_date.value,"")}if(!isReturn||(isD&&isR)){document.getElementById("contBooking").style.display="";document.getElementById("left_travelsearch").style.display="none"}if(d=="Depart"){dbpStr="";bpRequests(dRid,d)}if(d=="Return"){rbpStr="";bpRequests(rRid,d)}location.href="#"}function bpRequest(rid,i,id,type,num,sel){onoverwindow();var s_id=document.sliderForm.search_id.value;var ajaxRequest=getXmlHttpRequestObject();if(ajaxRequest.readyState==4||ajaxRequest.readyState==0){ajaxRequest.open("GET","./RedBus/bpArray.mjs?id="+rid+"&type="+type+"&search_id="+s_id,true);ajaxRequest.onreadystatechange=function(){if(ajaxRequest.readyState==4){var toggle=false;if(ajaxRequest.responseText){var objBoardingPoints=new Array();eval(ajaxRequest.responseText);openpopup(i,id,type,num,objBoardingPoints,sel)}else{document.getElementById("loader").style.display="none";document.getElementById("bpError").innerHTML='<span>Sorry! No boarding points found for this bus. Please try again later.<span><br/><br/><div class="closeimg"><a href="javascript:;" onClick="offoverwindow()"><img src="/images/BUS/close-window.gif" border="0" alt="" /></a><br /><br /></div>';document.getElementById("bpError").style.display=""}}};ajaxRequest.send(null)}}function openpopup(d,h,e,c,b,f){DepartBP="";ReturnBP="";if(e=="Depart"){DepartBP="";Arr=bdArr}if(e=="Return"){ReturnBP="";Arr=brArr}var g="";for(var a=0;a<b.length;a++){g+='<div style="float:left; width:637px; margin:10px 0 10px 0;"><div class="popbusleft"><input type="radio" name="bpoints" value='+escape(b[a].Name+"_"+a)+' onClick="'+e+'BP=unescape(this.value)" style="margin-bottom:-1px; margin-top:-2px;"/>'+b[a].Name+'</div><div class="popbusleft1">'+b[a].Landmark+'</div><div class="popbusleft2">'+b[a].Address+'</div><div class="popbusright">'+b[a].Time.substr(11,5)+" hrs</div><br /><br /></div>"}g+='<div class="closeimg"><a href="javascript:;" onClick="checkBp(\''+d+"','"+e+"','"+Arr[d].DD.substr(0,2)+"','"+c+"','"+f+'\');"><img src="/images/BUS/close-window.gif" border="0" alt="" /></a><br /><br /></div>';document.getElementById("loader").style.display="none";document.getElementById("boardingpointheading").style.display="";window.bpframe.document.getElementById("popup_contaioner1").innerHTML=g;document.getElementById("bpframe").style.height=260+"px";window.bpframe.document.getElementById("popup_contaioner1").style.display=""}function checkBp(b,d,e,a,f){var h=(d=="Depart")?DepartBP:ReturnBP;if(d=="Depart"){dptS=h.split("_");window.parent.document.getElementById(d+"bp_"+b).value=dptS[0];window.parent.document.BusSearchResultsForm.dBP.value=dptS[0];window.parent.document.BusSearchResultsForm.dindex.value=dptS[1]}else{rptS=h.split("_");window.parent.document.getElementById(d+"bp_"+b).value=rptS[0];window.parent.document.BusSearchResultsForm.rBP.value=rptS[0];window.parent.document.BusSearchResultsForm.rindex.value=rptS[1]}offoverwindow();var c=(f=="no")?"selected"+d+"BP"+b:"sel"+d+"BP"+b;var g=(f=="no")?d+"bpInfo"+b:"sel"+d+"bpInfo"+b;if(h==""){window.parent.document.getElementById(c).style.display="none";window.parent.document.getElementById(g).style.display=""}else{if(d=="Depart"){window.parent.document.getElementById(c).innerHTML="Boarding from: <strong>"+dptS[0]+"</strong>"}else{window.parent.document.getElementById(c).innerHTML="Boarding from: <strong>"+rptS[0]+"</strong>"}window.parent.document.getElementById(c).style.display="";window.parent.document.getElementById(g).style.display="none"}}function onoverwindow(){document.getElementsByTagName("body")[0].style.overflow="hidden";window.bpframe.document.getElementById("popup_contaioner1").innerHTML="";window.parent.document.getElementById("bpframe").style.height="0px";document.getElementById("bpError").style.display="none";document.getElementById("bpError").innerHTML="";document.getElementById("overeffect").style.display="";document.getElementById("overeffect").style.height=getScreenHeight()+scrollYPos+"px";document.getElementById("popup").style.left=(screen.width-682)/2+"px";document.getElementById("popup").style.top=getScrollTop()+70+"px";document.getElementById("popup").style.display="";document.getElementById("loader").style.display="";document.getElementById("boardingpointheading").style.display="none"}function offoverwindow(){window.parent.document.getElementsByTagName("body")[0].style.overflow="auto";window.parent.document.getElementById("overeffect").style.display="none";window.parent.document.getElementById("popup").style.display="none";window.parent.document.getElementById("loader").style.display="none"}var bpResponse="";function getXmlHttpRequestObject(){if(window.XMLHttpRequest){return new XMLHttpRequest()}else{if(window.ActiveXObject){return new ActiveXObject("Microsoft.XMLHTTP")}else{alert("Please upgrade your browser. The current version does not support the booking request.")}}}function seatRequest(a,b,d){document.getElementById("overeffect").style.display="";document.getElementById("overeffect").style.height=950+"px";document.getElementById("seatMap").style.top=getScrollTop()+10+"px";document.getElementById("seatMap").style.left=(screen.width-750)/2+"px";document.getElementById("seatMap").style.display="";document.getElementById("seatContainer").style.display="none";document.getElementById("DseatsSelected").value="";if(d=="R"){document.getElementById("RseatsSelected").value=""}document.getElementById("ajaxloader").style.display="";var c=getXmlHttpRequestObject();if(c.readyState==4||c.readyState==0){c.open("GET","./RedBus/components/seatmap.html?drid="+a+"&rrid="+b+"&type="+d+"&pseudoParam="+new Date().getTime(),true);c.onreadystatechange=function(){if(c.readyState==4){var f=false;if(c.responseText){var e=new Array();e=c.responseText.split("~");document.getElementById("departSeatLayout").innerHTML=e[0];if(d=="R"){document.getElementById("returnSeatLayout").innerHTML=e[1]}populateBoardPoints(d);document.BusSearchResultsForm.d_BP.selectedIndex=parseInt(document.BusSearchResultsForm.dindex.value)+1;if(d=="R"){document.BusSearchResultsForm.r_BP.selectedIndex=parseInt(document.BusSearchResultsForm.rindex.value)+1}document.getElementById("ajaxloader").style.display="none";document.getElementById("seatContainer").style.display=""}else{document.getElementById("ajaxloader").style.display="none";document.getElementById("seatError").innerHTML='<center>Sorry! The seatmap for this bus is current unavailable. Please try again late.<br/><br/><div><a href="javascript:;" onClick="closeWindow();"><img src="/images/BUS/close-window.gif" border="0" alt="" /></a><br /><br /><br /></div></center>';document.getElementById("seatError").style.display=""}}};c.send(null)}}function closeWindow(){document.getElementById("overeffect").style.display="none";document.getElementById("seatMap").style.display="none"}function populateBoardPoints(c){var d=new Array();d=unescape(dbpStr).split("~");document.BusSearchResultsForm.d_BP.length=d.length+1;document.BusSearchResultsForm.d_BP[0].text="Boarding Point";document.BusSearchResultsForm.d_BP[0].value="";for(var b=0;b<d.length;b++){document.BusSearchResultsForm.d_BP[b+1].text=d[b];document.BusSearchResultsForm.d_BP[b+1].value=d[b]}if(c=="R"){var a=new Array();a=unescape(rbpStr).split("~");document.BusSearchResultsForm.r_BP.length=a.length+1;document.BusSearchResultsForm.r_BP[0].text="Boarding Point";document.BusSearchResultsForm.r_BP[0].value="";for(var b=0;b<a.length;b++){document.BusSearchResultsForm.r_BP[b+1].text=a[b];document.BusSearchResultsForm.r_BP[b+1].value=a[b]}}}function getBPlist(c,b){for(var a=0;a<c.length;a++){if(b=="Depart"){dbpStr+=escape(c[a].Name);if(a<(c.length-1)){dbpStr+="~"}}else{rbpStr+=escape(c[a].Name);if(a<(c.length-1)){rbpStr+="~"}}}}function bpRequests(routeId,type){var s_id=document.sliderForm.search_id.value;var ajaxRequest=getXmlHttpRequestObject();if(ajaxRequest.readyState==4||ajaxRequest.readyState==0){ajaxRequest.open("GET","./RedBus/bpArray.mjs?id="+routeId+"&type="+type+"&search_id="+s_id,true);ajaxRequest.onreadystatechange=function(){if(ajaxRequest.readyState==4){var objBoardingPoints=new Array();eval(ajaxRequest.responseText);getBPlist(objBoardingPoints,type)}};ajaxRequest.send(null)}}function daysElapsed(b,a){var c=Date.UTC(b.getYear(),b.getMonth(),b.getDate(),0,0,0)-Date.UTC(a.getYear(),a.getMonth(),a.getDate(),0,0,0);return c=(c)/(1000*60*60*24)}var dtCh="/";var minYear=1900;var maxYear=2020;function isInteger(b){var a;for(a=0;a<b.length;a++){var d=b.charAt(a);if(((d<"0")||(d>"9"))){return false}}return true}function stripCharsInBag(d,e){var b;var a="";for(b=0;b<d.length;b++){var f=d.charAt(b);if(e.indexOf(f)==-1){a+=f}}return a}function daysInFebruary(a){return(((a%4==0)&&((!(a%100==0))||(a%400==0)))?29:28)}function DaysArray(b){for(var a=1;a<=b;a++){this[a]=31;if(a==4||a==6||a==9||a==11){this[a]=30}if(a==2){this[a]=29}}return this}function isDate(e){var b=DaysArray(12);var f=e.indexOf(dtCh);var d=e.indexOf(dtCh,f+1);var h=e.substring(0,f);var g=e.substring(f+1,d);var a=e.substring(d+1);strYr=a;if(h.charAt(0)=="0"&&h.length>1){h=h.substring(1)}if(g.charAt(0)=="0"&&g.length>1){g=g.substring(1)}for(var c=1;c<=3;c++){if(strYr.charAt(0)=="0"&&strYr.length>1){strYr=strYr.substring(1)}}month=parseInt(g);day=parseInt(h);year=parseInt(strYr);if(f!=2||d!=5){alert("Please enter the date as DD/MM/YYYY.");return false}if(g.length<1||month<1||month>12){alert("Please specify the month correctly.");return false}if(h.length<1||day<1||day>31||(month==2&&day>daysInFebruary(year))||day>b[month]){alert("Please specify a valid day.");return false}if(a.length!=4||year==0||year<minYear||year>maxYear){alert("Please enter the year as a 4 digit number between "+minYear+" and "+maxYear+".");return false}if(e.indexOf(dtCh,d+1)!=-1||isInteger(stripCharsInBag(e,dtCh))==false){alert("Please specify a valid date.");return false}return true}function isValidBus(r,h,c){var g=document.forms[""+r].ADT.value;var x=document.forms[""+r].origin.value;var v=document.forms[""+r].destination.value;var s=parseInt(g);var e=isDate(h);var t=isDate(c);if(!e||!t){return false}var h=h.split("/");var c=c.split("/");var f=h[0];var q=h[2];var p=(h[1]-1);var l=c[0];var m=c[2];var u=(c[1]-1);var w=new Date();var n=w.getDate();if(n<10){n="0"+n}var j=w.getMonth();if(j<10){j="0"+j}var b=w.getFullYear();var o=daysElapsed(new Date(m,u,l),new Date(q,p,f));var k=daysElapsed(new Date(q,p,f),new Date(b,j,n));if(x==""){alert("Please select the city of origin for your trip.");document.forms[""+r].origin.focus();return false}if(v==""){alert("Please select the destination city for your trip.");document.forms[""+r].destination.focus();return false}if(v==x){alert("Departure and arrival cities cannot be the same.");document.forms[""+r].destination.focus();return false}if(k<0){alert("Please select a valid departure date.");document.forms[""+r].ddate.focus();return false}if(o<=0&&document.forms[""+r].type[0].checked){alert("Please select a return date that is after the departure date.");document.forms[""+r].rdate.focus();return false}if(s>10){alert("You can book a maximum of 10 tickets online.\nFor help with group bookings, please call our Customer Service Helpline.");document.forms[""+r].ADT.focus();return false}else{return true}}function daysElapsed(b,a){var c=Date.UTC(b.getYear(),b.getMonth(),b.getDate(),0,0,0)-Date.UTC(a.getYear(),a.getMonth(),a.getDate(),0,0,0);return c=(c)/(1000*60*60*24)}function add_seat(a,b){str=new String(a);if(str.length>0){return a+","+b}else{return b}}function remove_seat(a,b){str=new String(a);i=str.indexOf(b);if(i>=0){inext=str.indexOf(",",i);if(inext==-1&&i==0){return""}if(i==0){return str.substring(inext+1)}else{if(inext==-1){return str.substring(0,i-1)}else{return str.substring(0,i-1)+str.substring(inext)}}}else{return a}}function isValidateBus(g,l,d,m,f,k){g=(g!="")?g.value:"";var n=new Array();n=g.split(",");if(k=="R"){d=(d!="")?d.value:"";var h=new Array();h=d.split(",")}var e="";var b="";var a=0;var c=0;var j;e="\nDepart Bus:\n";if(l.value==""){e+="-- Please select a boarding point for your departure journey.\n";a=1}if(g==""){e+="-- Please select the seats for your departure journey.\n";a=1}if(n.length>f&&g!=""){e+="-- Sorry! You can select only "+f+" seat on the departure bus.\n";a=1}if(n.length<f&&g!=""){e+="-- The no. of seats selected on the departure bus cannot be less than the no. of passengers. Please select more seats.\n";a=1}if(k=="R"){b+="\nReturn Bus:\n";if(m.value==""){b+="-- Please select the boarding point for your return journey.\n";c=1}if(d==""){b+="-- Please select the seats for your return journey.\n";c=1}if(h.length<f&&d!=""){b+="-- The no. of seats selected on the return bus cannot be less than the no. of passengers. Please select more seats.\n\n";c=1}if(h.length>f&&d!=""){b+="-- Sorry! You can select only "+f+" seat on the return bus.\n";c=1}}b=(c==0)?"":b;e=(a==0)?"":e;j=e+b;if(a==1||c==1){alert(j);return false}else{return true}}var scrollYPos="";function update(){setTimeout("update()",200);scrollYPos=getScrollTop()}update();function sort_by_price(e,d){var c=Math.round(e.TF);var f=Math.round(d.TF);return((c<=f)?-1:((c>f)?1:0))}function sort_by_duration(e,d){var c=parseInt(e.DU);var f=parseInt(d.DU);return((c<=f)?-1:((c>f)?1:0))}function sort_by_departTime(e,d){var c=e.DT;var f=d.DT;return((c<=f)?-1:((c>f)?1:0))}function sort_by_arrivalTime(e,d){var c=e.AT;var f=d.AT;return((c<=f)?-1:((c>f)?1:0))}function getScreenWidth(){return get_XY_Position(window.innerWidth?window.innerWidth:0,document.documentElement?document.documentElement.clientWidth:0,document.body?document.body.clientWidth:0)}function getScreenHeight(){return get_XY_Position(window.innerHeight?window.innerHeight:0,document.documentElement?document.documentElement.clientHeight:0,document.body?document.body.clientHeight:0)}function getScrollLeft(){return get_XY_Position(window.pageXOffset?window.pageXOffset:0,document.documentElement?document.documentElement.scrollLeft:0,document.body?document.body.scrollLeft:0)}function getScrollTop(){return get_XY_Position(window.pageYOffset?window.pageYOffset:0,document.documentElement?document.documentElement.scrollTop:0,document.body?document.body.scrollTop:0)}function get_XY_Position(c,e,a){var f=c?c:0;if(e&&(!f||(f>e))){f=e}return a&&(!f||(f>a))?a:f}function showHidedate(a){if(a=="R"){document.busform.rdate.disabled=false;document.getElementById("ReturnIcon").style.display="";document.getElementById("ReturnIcon2").style.display="none"}else{document.busform.rdate.disabled=true;document.getElementById("ReturnIcon").style.display="none";document.getElementById("ReturnIcon2").style.display=""}}function FormatNumber(c){if(N=="Microsoft Internet Explorer"&&V<6){var g=c;return g}else{var e=",";var b=c;var d=c;if(isNaN(d)){return""}var f="";if(d<0){f="-"}d=Math.abs(d);var j=new String(d);var b=[];while(j.length>3){var h=j.substr(j.length-3);b.unshift(h);j=j.substr(0,j.length-3)}if(j.length>0){b.unshift(j)}j=b.join(e);c=j;c=f+c;return c}}function findPosX(a){var b=0;if(a.offsetParent){while(a.offsetParent){b+=a.offsetLeft;a=a.offsetParent}}else{if(a.x){b+=a.x}}return b}function findPosY(c){var a=0;var b="";if(c.offsetParent){while(c.offsetParent){b+=" element "+c.tagName+" has "+c.offsetTop;a+=c.offsetTop;c=c.offsetParent}}else{if(c.y){a+=c.y}}window.status=b;return a};