var submitted=false;var pointshown=false;var selected_marker;var map;var mcfg=new Object();mcfg.pp=8;mcfg.dfzoom=12;letters=new Array;letters[0]="a";letters[1]="b";letters[2]="c";letters[3]="d";letters[4]="e";letters[5]="f";letters[6]="g";letters[7]="h";letters[8]="i";letters[9]="j";active_markers = new Array;global_markers=new Array;global_locations=new Array;var use_filters=false;first_load=true;function gmap_directions(){var to_addr=selected_marker.dir_to;submit_gmap_form("",to_addr);}function addStore(point,mdata,marknum){var image="img/icon/kor/letter_"+letters[marknum]+".png";var marker=new google.maps.Marker({position:point,visible:true,clickable:true,icon:image,title:unescape(mdata.name)});marker.info=new Object();if(mdata.url!=""){marker.info.address='<h3><a href="'+mdata.url+'" target="_blank">'+unescape(mdata.name)+"</a></h3>";}else{marker.info.address="<h3>"+unescape(mdata.name)+"</h3>";}marker.info.address=marker.info.address+"<p>"+mdata.address+"<br >"+mdata.city+", "+mdata.state+" "+mdata.zip+"<br >"+mdata.phone+"</p>";marker.info.address=marker.info.address+"<p>"+mdata.distance+' miles <a href="#" class="dir" onclick="gmap_directions();return false">Get directions</a></p>';marker.dir_to=mdata.address+" "+mdata.city+", "+mdata.state+" "+mdata.zip;marker.iid=marknum;google.maps.event.addListener(marker,"click",function(){show_custom_info_window(marker);activate_marker(global_locations[marker.iid]);});var location=document.createElement("li");var class_names="";location.iid=marknum;location.id="location_"+marknum;if($("results_list li").length==0){class_names+=" first";}location.style.className=class_names;if(!use_filters){var letter_image=document.createElement("img");letter_image.className="letter";letter_image.alt=letters[marknum];letter_image.src="img/icon/kor/dot_"+letters[marknum]+".png";}else{var letter_image=document.createElement("span");letter_image.title=letters[marknum];letter_image.style.display="block";letter_image.style.width="21px";letter_image.style.height="35px";var letter_image_src="img/icon/letter_"+letters[marknum]+".png";letter_image.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+letter_image_src+"', sizingMethod='scale')";letter_image.className="letter";}$(location).append(letter_image);var title=document.createElement("h4");title.appendChild(document.createTextNode(title));title.firstChild.nodeValue=unescape(mdata.name);$(location).append(title);var address=document.createElement("p");address.innerHTML=mdata.address+"<br >"+mdata.city+", "+mdata.state+" "+mdata.zip;address.innerHTML+="<br >"+mdata.phone;$(location).append(address);global_locations[location.iid]=location;$("#store_list").append(location);highlight_locations();global_markers[marknum]=marker;return marker;}function init_map(data,start){mcfg.xml=data;mcfg.first=true;show_stores(start);}function show_stores(start){var xml=mcfg.xml;var center=xml.default_location;map.setCenter(new google.maps.LatLng(center.lat,center.lng));map.setZoom(center.zoom);if(xml.results.length>0){$("#store_list").addClass("locations");var locstr=center.heading;$("#results_heading").html(locstr);var markers=xml.results;var bounds=new google.maps.LatLngBounds;var arrMarkers=[];if(markers.length<=mcfg.pp||(start+mcfg.pp)>=markers.length){end=markers.length;}else{end=start+mcfg.pp;}var marknum=0;for(var i=start;i<end;i++){var point=new google.maps.LatLng(parseFloat(markers[i].lat),parseFloat(markers[i].lng));var marker=addStore(point,markers[i],marknum++);arrMarkers.push(marker);bounds.extend(point);}for(i in arrMarkers){arrMarkers[i].setMap(map);}if(mcfg.first){$("#pages_bb").html("");var pgs=Math.ceil(markers.length/mcfg.pp);mcfg.max=markers.length;if(pgs>1){pp_prev=document.createElement("a");pp_prev.appendChild(document.createTextNode("<< "));pp_prev.href="javascript:void()";pp_prev.onclick=function(){dopage(0);return false;};$("#pages_bb").append($(pp_prev));for(i=1;i<=pgs;i++){var pp=document.createElement("a");pp.appendChild(document.createTextNode(" "+i+" "));pp.href="javascript:void()";pp.id="pp_"+i;pp.val=(i-1)*mcfg.pp;pp.onclick=function(){dopage(1,this.val);return false;};$("#pages_bb").append(pp);mcfg.maxp=i;}pp_next=document.createElement("a");pp_next.appendChild(document.createTextNode(" >>"));pp_next.className="next";pp_next.href="javascript:void()";pp_next.id="pp_next";$("#pages_bb").append(pp_next);$("#pp_next").bind("click",function(){dopage(1);return false;});mcfg.first=false;mcfg.pg_num=1;}}else{$("#pp_"+mcfg.pg_num).removeClass("pp_sel");mcfg.pg_num=(page_num+1);}active_markers = arrMarkers;$("#pp_"+mcfg.pg_num).addClass("pp_sel");map.setCenter(new google.maps.LatLng((bounds.getSouthWest().lat()+bounds.getNorthEast().lat())/2,(bounds.getSouthWest().lng()+bounds.getNorthEast().lng())/2));var zm=map.getZoom();if(zm>mcfg.dfzoom){zm=mcfg.dfzoom;}map.fitBounds(bounds);}else{if(xml.getElementsByTagName("noresults").length>0){document.getElementById("results_heading").innerHTML="No Results Found";$("#store_list").className="noresults";var noresult=document.createElement("div");var message=xml.documentElement.getElementsByTagName("message")[0];noresult.innerHTML=message.firstChild.nodeValue;$("#store_list").append(noresult);}}}function load_map_initial(){first_load=false;if(GBrowserIsCompatible()){Element.show("gmap","map_legend");map=new GMap2(document.getElementById("map"));map.addControl(new GLargeMapControl());map.addControl(new GScaleControl());map.setCenter(new google.maps.LatLng(37.926868,-97.294922));map.setZoom(3);}}$(window).load(function(){load_map_initial;});selected_location=false;function highlight_locations(){var locations=$("#store_list li");for(i=0;i<locations.length;i++){var location=locations[i];location.onmouseover=function(){$(this).addClass("hover");};location.onmouseout=function(){$(this).removeClass("hover");};location.onclick=function(){activate_marker(this);};}}$(window).load(function(){highlight_locations;});function activate_marker(el){if(selected_location==el){return false;}$(el).addClass("selected");show_custom_info_window(global_markers[el.iid]);if(selected_location){$(selected_location).removeClass("selected");}selected_location=el;}function deactivate_marker(el){$(el).removeClass("selected");selected_location=false;}function set_advsearch_slider(){if(!$("advsearch")){return false;}$("advsearch").onclick=function(){if(!this.active){if(is_ie){Effect.BlindDown("advsearch-content",{afterFinish:function(){$("advsearch-content").style.height="1%";}});}else{Effect.BlindDown("advsearch-content");}Element.addClassName(this,"active");this.active=true;return false;}else{Effect.BlindUp("advsearch-content");Element.removeClassName(this,"active");this.active=false;return false;}};}$(window).load(function(){set_advsearch_slider;});query=false;page_num=false;function set_search_form(){if(!$("search_form")){return false;}}var dosearch=function(){if(!submitted){submitted=true;$("#store_list").html("");$("#overlay").remove();$("#results_heading").html("<small>Searching...</small>");pointshown=false;var url="cms/sf/xml";$.post(url,$("#f_search").serialize(),checkResults,"json");}return false;};var checkResults=function(data){submitted=false;init_map(data,0);};$(window).load(function(){set_search_form();});function dopage(n,nn){$("#store_list").html("");if(!nn){if(n){page_num++;}else{page_num--;}nn=page_num*mcfg.pp;}else{page_num=nn/mcfg.pp;}if(nn>mcfg.max){nn=0;page_num=0;}else{if(nn<0){page_num=mcfg.maxp;nn=mcfg.maxp*mcfg.pp;}}for(i in active_markers){ active_markers[i].setMap(null);}show_stores(nn);}function change_tab(element,type){var my_window=$("overlay");var my_tab=$("overlay_tab");var alltabs=my_window.getElementsByTagName("ul")[0];var tabs=element.parentNode.parentNode.getElementsByTagName("a");for(i=0;i<tabs.length;i++){tab=tabs[i];Element.removeClassName(tab,"selected");}Element.addClassName(element,"selected");if(type=="services"){Element.removeClassName(alltabs,"tabs");Element.addClassName(alltabs,"tabs2");my_tab.innerHTML=my_window.marker.info.services;}else{Element.removeClassName(alltabs,"tabs2");Element.addClassName(alltabs,"tabs");my_tab.innerHTML=my_window.marker.info.address;}position_window(my_window,my_window.marker);return false;}function close_window(){$("#gmap_overlay").css("display","none");mcfg.hideinfo=true;deactivate_marker(selected_location);return false;}function show_custom_info_window(marker){var content=marker.info.address;mcfg.hideinfo=false;map.setCenter(marker.getPosition());var infobox=new SmartInfoWindow({position:marker.getPosition(),map:map,content:content,div:"gmap_overlay"});}function submit_gmap_form(from_addr,to_addr){var q="";if(from_addr){q="from: "+from_addr+" ";}if(to_addr){q+="to: "+to_addr;}$("#dir_qstring").attr("value",q);$("#f_directions").submit();return false;}function SmartInfoWindow(opts){google.maps.OverlayView.call(this);this.latlng_=opts.position;this.content_=opts.content;this.map_=opts.map;this.divid=opts.div;this.height_=351;this.width_=280;this.size_=new google.maps.Size(this.height_,this.width_);this.offsetVertical_=-this.height_;this.offsetHorizontal_=0;this.panned_=false;this.setMap(this.map_);var me=this;google.maps.event.addListener(this.map_,"bounds_changed",function(){me.draw();});return $("#"+this.divid);}SmartInfoWindow.prototype=new google.maps.OverlayView();SmartInfoWindow.prototype.onRemove=function(){if(this.div_){this.div_.parentNode.removeChild(this.div_);this.div_=null;}};SmartInfoWindow.prototype.onAdd=function(){this.createElement();};SmartInfoWindow.prototype.draw=function(){if(!this.getProjection()||mcfg.hideinfo==true){return;}var pixPosition=this.getProjection().fromLatLngToDivPixel(this.latlng_);if(!pixPosition){return;}var yy=parseInt(pixPosition.y)-$(this.div_).height()-28;var xx=parseInt(pixPosition.x)-72;$(this.div_).css({display:"block",left:xx,top:yy});};SmartInfoWindow.prototype.createElement=function(){var panes=this.getPanes();var div=$("#"+this.divid);$("#"+this.divid+" div.inside").attr("id","overlay_info");pointshown=true;$("#overlay_info").html(this.content_);var my_window=$("#"+this.divid);var winsel="#"+this.divid;this.div_=$("#"+this.divid);var dom=document.getElementById(this.divid);panes.floatPane.appendChild(dom);};SmartInfoWindow.mouseFilter=function(e){e.returnValue="true";e.handled=true;};SmartInfoWindow.prototype.close=function(){this.setMap(null);};
