var map=null;var geocoder=null;var directions=null;var markerArray=new Array();var icon=new GIcon();icon.image="/shared/images/mapping_application/map_icon.png";icon.shadow="/shared/images/commercial/maps/shadow.png";icon.iconSize=new GSize(73,69);icon.shadowSize=new GSize(22,20);icon.iconAnchor=new GPoint(38,69);icon.infoWindowAnchor=new GPoint(0,0);var mapping_application={model:{left_column_container:"custom_left",map_container:"custom_map",directions_span:"directions_span",directions_overview_container:"directions_overview_container",directions_container:"directions_container",directions_commands_container:"directions_commands_container",primary_selector_container:"primary-selector-box",current_primary_selection:"",secondary_selector_container:"secondary-selector-box",current_secondary_selection:"",directions_from_event:false,user_requested_location:"",printWindow:"",callBackActions:[]},view:{showInfo:function(b){markerArray[b].showDetailWin();},plotPoint:function(g,h){var e=icon;(typeof h=="undefined")?e.image=icon.image:e.image=h;var f=new GLatLng(parseFloat(Number(g.lat)),parseFloat(Number(g.lon)));marker=new PdMarker(f,e);marker.setName(g.id);mapping_application.controller.createMarkerWindowContents(g,marker);map.addOverlay(marker);markerArray.push(marker);map.zoomToMarkers(50);if(map.getZoom()==4){map.setZoom(9);}},setDirectionsOverview:function(){},clearPoints:function(){for(var b=0;b<markerArray.length;b++){markerArray[b].remove();}markerArray=new Array();}},controller:{initialize_map:function(){if(GBrowserIsCompatible()){map=new GMap2(document.getElementById(mapping_application.model.map_container));map.addControl(new GLargeMapControl());map.addControl(new GMapTypeControl());directions=new GDirections(map,document.getElementById(mapping_application.model.directions_container));geocoder=new GClientGeocoder();map.setCenter(new GLatLng(37.0625,-95.677068),4);GEvent.addListener(directions,"load",mapping_application.controller.loadDirections);GEvent.addListener(directions,"error",mapping_application.controller.handleErrors);var b=$$("img");b.each(function(d,a){if((d.getProperty("src")=="http://www.google.com/intl/en_us/mapfiles/lmc.png")||(d.getProperty("src")=="http://www.google.com/intl/en_ALL/mapfiles/lmc.png")){d.setProperty("src","/shared/images/commercial/maps/controls_top.png");}if((d.getProperty("src")=="http://www.google.com/intl/en_us/mapfiles/lmc-bottom.png")||(d.getProperty("src")=="http://www.google.com/intl/en_ALL/mapfiles/lmc-bottom.png")){d.setProperty("src","/shared/images/commercial/maps/controls_bottom.png");}if((d.getProperty("src")=="http://www.google.com/intl/en_us/mapfiles/slider.png")||(d.getProperty("src")=="http://www.google.com/intl/en_ALL/mapfiles/slider.png")){d.setProperty("src","/shared/images/commercial/maps/slider.png");}});}},createMarkerWindowContents:function(f,e){var d="<div class='markerDetail'><div id='r1'><a class='infoWinCloseLink' href='#' onclick='javascript: map.pdMarkers["+(f.listPosition-1)+"].closeDetailWin();'>Close</a></div>";d+="<div id='r2'>	<div id='r2a'>		<p id='r2aname' >"+f.name+"</p>		<p id='r2aaddress1' >"+f.address1+"</p>		<p id='r2aaddress2' >"+f.city+", "+f.state+" "+f.zip+"</p><p><a href='#' onclick='javascript: mapping_application.controller.printMarker(); return false;'>Print Event</a></p>	</div>		<div id='r2b'>		<p id='r2aevent' >Event Description</p>		<p id='r2adesc' >"+f.description+"</p>	</div></div>";d+="<div id='r3'><div id=\"directions-wrapper\"><form action=\"javascript:mapping_application.controller.getDirections(document.directions.address.value, '"+mapping_application.controller.buildAddress(f)+'\', mapping_application.model.directions_from_event);" name="directions" method="get"><span class="info-window-subtitle">Get Directions:</span> <a id="to-here" class="off" href="javascript:mapping_application.controller.toggleToFrom(\'to-here\');">To Here</a> - <a id="from-here" class="on" href="javascript:mapping_application.controller.toggleToFrom(\'from-here\');">From Here</a><p class=\'sleader\'><span id="address-title">Start Address</span>&nbsp;&nbsp;&nbsp;<input id="fromAddress" name="address" ondblclick="mapping_application.controller.focusAllForm(this);" onclick="mapping_application.controller.focusForm(this);" type="text" value="Enter Address" name="from" size="28"/><input id="arrow" type="image" value="go" src="/shared/images/mapping_application/button.jpg"/></p></form></div></div>';d+="</div><div id='r4'>&nbsp;</div></div>";e.setDetailWinHTML(d);},onMarkerClick:function(b){},handleErrors:function(){if(directions.getStatus().code==G_GEO_UNKNOWN_ADDRESS){if($("error")==undefined){var b=new Element("span",{id:"error"}).injectInside($("directions-wrapper"));b.setHTML("Please Try Again. The address you entered can not be found, this may be due to the fact that the address is relatively new, or it may be incorrect.");}}},toggleToFrom:function(b){if(b=="to-here"){linkTrack("map","to-here");$("address-title").setText("Start Address");$("to-here").setProperty("class","off");$("from-here").setProperty("class","on");mapping_application.model.directions_from_event=false;}else{linkTrack("map","from-here");$("address-title").setText("End Address");$("to-here").setProperty("class","on");$("from-here").setProperty("class","off");mapping_application.model.directions_from_event=true;}console.log(mapping_application.model.directions_from_event);},buildAddress:function(b){return""+b.address1+", "+b.city+", "+b.state+" "+b.zip;},getDirections:function(f,d,e){linkTrack("map","enter_directions");if(f!="Enter Address"&&f!=""){mapping_application.model.user_requested_location=f;if(e==true){directions.load("from: "+d+" to: "+f);}else{directions.load("from: "+f+" to: "+d);}}},loadDirections:function(){closeOverlay.all();mapping_application.view.clearPoints();$("selectors_spans").setStyle("display","none");map.enableDragging();mapping_application.view.setDirectionsOverview();$(mapping_application.model.directions_span).setStyle("display","block");},turnOffDirections:function(){directions.clear();$("selectors_spans").setStyle("display","block");$(mapping_application.model.directions_span).setStyle("display","none");$(mapping_application.model.directions_container).innerHTML="";mapping_application_overrides.controller.onPrimarySelectorChange(mapping_application.model.current_primary_selection);},printDirections:function(){mapping_application.model.printWindow=window.open("print.html","print","width=800,height=850");mapping_application.model.callBackActions.push("mapping_application.controller.doOnloadPrintDirections()");},printMarker:function(){mapping_application.model.printWindow=window.open("print.html","print","width=800,height=850");mapping_application.model.callBackActions.push("mapping_application.controller.doOnloadPrintMarker()");linkTrack("map_marker","print_event");},doOnloadAction:function(){for(var i=0;i<mapping_application.model.callBackActions.length;i++){eval(mapping_application.model.callBackActions[i]);}mapping_application.model.callBackActions=[];},doOnloadPrintDirections:function(){var g=mapping_data.primary_events[mapping_application.model.current_primary_selection].secondary_events[mapping_application.model.current_secondary_selection];var f=mapping_application.controller.buildAddress(g);var h="";var e="";mapping_application.model.printWindow.setPoint(g);if(mapping_application.model.directions_from_event==true){h=mapping_application.model.user_requested_location;e=f;}else{h=f;e=mapping_application.model.user_requested_location;}mapping_application.model.printWindow.writeOverview();mapping_application.model.printWindow.getDirections(h,e);setTimeout("mapping_application.model.printWindow.print();",2000);},doOnloadPrintMarker:function(){mapping_application.model.printWindow.map.clearOverlays();var c=mapping_data.primary_events[mapping_application.model.current_primary_selection].secondary_events[mapping_application.model.current_secondary_selection];mapping_application.model.printWindow.setPoint(c);mapping_application.model.printWindow.writeOverview();var d="/shared/images/mapping_application/motorsports/marker"+c.listPosition+".png";mapping_application.model.printWindow.plotPoint(parseFloat(Number(c.lat)),parseFloat(Number(c.lon)),d);setTimeout("mapping_application.model.printWindow.print();",2000);},focusForm:function(b){b.focus();if(b.value=="Enter Address"){b.value="";}},focusAllForm:function(b){b.focus();b.select();}}};
