var getBusErrorCount=0;function o(){if(cY){g();return;}if(!fe){g();return;}if(fv<hD.length){var ec=v(hD[fv]);if(ec!=null){if(ec.dw){cb(ec);fv++;}else{fv++;g();jH=window.setTimeout("o()",500);}}else{fv++;g();jH=window.setTimeout("o()",500);}}else{fv=0;if(hD.length==0){g();jH=window.setTimeout("o()",10000);}else{g();jH=window.setTimeout("o()",5*1000);}}};function cb(ec){if(ec.id==null||ec.id==""){return;}var url=gj+"?route="+ec.id+"&nsd="+ec.noServiceDisplayed+"&key="+Math.random();//@1
var request=GXmlHttp.create();request.open("GET",url,true);request.onreadystatechange=function(){bR(request);};request.send(null);};function bR(request){if(request.readyState==4){bJ(request);}};function bJ(jQ){try{if(jQ.readyState==4){if(jQ.status==200){bX(jQ.responseXML);}else{g();jH=window.setTimeout("o()",5000);}}}catch(e){g();jH=window.setTimeout("o()",5000);getBusErrorCount++;if(getBusErrorCount>5){A("Bus information is not currently available.  Please try again later. (SCBI-E)");getBusErrorCount=0;}}jQ=null;t();};function bX(xml){if(cY){return;}if(jl!=null)I();var ec=null;var dx=xml.getElementsByTagName("buses");if(D(dx,"",false)){g();jH=window.setTimeout("o()",5000);return;}var fG=map.getBounds();var ed=dx[0].getElementsByTagName("bus");var hC=dx[0].getAttribute("rt");ec=v(hC);if(ec==null){g();jH=window.setTimeout("o()",1000);return;}if(!ec.visible|| !ec.dw){g();jH=window.setTimeout("o()",1000);return;}
//@1
;if(ec.id!="0"&&ed.length==0){var hasServiceTags=dx[0].getElementsByTagName("hasService");if(hasServiceTags!=null&&hasServiceTags.length>0){var hasService=hasServiceTags[0].firstChild.data;if(hasService=="false"){if(ec.noServiceDisplayed==false){alert(ec.id+" - "+ec.description+" has no service scheduled.");}}}}ec.noServiceDisplayed=true;ec.jj(false);if(fX&&fl.type=="stop"){M(hC);}var busInfoboxUpdated=false;var busTooltipUpdated=false;for(var gs=0;gs<ed.length;gs++){var dy=ed[gs].getElementsByTagName("pid")[0].firstChild.data;if(dy!=0&& !cf(ec,dy)){fv--;hL=true;hh=hC;hd=dy;window.setTimeout("bL()",500);return;}hL=false;var du=ed[gs].getElementsByTagName("id")[0].firstChild.data;var dL=ed[gs].getElementsByTagName("d")[0].firstChild.data;var busDirectionDisplay=ed[gs].getElementsByTagName("dd")[0].firstChild.data;var busHeading=ed[gs].getElementsByTagName("dn")[0].firstChild.data;var cB=ec.fC(du);var hc=false;if(cB==null){hc=true;cB=new J();cB.color=ec.color;cB.hC=ed[gs].getElementsByTagName("rt")[0].firstChild.data;if(cB.hC=="OR"){cB.actualRouteTag=ed[gs].getElementsByTagName("ar")[0].firstChild.data;}cB.du=du;}else{if(busHeading!=cB.heading){cB.remove();}}cB.direction=dL;cB.directionDisplay=busDirectionDisplay;cB.heading=busHeading;cB.cC=dy;cB.cO=ed[gs].getElementsByTagName("pd")[0].firstChild.data;cB.cL=ed[gs].getElementsByTagName("run")[0].firstChild.data;cB.cS=ed[gs].getElementsByTagName("fs")[0].firstChild.data;cB.cN=ed[gs].getElementsByTagName("op")[0].firstChild.data;cB.fF=new GLatLng(ed[gs].getElementsByTagName("lat")[0].firstChild.data,ed[gs].getElementsByTagName("lon")[0].firstChild.data);cB.active=true;if(hc||cB.marker==null){if(fG.containsLatLng(cB.fF)){cB.ft();}else{cB.visible=false;}if(hc){ec.ja.push(cB);}}else{if(fG.containsLatLng(cB.fF)){cB.redraw();}else{cB.marker.hide();cB.label.hide();cB.visible=false;}}if(fl.marker==null||cB.du==fl.marker.du){fl.marker=cB.marker;}if(fX&&fl.type=="bus"&&fl.marker.du==cB.du&&cB.visible){hs();busInfoboxUpdated=true;}if(je&&tooltip.type=="bus"&&tooltip.marker.du==cB.du&&cB.visible){bp(tooltip.marker);busITooltipUpdated=true;}}if(fX&&fl.type=="bus"&& !busInfoboxUpdated&&fl.marker.hC==hC){fl.style.visibility="hidden";fX=false;}if(je&&tooltip.type=="bus"&& !busTooltipUpdated&&tooltip.marker.hC==hC){tooltip.style.visibility="hidden";je=false;}var ja=new Array();for(var i=0;i<ec.ja.length;i++){if(ec.ja[i].active==false){ec.ja[i].remove();F(ec.ja[i]);ec.ja[i]=null;}else{ja.push(ec.ja[i]);}}ec.ja=ja;ec.dw=true;var eQ=new Date();var fV=eQ.getHours();var fi=fV;if(fV>12)fi=fV-12;if(fV==0)fi=12;var gR=eQ.getMinutes();if(gR<10)gR="0"+gR;fh=fi+":"+gR+" ";if(fV>11){fh+="PM";}else{fh+="AM";}g();jH=window.setTimeout("o()",500);if(je&&tooltip.marker.hC==hC){if(tooltip.type=="bus"){bp(tooltip.marker);}else{P(tooltip.marker.jb,true);}}if(fX&&fl.type=="route"&&fY==hC&&fZ!=null){aM(fZ,hC)}}