function Directory(n){var p;if(n.bShowOnlyOneOrg){p="detail"}else{p="browse"}var q='/Modules/FrontPage/Directory/Map/GetXMLData.aspx?';if(n.GroupID){q+='gid='+n.GroupID+'&'}function cP(a){return n.ClientID+a}var r=function(a,b){loadURLToInnerHTML("/Modules/FrontPage/Directory/DirectoryDetailsHTML.aspx?mal="+urlEncode(n.MainAddressLabel)+"&aal="+urlEncode(n.AltAddressLabel)+"&id="+a+"&od="+urlEncode(n.OrgDescription)+"&hcisas="+n.HideCountryIfSameAsSite,cP("_OrgDetail"),cP("_arptOrgs_loadingDiv"));if(p==="browse"){y("detail")}else if(p==="search"){y("search-detail")}else if(p==="nearest"){y("nearest-detail")}if(b&&K){K(a)}};this.showOrgDetail=r;if(!n.bShowOnlyOneOrg){var s=function(){var a=el(n.SearchBoxID);if(a&&a.value!==''&&a.value.length>1){loadXMLDocAndCall(q+'search='+urlEncode(a.value),t)}else{alert('Please enter a search string of at least 2 characters.')}};this.SubmitSearch=s;var t=function(a){if(a===""){alert("Sorry, your search returned no results.")}else if(a==="__SEARCH_STRING_INSUFFICIENT__"){alert("Your search only contained very common words. Please try less common words.")}else if(a==="__TOO_MANY_RESULTS__"){alert("Your search returned too many results. Try a more exact search.")}else if(a==="__CACHE_EXPIRED__"){document.location=document.location}else{n.Repeater.filterByIDs(a);y("search");if(n.bShowMap){var b=a.split(','),i,zoomTo=[];for(i=0;i<b.length;i++){if(orgMarkers[b[i]]){zoomTo[i]=orgMarkers[b[i]]}}H(zoomTo)}}};var u=function(){var a=el(n.MyNearestBoxID);if(a&&a.value!==''&&a.value.length>1){loadXMLDocAndCall(q+'location='+urlEncode(a.value),w)}else{alert('Please enter your location.')}};this.SubmitMyNearest=u;var v=function(a,b,c){if(!c){c=1}if(a&&b){loadXMLDocAndCall(q+'lat='+urlEncode(a)+'&long='+urlEncode(b)+'&page='+c,w)}};this.PageMyNearest=v;var w=function(a){if(a===""){alert("The location wasn't recognized, please try another.")}else if(a==="__CACHE_EXPIRED__"){document.location=document.location}else{var b=eval('('+a+')');var c=b.orgs;var d=b.page;var e=b.lat;var f=b.long;var g=d+1;var h=d-1;var j=el(cP("_MyNearestDisplay"));j.innerHTML="<table border='0' width='100%'><tbody></tbody></table>";var k=j.childNodes[0];k.style.borderCollapse="collapse";var l=k.childNodes[0];var m=[],i;for(i=0;i<c.length;i++){if(n.bShowMap){if(orgMarkers[c[i].orgid]){m[i]=orgMarkers[c[i].orgid]}}var o=c[i];x(o.id,o,l)}j.innerHTML+="Showing: "+(c[0].id+1)+" to "+(o.id+1)+" of "+b.count+" ";if(d!=1){j.innerHTML+="<a href=\"javascript:"+cP('_Directory')+".PageMyNearest("+e+", "+f+", "+h+")\">Previous</a>"}if(d!=1&&!b.lastPage){j.innerHTML+=" | "}if(!b.lastPage){j.innerHTML+="<a href=\"javascript:"+cP('_Directory')+".PageMyNearest("+e+", "+f+", "+g+")\">Next</a>"}if(n.bShowMap){H(m)}y("nearest")}};var x=function(a,o,b){var c=document.createElement("TR");c.className=(a%2===0?'GridItemrow':'altGridItemrow');var d=c.appendChild(document.createElement("TD"));d.className="griditem";d.setAttribute("width","20");d.innerHTML="<div align='center'>"+(a+1)+"</div>";var e=c.appendChild(document.createElement("TD"));e.className="griditem";e.innerHTML="<a href=\"javascript:"+cP('_Directory')+".showOrgDetail("+o.orgid+",true)\"><b>"+o.name+"</b></a>";var f=c.appendChild(document.createElement("TD"));f.className="griditem";f.innerHTML=o.distance.toFixed(1)+" miles";b.appendChild(c)};var y=function(a){switch(p){case"browse":if(a==="detail"){B();A(false)}else if(a==="search"){A(false);z(true)}else if(a==="nearest"){el(cP("_arptOrgs_gridDiv")).style.display='none';el(cP("_MyNearestDisplay")).style.display='block';z(true);A(false)}break;case"detail":if(a==="browse"){z(false);C(true);A(true)}break;case"search":if(a==="browse"){z(false);n.Repeater.resetDisplay();A(true)}else if(a==="search-detail"){B();el(cP("_SearchReturn")).style.display='block'}else if(a==="nearest"){el(cP("_arptOrgs_gridDiv")).style.display='none';el(cP("_MyNearestDisplay")).style.display='block'}break;case"search-detail":if(a==="browse"){n.Repeater.resetDisplay();z(false);C(true);A(true)}else if(a==="search"){C(true);A(false)}el(cP("_SearchReturn")).style.display='none';break;case"nearest":if(a==="browse"){el(cP("_arptOrgs_gridDiv")).style.display='block';el(cP("_MyNearestDisplay")).style.display='none';z(false);n.Repeater.resetDisplay();A(true)}else if(a==="search"){el(cP("_arptOrgs_gridDiv")).style.display='block';el(cP("_MyNearestDisplay")).style.display='none'}else if(a==="nearest-detail"){B();el(cP("_MyNearestReturn")).style.display='block';el(cP("_MyNearestDisplay")).style.display='none'}break;case"nearest-detail":if(a==="browse"){C(true);z(false);A(true)}else if(a==="nearest"){C(false);el(cP("_MyNearestDisplay")).style.display='block'}el(cP("_MyNearestReturn")).style.display='none';break}p=a};this.changeDisplayState=y;var z=function(a){el(cP("_OrgBrowseReturnTop")).style.display=(a?'block':'none');el(cP("_OrgBrowseReturnBottom")).style.display=(a?'block':'none')};var A=function(a){if(el(cP("_arptOrgs_alphaDiv"))){el(cP("_arptOrgs_alphaDiv")).style.display=(a?'block':'none')}};var B=function(){el(cP("_arptOrgs_loadingDiv")).style.display='block';el(cP("_OrgDetail")).style.display='block';el(cP("_OrgBrowseReturnTop")).style.display='block';el(cP("_OrgBrowseReturnBottom")).style.display='block';if(el(cP("SearchInput"))){el(cP("SearchInput")).style.display='none'}if(el(cP("MyNearestInput"))){el(cP("MyNearestInput")).style.display='none'}el(cP("_arptOrgs_gridDiv")).style.display='none'};var C=function(a){el(cP("_OrgDetail")).innerHTML="";el(cP("_OrgDetail")).style.display='none';if(el(cP("SearchInput"))){el(cP("SearchInput")).style.display='block'}if(el(cP("MyNearestInput"))){el(cP("MyNearestInput")).style.display='block'}if(a){el(cP("_arptOrgs_gridDiv")).style.display='block'}}}if(n.bShowMap){var D,currentlySelectedMarker,currentlyOpenInfo,orgMarkers={},groupingMarkers={},groupingTrigger=2,groupingIcon=new google.maps.MarkerImage("/Images/mapmarker-fan.png",new google.maps.Size(31,35),new google.maps.Point(0,0),new google.maps.Point(13,33)),selectedGroupingIcon=new google.maps.MarkerImage("/Images/mapmarker-fan-blue.png",new google.maps.Size(31,35),new google.maps.Point(0,0),new google.maps.Point(13,33)),groupingIconShadow=new google.maps.MarkerImage("/Images/mapmarker-shadow.png",new google.maps.Size(40,34),new google.maps.Point(0,0),new google.maps.Point(9,33));var E=function(a){if(a){var b=D.getZoom();a.setVisible(b>=a.data.minzoom&&(!a.data.maxzoom||b<=a.data.maxzoom))}};var F=function(a,b){if(a){if(a.data.groupingid){a.setIcon(b?selectedGroupingIcon:groupingIcon);a.setShadow(groupingIconShadow)}else{a.setIcon(b?"/Images/mapmarker-blue.png":null)}}};var G=function(f,g){var h=true;f.minzoom=g||f.minzoom;if(f.children){var i;if(f.children.length>groupingTrigger){for(i in f.children){G(f.children[i])}}else{h=false;for(i in f.children){G(f.children[i],f.minzoom)}}}if(h){var j=new google.maps.Marker({position:new google.maps.LatLng(f.lat,f.lon),map:D});if(f.orgid){orgMarkers[f.orgid]=j}if(f.groupingid){groupingMarkers[f.groupingid]=j}var k=function(a,b,c){var d=new google.maps.InfoWindow({content:"<span class='MarkerText'>"+f.text+"</span>"});F(currentlySelectedMarker,false);F(j,true);try{currentlyOpenInfo.close()}catch(e){}d.open(D,j);currentlySelectedMarker=j;currentlyOpenInfo=d;if(f.orgid){if(!c){r(f.orgid,false)}}};j.clickHandler=k;google.maps.event.addListener(j,"click",k);j.data=f;F(j,false);E(j)}};var H=function(a){var b=new google.maps.LatLngBounds(),i;for(i in a){if(a[i].data){b.extend(new google.maps.LatLng(a[i].data.lat,a[i].data.lon))}else if(a[i]){b.extend(new google.maps.LatLng(a[i].lat,a[i].lon))}}D.fitBounds(b);D.setZoom(Math.min(D.getZoom(),16))};var I=function(a){try{currentlyOpenInfo.close()}catch(e){}H(groupingMarkers[a].data.children)};this.showGrouping=I;var J=function(){var a={zoom:n.MapZoomLvl,center:new google.maps.LatLng(n.MapLat,n.MapLong),mapTypeId:n.MapType,disableDefaultUI:true,panControl:n.MapShowZoomControl,zoomControl:n.MapShowZoomControl,zoomControlOptions:{style:google.maps.ZoomControlStyle.SMALL},mapTypeControl:n.MapShowTypeControl,scaleControl:false,streetViewControl:n.MapShowZoomControl,overviewMapControl:n.MapShowOverview};D=new google.maps.Map(el(cP("_map")),a);google.maps.event.addListener(D,"zoom_changed",function(){var i;for(i in orgMarkers){E(orgMarkers[i])}for(i in groupingMarkers){E(groupingMarkers[i])}});var i;for(i=0;i<n.MapMarkers.length;i++){G(n.MapMarkers[i])}H(orgMarkers)};var K=function(a){if(orgMarkers[a]){var b=[orgMarkers[a]];H(b);setTimeout(function(){orgMarkers[a].clickHandler(null,null,true)},500)}};J()}}
