 var g_bIsIE=window.ActiveXObject;var gx=null;var gy=null;var da= -1.0;var db=null;var gz= -1;var gA=null;var ALERT_INFO_PAGE_IDX=3;var gF=false;var dc=null;var fa=false;var cQ=null;var io=null;var fc=false;var dm=null;var gC=null;var dx=false;var ge=null;var gg=false;var gB=null;var gD=null;var gE=null;var dz=false;var cR=null;var gH=false;var fY=null;var gG=new Array();gG[1]="\"Buggy\"";gG[2]="\"Buggy Convertable\"";gG[3]="\"VW Convertable\"";gG[4]="\"Silver Porsche\"";gG[5]="\"Golden Ferrary\"";var agt=navigator.userAgent.toLowerCase();var hq=(agt.indexOf("msie 6")!= -1);var fb=false;function X(gI){gI.onmouseover=function(){gI.style.color="#A78406";gI.style.backgroundImage="url('./grafx/button_roll.png')";};gI.onmouseout=function(){gI.style.color="#343E4D";gI.style.backgroundImage="url('./grafx/button.png')";}};function bt(){ab();delete dc;dc=null;gx=null;cU=null;fN=null;gy=null;da= -1.0;db=null;gz= -1;gF=false;dc=new Array();cQ=null;cP=null;cO=null;gA=null;};function n(){alert("A javascript error has occured!");};function bp(){gx=new CCalendarParams();Calendar.setup(gx);};function ce(a,b){var nRetVal=a+Math.random()*(b-a);return nRetVal;};function load(){K();bt();ap();gH=aY();if(!GBrowserIsCompatible()){return;}ge=new GTrafficOverlay();var gK=null;var dS=j("CurMapCenter");if(dS!=null&dS!=""){var aLtLg=dS.split(",");if(aLtLg.length==2){var dv=aLtLg[0];var du=aLtLg[1];gK=new GLatLng(parseFloat(dv),parseFloat(du));}}var zoom=14;var gN=j("Zoom");if(gN!=""){zoom=parseInt(gN);if(zoom<14){zoom=14;}}var gM=null;if(gK){gM=gK;}else{gM=new GLatLng(40.71449,-74.00713);}cU=new GMap2(document.getElementById("map"),{draggableCursor:'pointer'});fN=new GClientGeocoder();cU.addControl(new GLargeMapControl());var gL=document.createElement("div");gL.className="buttonHolder";gL.setAttribute("id","divMapTypeBtnHolder");cU.getContainer().appendChild(gL);gL.style.zIndex=0;gy=new am();cU.addControl(gy);J("Map","Show street map",aM);J("Satellite","Show satellite imagery",az);J("Hybrid","Show imagery with street names",aL);J("Traffic","Show current traffic flow (if data is availible)",at);gL.style.right="";GEvent.addListener(cU,"click",bC);cR=new Clusterer(cU);cR.SetMaxVisibleMarkers(50);bp();C();gA=new bT("co","gA");gA.cf(1);gA.cj(ALERT_INFO_PAGE_IDX,false);cU.setCenter(gM,zoom);aW();cU.addOverlay(ge);ge.hide();GEvent.addListener(cU,'zoomend',aN);GEvent.addListener(cU,'moveend',bJ);var gJ=j("Addr");if(gJ==""){gJ=aV("Addr");}if(gJ==""){gJ="New York, NY, US";}document.getElementById("address").value=gJ;if(j("AddrCenter")!=""){dm=new O();dm.dV();if(cU.isLoaded()&&cU.getCenter().distanceFrom(dm.dI)>2000){if(cU.getCenter().distanceFrom(dm.dI)>50000){gJ="";document.getElementById("address").value="";dm.Reset();dm.dT();delete dm;dm=null;}else{dm.dJ="";dm.dI=cU.getCenter();dm.dT();}}}else{fb=true;d(gJ);return;}if(zoom>=12){A(false,true);}};function D(){var lstEventType=document.getElementById("lstEventType");var hS=(lstEventType.value!="eGeneric"&&lstEventType.value!="");w("lstWhen",hS);w("lblWhen",hS);w("lstDelay",hS);w("lblDelay",hS);};function v(){var lstEventType=document.getElementById("lstEventType");var lstAlertCause=document.getElementById("lstAlertCause");var hS=(lstEventType.value=="eGeneric"&&lstEventType.value!="");hS=hS&&(lstAlertCause.value!=""&&lstAlertCause.value=="eRoadWorks"||lstAlertCause.value=="eRoadClosed"||lstAlertCause.value=="eLaneReductions");w("lblSince",hS);w("edtSince",hS);w("lnkClearEdtSince",hS);w("lblUntil",hS);w("edtUntil",hS);w("lnkClearEdtUntil",hS);};function R(){var lstEventType=document.getElementById("lstEventType");var lstAlertCause=document.getElementById("lstAlertCause");if(lstEventType.value=="eGeneric"){H(lstAlertCause,"eUnknown");}else{P(lstAlertCause,"Unknown","eUnknown");}if(lstEventType.value=="eSlow"){H(lstAlertCause,"eRoadClosed");}else{P(lstAlertCause,"Road closed","eRoadClosed",4);}C();D();v();if(cQ){cQ.eM(lstEventType.value,lstAlertCause.value);}};function M(){var lstAlertCause=document.getElementById("lstAlertCause");var lstEventType=document.getElementById("lstEventType");if(lstAlertCause.value=="eUnknown"){H(lstEventType,"eGeneric");}else{P(lstEventType,"Other","eGeneric");}if(lstAlertCause.value=="eRoadClosed"){H(lstEventType,"eSlow");}else{P(lstEventType,"Traffic moving slowly","eSlow",1);}v();C();if(cQ){cQ.eM(lstEventType.value,lstAlertCause.value);}};function H(gQ,sOptionVal){for(var i=0;i<gQ.options.length;i++){if(gQ.options[i].value==sOptionVal){gQ.options[i]=null;}}};function P(gQ,sOptionName,sOptionVal,nOptIdx){var fo=false;for(var i=0;i<gQ.options.length&& !fo;i++){if(gQ.options[i].value==sOptionVal){fo=true;}}if(!fo){if(nOptIdx==undefined)nOptIdx=i;var oNewOption=new Option(sOptionName,sOptionVal);var oOptOld=null;if(nOptIdx<gQ.options.length){oOptOld=gQ.options[nOptIdx];}try{gQ.add(oNewOption,oOptOld);}catch(ex){gQ.add(oNewOption,nOptIdx);}}};function B(){C();};function w(sObjID,hS){if(document.getElementById(sObjID)){var sShow=hS?'block':'none';var oObj=document.getElementById(sObjID);if(oObj){oObj.style.display=sShow;}}};function cc(sObjID){if(document.getElementById(sObjID)){var oObj=document.getElementById(sObjID);var hS=(oObj.style.display=='block')?false:true;var sShow=hS?'block':'none';oObj.style.display=sShow;}};function bM(){bG();if(!bQ()){return;}if(fc&& !cQ.eC){g("The alert marker was not moved from it's initial (random) position.<br/>Please drag the marker to actual alert location.","Alert location error.",ICO_ERROR);if(hq){var lstEventType=document.getElementById("lstEventType");var lstAlertCause=document.getElementById("lstAlertCause");var eD=(lstAlertCause.value!="")?lstAlertCause.value:"eUnknown";var eI=(lstEventType.value!="")?lstEventType.value:"eSlow";cQ.eM(eI,eD);}return;}ay();if(!aK()){g("There was a communication problem saving your information.","The alert was not saved.",ICO_ERROR);return;}};function bG(){if(!cQ){return;}cQ.ed=document.getElementById("lstEventType").value;cQ.er=document.getElementById("edtAdditionalInfo").value;cQ.el=document.getElementById("lstDirection").value;cQ.eq=document.getElementById("lstDelay").value;if(cQ.ef==""){if(gB!=null&&gB!=undefined&&gB.gT!=""){cQ.ef=gB.gT;cQ.ef+="--><--"+gB.gW;}else{cQ.ef="Guest";}}cQ.ek=document.getElementById("lstAlertCause").value;var hX="Null";var hY="Null";var aq=new Date();var bW=new Date();var hC=false;if(cQ.ed!="eGeneric"){var nDelta=document.getElementById("lstWhen").value;aq.setTime(aq.getTime()-nDelta);bW.setTime(aq.getTime()+7200000);}else{switch(cQ.ek){case "eBadRoad":bW.setDate(aq.getDate()+7);break;case "eBadRoadWeather":bW.setDate(aq.getDate()+1);break;case "eAccident":bW.setTime(aq.getTime()+7200000);break;case "eRoadWorks":case "eRoadClosed":case "eLaneReductions":hC=true;var sSince=document.getElementById("edtSince").value;var sUntil=document.getElementById("edtUntil").value;if(sSince!="--- Unknown ---"){aq=new Date(sSince);}if(sUntil!="--- Unknown ---"){bW=new Date(sUntil);}else{var nNumOfDaysTillExpiration=1;if(cQ.ek=="eRoadWorks"||cQ.ek=="eLaneReductions")nNumOfDaysTillExpiration=7;bW.setDate(aq.getDate()+nNumOfDaysTillExpiration);}var hK=new Date();hK.setTime(aq.getTime()+(aq.getTimezoneOffset()*60000));var hJ=new Date();hJ.setTime(bW.getTime()+(bW.getTimezoneOffset()*60000));hX=aU(hK);hY=aU(hJ);break;default:break;}}if(fc||hC){cQ.eb=aq;cQ.eu=hX;}cQ.ei=bW;cQ.eA=hY;var fj=new Date();cQ.en=(aq>fj);};function bQ(){if(!cQ){g("Internal application error.","Error",ICO_ERROR);return false;}var hz=true;if(cQ.eb>=cQ.ei){g("The alert beginning date is set past the ending date.","Please choose correct dates.",ICO_WARNING);hz=false;}if(cQ.ed=="eRoadWorks"||cQ.ed=="eRoadClosed"){fj=new Date();if(cQ.eb<fj){g("The alert beginning is set to a past date.","Please choose correct date.",ICO_WARNING);hz=false;}}if(!cQ.eJ()){g("You have not selected the location for your alert.","Please click on a map to specify the location.",ICO_WARNING);hz=false;}return hz;};function bE(obj,hA){if(hA){obj.setAttribute('href',obj.attributes['href_bak'].nodeValue);obj.style.color="blue";}else{var href=obj.getAttribute("href");if(href&&href!=""&&href!=null){obj.setAttribute('href_bak',href);}obj.removeAttribute('href');obj.style.color="gray";}};function aR(){gx.inputField=document.getElementById("edtSince");ShowCalendar(gx);};function aQ(){gx.inputField=document.getElementById("edtUntil");ShowCalendar(gx);};function bN(form){if(form){var sOrgAddrVal=document.getElementById("address").value;form.reset();document.getElementById("address").value=sOrgAddrVal;}var edtInfo=document.getElementById("edtAdditionalInfo");if(edtInfo){edtInfo.value="";}ag("lblAlertType","red");ag("lblDirection","red");C();v();D();};function K(){var oForm=document.getElementById("Form1");bN(oForm);if(hq!=undefined&&hq==true&&cQ){var lstEventType=document.getElementById("lstEventType");var lstAlertCause=document.getElementById("lstAlertCause");var eD=(lstAlertCause.value!="")?lstAlertCause.value:"eUnknown";var eI=(lstEventType.value!="")?lstEventType.value:"eSlow";cQ.eM(eI,eD);}};function ak(sDateField){var edtDateField=document.getElementById(sDateField);if(edtDateField){edtDateField.value="--- Unknown ---";}};function C(){var lstEvent=document.getElementById("lstEventType");var lslAlertCause=document.getElementById("lstAlertCause");var lstDirection=document.getElementById("lstDirection");var hG=(lstEvent.value!="");var hE=(lslAlertCause.value!="");var hF=(lstDirection.value!="");ag("lblAlertType",hG?"#545c69":"red");ag("lblDirection",hF?"#545c69":"red");ag("lblAlertCause",hE?"#545c69":"red");var hH=(hG&&hF&&hE);var lnkBtn=document.getElementById("btnLnkSave");bk(hH);bE(lnkBtn,hH);};function bk(hA){var imgSave=document.getElementById("imgSave");if(!hA){imgSave.src="./img/save_disabled.gif";imgSave.onmouseover=null;imgSave.onmouseout=null;}else{imgSave.src="./img/save.gif";imgSave.onmouseover=aX;imgSave.onmouseout=bu;}};function aX(){this.src="./img/save_roll.gif";};function bu(){this.src="./img/save.gif";};function aU(dtDate){var nMonth=dtDate.getMonth()+1;var sMonth=(nMonth<10)?("0"+nMonth):nMonth;var dQ=dtDate.getYear()+"-"+sMonth+"-"+dtDate.getDate()+" "+dtDate.getHours()+":"+dtDate.getMinutes()+":"+dtDate.getSeconds();return dQ;};function ae(){};function aB(hL){var dQ="";switch(hL){case "eNorth":dQ="Northbound";break;case "eSouth":dQ="Southbound";break;case "eWest":dQ="Westbound";break;case "eEast":dQ="Eastbound";break;case "eAll":dQ="All";break;}return dQ;};function ag(sObjName,sColor){objToChange=document.getElementById(sObjName);if(objToChange){objToChange.style.color=sColor;}};function U(hZ){hZ=hZ.replace(/&/g,"&amp;");hZ=hZ.replace(/\"/g,"&quot;");hZ=hZ.replace(/>/g,"&gt;");hZ=hZ.replace(/</g,"&lt;");return hZ;};function au(){if(!gA){return;}var nCurSel=gA.ci();if(nCurSel==ALERT_INFO_PAGE_IDX){return;}if(!gy){return;}gy.SetEditMode(true);};function bj(){if(!gA){return;}var nCurSel=gA.ci();if(nCurSel==ALERT_INFO_PAGE_IDX){return;}};function bi(){if(!gA){return;}var nCurSel=gA.ci();if(nCurSel==ALERT_INFO_PAGE_IDX){return;}{var ig=j("Username");var ic=j("Password");if(!ig|| !ic){o("divMyTjLogin");return;}else{F(ig,ic);return;}}};function bz(){var hy=(fc==true);an(hy);};function ba(){var fQ="Remove alert";var il="You are about to permanently remove the alert.\nAre you sure?";var gS={Header:fQ,Text:il,IconType:ICO_QUESTION,Buttons:[{text:"Yes",handler:aI},{text:"No",handler:aJ,mapclose:true}]};var gR=new aC(gS);gR.Init();gR.Show();};function aI(gR){gR.Close();fa=true;al();};function aJ(gR){gR.Close();};function aw(){if(cQ==null&&io!=null){cQ=io;io=null;}fa=true;gy.gb("Cancel");gA.cg(1,false);gA.cg(2,false);gA.cj(ALERT_INFO_PAGE_IDX,true);gA.cf(ALERT_INFO_PAGE_IDX);if(fc){bl(aZ());}else{if(cQ){cQ.eW();}aT();}cU.closeInfoWindow();};function an(hy){if(!cQ){n();return;}fa=false;gy.gb("Jot New Alert&nbsp;&nbsp;&nbsp;");gA.cj(ALERT_INFO_PAGE_IDX,false);gA.cg(1,true);gA.cg(2,true);gA.cf(2);gA.cf(1);if(hy){cR.RemoveMarker(cQ.eJ());delete cQ;}else{cQ.eY();}cQ=null;fc=false;K();};function bL(hT){if(dc[hT]==undefined){return null;}return dc[hT];};function ab(){if(!dc||dc.length==0){return;}var fX;for(fX in dc){dc[fX].fw();}dc.length=0;};function aT(){if(!cQ){return;}var eI="eGeneric";if(cQ.ed!=""&&cQ.ed!=undefined){eI=cQ.ed;}document.getElementById("lstEventType").value=eI;document.getElementById("edtAdditionalInfo").value=cQ.er;document.getElementById("lstDirection").value=cQ.el;document.getElementById("lstDelay").value=cQ.eq;document.getElementById("lstAlertCause").value=cQ.ek;document.getElementById("edtLocation").value=cQ.eh.dJ;if(cQ.ed=="eGeneric"){switch(cQ.ek){case "eRoadWorks":case "eRoadClosed":case "eLaneReductions":document.getElementById("edtSince").value=formatDate(cQ.eb,"E, MMM d, y,hh:mm a");document.getElementById("edtUntil").value=formatDate(cQ.ei,"E, MMM d, y,hh:mm a");break;default:break;}}C();D();v();};function bs(){aw();};function V(){if(!cQ){return;}cQ.eC=true;if(dm){if(cQ.dY.getPoint().distanceFrom(dm.dI)<=200){if(document.getElementById("edtLocation").value!=dm.dJ){document.getElementById("edtLocation").value=dm.dJ;}return;}else{if(document.getElementById("edtLocation").value==dm.dJ){document.getElementById("edtLocation").value="";}}}};function r(){if(!gC){gC=new bm();gC.Init();}gC.Show();};function t(){if(!gC){return;}gC.Hide();};function g(sAlertText,fg,fh){var gS={Header:fg,Text:sAlertText,IconType:fh};var gR=new aC(gS);gR.Init();gR.Show();};function bP(){var gf=(cU.getBounds().getSouthWest().distanceFrom(cU.getBounds().getNorthEast()))/1000;var gj=gf*0.621371192;var divRadius=document.getElementById("divRadius");divRadius.innerHTML="Alerts in radius: "+gj.toPrecision(2)+" mile ("+gf.toPrecision(2)+" km)<br>";};function f(xmlNode){var dQ="";if(g_bIsIE){dQ=xmlNode.nodeTypedValue;}else{dQ=xmlNode.textContent;}return dQ;};function bK(){o("divMyTjRegister");};function o(hW){var divObj=document.getElementById("divMyTjLogin");divObj.style.display=(hW=="divMyTjLogin")?"block":"none";divObj=document.getElementById("divMyTjRegister");divObj.style.display=(hW=="divMyTjRegister")?"block":"none";divObj=document.getElementById("divMyTjUserDetails");divObj.style.display=(hW=="divMyTjUserDetails")?"block":"none";divObj=document.getElementById("divMyTJChangeDetails");divObj.style.display=(hW=="divMyTJChangeDetails")?"block":"none";divObj=document.getElementById("divMyTJPasswordRecovery");divObj.style.display=(hW=="divMyTJPasswordRecovery")?"block":"none";};function bS(){o("divMyTjLogin");gA.cf(1);};function ah(hV){return(hV.indexOf(".")>2)&&(hV.indexOf("@")>0);};function bF(){var ih=document.getElementById("edtRegisterUserName").value;var ic=document.getElementById("edtRegisterPassword").value;var hV=document.getElementById("edtRegisterEmail").value;if(!ih){g("Please enter username.","Incomplete user information.",ICO_ERROR);return;}if(!hV){g("Please enter an e-mail address.","Incomplete user information.",ICO_ERROR);return;}if(!ah(hV)){g("Invalid e-mail address.","Bad user information.",ICO_ERROR);return;}if(!ic){g("Please enter a password.","Incomplete user information.",ICO_ERROR);return;}ao(ih,ic,hV);};function aV(ie){var ik=window.document.URL.toString();if(ik.indexOf("?")>0){var arrParams=ik.split("?");if(arrParams.length==0){return "";}var arrURLParams=arrParams[1].split("&");for(i=0;i<arrURLParams.length;i++){var vParam=arrURLParams[i].split("=");var sParamName=vParam[0];if(sParamName==ie){if(vParam[1])return unescape(vParam[1]);else return "";}}}else{return "";}};function Q(){if(gB==undefined||gB==null){o("divMyTjLogin");return;}document.getElementById("lblUserDetailsUserName").innerHTML=gB.gT;document.getElementById("lblUserDetailsEmail").innerHTML=gB.gV;document.getElementById("lblUserDetailsCreditPoints").innerHTML=gB.gY;document.getElementById("lblUserDetailsAlertsAdded").innerHTML=gB.gX;var gO="./img/rank_"+gB.gW+".gif";document.getElementById("imgRank").src=gO;document.getElementById("imgRank").title="Rank level "+gB.gW+"\n"+gG[gB.gW];document.getElementById("lblUserDetailsRankLevel").innerHTML=gB.gW+" - "+gG[gB.gW];o("divMyTjUserDetails");};function bX(){var ig=document.getElementById("edtLoginUserName").value;var ic=document.getElementById("edtLoginPassword").value;F(ig,ic);};function bR(){if(gB==null||gB==undefined){return;}gB.Reset();gB.dT();delete gB;gB=null;o("divMyTjLogin");};function av(){o("divMyTJPasswordRecovery");};function ar(){var hV=document.getElementById("edtPasswordRecoveryEmail").value;if(hV==""|| !ah(hV)){g("Please enter valid email address.","Email is invalid",ICO_ERROR);return;}aD(hV);};function ax(){var hV=document.getElementById("edtChangeDetailsEmail").value;if(!ah(hV)||hV==""){g("Please enter valid email address.","Email is invalid",ICO_ERROR);return;}var sCurrPassword=document.getElementById("edtChangeDetailsOldPassword").value;if(sCurrPassword==""||sCurrPassword!=gB.gU){g("Your current password is not correct.<br>Please enter correct password.","Wrong password.",ICO_ERROR);return;}var sNewPassword=document.getElementById("edtChangeDetailsNewPassword").value;var ig=document.getElementById("lblChangeDetailsUserName").innerHTML;aa(ig,hV,sCurrPassword,sNewPassword);};function aH(){var ig=gB.gT;var lblUserName=document.getElementById("lblChangeDetailsUserName");lblUserName.innerHTML=ig;document.getElementById("edtChangeDetailsEmail").value=gB.gV;document.getElementById("edtChangeDetailsOldPassword").value="";document.getElementById("edtChangeDetailsNewPassword").value="";o("divMyTJChangeDetails");};function aW(){var ig=j("Username");var ic=j("Password");if(!ig|| !ic){return;}gB=new bq();F(ig,ic);};function bY(sObjAlignID,sObjBodyID){var oOverlay=new YAHOO.widget.Overlay(sObjBodyID,{context:[sObjAlignID,"tl","bl"],visible:false});oOverlay.cfg.setProperty("context",[sObjAlignID,"tl","bl"]);oOverlay.render(document.body);return oOverlay;};function aP(bUS){var sAnchorID=bUS?"lnkUsCities":"lnkCaCities";var divBodyData=bUS?document.getElementById("divUsCities"):document.getElementById("divCanadaCities");var sHeader=bUS?"US Major Cities":"Canada Major Cities";G(sAnchorID,sHeader,divBodyData.innerHTML,bUS?"400px":"300px",false);};function bV(){var sAnchorID=document.getElementById();var divBodyData=document.getElementById("divWhyRegister");G("lnkWhyRegister","Why becoming a registered TrafficJot user.",divBodyData.innerHTML,"400px",false);fY.cfg.setProperty('context',["lnkWhyRegister",'tr','br']);};function ap(){fY=new YAHOO.widget.Panel("TjInfoPanel",{close:true,visible:false,draggable:false});fY.setHeader('Dynamic!');fY.setBody('Body');fY.render(document.body);};function G(sAnchorID,sHeader,sBody,sWidth,hM){if(!fY)ap();fY.cfg.setProperty('context',[sAnchorID,'tl','bl']);fY.setHeader(sHeader);fY.setBody(sBody);if(hM){fY.element.onmouseout=aG;}else{fY.element.onmouseout=null;}if(sWidth){fY.cfg.setProperty('width',sWidth);}fY.show();};function bZ(sLnkId,hA){var gP=document.getElementById(sLnkId);if(!gP){return;}gP.style.cursor=hA?"pointer":"default";gP.style.color=hA?"#38794C":"Gray";};function aG(e){if(!g_bIsIE){return;}var oMouseon=g_bIsIE?window.event.toElement:e.target;var bElementInside=g_bIsIE?fY.element.contains(oMouseon):aO(fY.element,oMouseon);if(!bElementInside){fY.hide();}};function aO(oHtmlElem,oElemToFind){if(oHtmlElem.nodeType==1){var hR=(oHtmlElem.id==oElemToFind.parentNode.id||(oHtmlElem.id.search(oElemToFind.parentNode.id)>=0));return hR;}var children=oHtmlElem.childNodes;for(var i=0;i<children.length;i++){var hz=aO(children[i],oElemToFind);if(hz){return true;}}return false;};function ai(e){var nKeycode=0;if(g_bIsIE)nKeycode=window.event.keyCode;else nKeycode=e.which;if(nKeycode==13){d();}};function aF(){gA.cf(2);bK();}
