//Wed Sep 1 17:44:03 CDT 2010
var DivClicker=new Class({Implements:[Options,Events],options:{selector:".hoverme",hoverClass:"hover"},initialize:function(a){this.setOptions(a);this.elements=$$(this.options.selector);this.elements.each(function(b){this.applyEvents(b)},this)},applyEvents:function(a){a.removeEvents();a.addEvent("click",this.goThere.bindWithEvent(this,[a])).addEvent("mouseenter",this.addHover.bind(this,[a])).addEvent("mouseleave",this.removeHover.bind(this,[a]))},goThere:function(f,c){var a=$(f.target);if(a.get("tag")!="a"){var d=c.getElements("a")[0];var b=d.get("href");this.fireEvent("onLinkFollow",[c,d]);window.location.href=b}},addHover:function(a){a.addClass(this.options.hoverClass);this.fireEvent("onAddHover",[a])},removeHover:function(a){if(a.hasClass(this.options.hoverClass)){a.removeClass(this.options.hoverClass);this.fireEvent("onRemoveHover",[a])}}});
window.addEvent("domready",function(){$$("label.phantom").each(function(b){var a=new PhantomLabel(b)})});var PhantomLabel=new Class({options:{className:"hideme"},initialize:function(a){this.label=$(a);this.input=$(this.label.get("for"));if(this.input){this.input.addEvent("focus",this.hideLabel.bind(this)).addEvent("blur",this.checkLabel.bind(this));this.checkLabel()}},hideLabel:function(){this.label.addClass(this.options.className)},checkLabel:function(){if(this.input.value===""&&this.label.hasClass(this.options.className)){this.label.removeClass(this.options.className)}}});
window.addEvent("domready",function(){$$(".trackevent").each(function(a){a.addEvent("click",trackclick.bindWithEvent(this))});$$(".trackeventnow").each(function(a){a.addEvent("click",trackclicknow.bindWithEvent(this))})});function trackclick(b){var a=$(b.target);trackLink(a.get("rev"),true)}function trackclicknow(b){var a=$(b.target);trackLink(a.get("rev"),false)}function trackLink(b,a){if(typeof b=="object"){var c=b}else{var c=JSON.decode(b)}if(a){window.setTimeout("doTrackLink('"+JSON.encode(c)+"');",1)}else{doTrackLink(JSON.encode(c))}}function doTrackLink(a){var f=JSON.decode(a);var e=s_gi(s_account);var d="";var c=[];if(f.events){c.push("events")}for(var b in f){if(b=="events"){d="event17,"+f[b]}else{e[b]=f[b];c.push(b)}}e.linkTrackVars="";e.linkTrackVars=c.join();e.linkTrackEvents=d;e.events=d;e.tl()};
window.addEvent("domready",function(){$$("#breadcrumbs .bookmarks").each(function(a){insertBookmarks(a)})});function insertBookmarks(b){var a=escape(window.location.href);var c=escape(document.title);b.set("load",{method:"get",onSuccess:function(){b.getElements("a").each(function(d){d.href=d.href.replace("[[[url]]]",a).replace("[[[title]]]",c)})}});b.load("/bookmarkme.html")};
window.addEvent("domready",TB_init);TB_WIDTH=0;TB_HEIGHT=0;var TB_doneOnce=0;function TB_init(){if($("quicklogin")){var b={loginbox:$("quicklogin"),loginurl:"/quicklogin.html",dontreplace:false};if(b.loginbox.get("title")){var a=JSON.decode(b.loginbox.get("title"));if(a&&a.loggedin){b.loginurl="/quicklogin2.html"}if(a&&a.dontreplace){b.dontreplace=true}}if(b.dontreplace){TB_NextStep()}else{b.loginbox.set("load",{method:"get",onSuccess:TB_NextStep});b.loginbox.load(b.loginurl)}}else{TB_NextStep()}}function TB_NextStep(){$$("a.smoothbox").each(function(a){a.onclick=TB_bind});if($("autoSelectText")){$("autoSelectText").addEvent("click",function(a){autoSelect(this)})}}var autoSelect=function(b){if(/textarea/i.test(b.tagName)||(/input/i.test(b.tagName)&&/text/i.test(b.type))){b.select()}else{if(!!window.getSelection){var c=window.getSelection();var a=document.createRange();a.selectNodeContents(b);c.removeAllRanges();c.addRange(a)}else{if(!!document.selection){document.selection.empty();var a=document.body.createTextRange();a.moveToElementText(b);a.select()}}}};function TB_bind(b){var b=new Event(b);b.preventDefault();this.blur();var a=this.title||this.name||"";var c=this.rel||false;TB_show(a,this.href,c);this.onclick=TB_bind;return false}function TB_show(q,e,b){if(!$("TB_overlay")){new Element("iframe").setProperty("id","TB_HideSelect").injectInside(document.body);$("TB_HideSelect").setOpacity(0);new Element("div").setProperty("id","TB_overlay").injectInside(document.body);$("TB_overlay").setOpacity(0);TB_overlaySize();new Element("div").setProperty("id","TB_load").injectInside(document.body);$("TB_load").innerHTML='<img src="/images/widget/spinner.gif" />';TB_load_position();$("TB_overlay").set("tween",{duration:400});$("TB_overlay").tween("opacity",0,0.6)}if(!$("TB_load")){new Element("div").setProperty("id","TB_load").injectInside(document.body);$("TB_load").innerHTML='<img src="/images/widget/spinner.gif" />';TB_load_position()}if(!$("TB_window")){new Element("div").setProperty("id","TB_window").injectInside(document.body);$("TB_window").setOpacity(0)}$("TB_overlay").onclick=TB_remove;window.onscroll=TB_position;var r=e.match(/(.+)?/)[1]||e;var o=/\.(jpe?g|png|gif|bmp)/gi;if(r.match(o)){var u={caption:"",url:"",html:""};var l=u,m=u,a="";if(b){function j(v,w,i){return{caption:v.title,url:v.href,html:"<span id='TB_"+w+"'>&nbsp;&nbsp;<a href='#'>"+i+"</a></span>"}}var c=[];$$("a.smoothbox").each(function(i){if(i.rel==b){c[c.length]=i}});var t=false;for(var p=0;p<c.length;p++){var k=c[p];var g=k.href.match(o);if(k.href==e){t=true;a="Image "+(p+1)+" of "+(c.length)}else{if(t){m=j(k,"next","Next &gt;");break}else{l=j(k,"prev","&lt; Prev")}}}}imgPreloader=new Image();imgPreloader.onload=function(){imgPreloader.onload=null;var w=window.getWidth()-150;var C=window.getHeight()-150;var z=imgPreloader.width;var v=imgPreloader.height;if(z>w){v=v*(w/z);z=w;if(v>C){z=z*(C/v);v=C}}else{if(v>C){z=z*(C/v);v=C;if(z>w){v=v*(w/z);z=w}}}TB_WIDTH=z+30;TB_HEIGHT=v+60;$("TB_window").innerHTML+="<a href='' id='TB_ImageOff' title='Close'><img id='TB_Image' src='"+e+"' width='"+z+"' height='"+v+"' alt='"+q+"'/></a><div id='TB_caption'>"+q+"<div id='TB_secondLine'>"+a+l.html+m.html+"</div></div><div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close</a></div>";$("TB_closeWindowButton").onclick=TB_remove;function i(x){return function(){$("TB_window").dispose();new Element("div").setProperty("id","TB_window").injectInside(document.body);TB_show(x.caption,x.url,b);return false}}var B=i(l);var A=i(m);if($("TB_prev")){$("TB_prev").onclick=B}if($("TB_next")){$("TB_next").onclick=A}document.onkeydown=function(x){var x=new Event(x);switch(x.code){case 27:TB_remove();break;case 190:if($("TB_next")){document.onkeydown=null;A()}break;case 188:if($("TB_prev")){document.onkeydown=null;B()}break}};$("TB_ImageOff").onclick=TB_remove;TB_position();TB_showWindow()};imgPreloader.src=e}else{var d=e.match(/\?(.+)/)[1];var s=TB_parseQuery(d);TB_WIDTH=(s.width*1)+30;TB_HEIGHT=(s.height*1)+40;var h=TB_WIDTH-30,n=TB_HEIGHT-45;if(e.indexOf("TB_iframe")!=-1){urlNoQuery=e.split("TB_");$("TB_window").innerHTML+="<iframe scrolling='auto' frameborder='0' hspace='0' src='"+urlNoQuery[0]+"' id='TB_iframeContent' name='TB_iframeContent' style='width:"+(h+29)+"px;height:"+(n+17)+"px;' onload='TB_showWindow()'> </iframe><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close window</a></div><div id='TB_title'><div id='TB_ajaxWindowTitle'>"+q+"</div></div>"}else{$("TB_window").innerHTML+="<div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton'>close</a></div><div id='TB_title'><div id='TB_ajaxWindowTitle'>"+q+"</div></div><div id='TB_ajaxContent' style='width:"+h+"px;height:"+n+"px;'></div>"}$("TB_closeWindowButton").onclick=TB_remove;if(e.indexOf("TB_inline")!=-1){$("TB_ajaxContent").innerHTML=($(s.inlineId).innerHTML);TB_position();TB_showWindow()}else{if(e.indexOf("TB_iframe")!=-1){TB_position();if(frames.TB_iframeContent==undefined){$(document).keyup(function(v){var i=v.keyCode;if(i==27){TB_remove()}});TB_showWindow()}}else{var f=function(){TB_position();TB_showWindow()};new Request.HTML({method:"get",update:$("TB_ajaxContent"),onComplete:f}).get(e)}}}window.onresize=function(){TB_position();TB_load_position();TB_overlaySize()};document.onkeyup=function(i){var i=new Event(i);if(i.code==27){TB_remove()}}}function TB_showWindow(){if(TB_doneOnce==0){TB_doneOnce=1;$("TB_window").set("tween",{duration:250,onComplete:function(){if($("TB_load")){$("TB_load").dispose()}}});$("TB_window").tween("opacity",0,1)}else{$("TB_window").setStyle("opacity",1);if($("TB_load")){$("TB_load").dispose()}}}function TB_remove(){$("TB_overlay").onclick=null;document.onkeyup=null;document.onkeydown=null;if($("TB_imageOff")){$("TB_imageOff").onclick=null}if($("TB_closeWindowButton")){$("TB_closeWindowButton").onclick=null}if($("TB_prev")){$("TB_prev").onclick=null}if($("TB_next")){$("TB_next").onclick=null}$("TB_window").set("tween",{duration:250,onComplete:function(){$("TB_window").dispose()}});$("TB_window").tween("opacity",1,0);$("TB_overlay").set("tween",{duration:400,onComplete:function(){$("TB_overlay").dispose()}});$("TB_overlay").tween("opacity",0.6,0);window.onscroll=null;window.onresize=null;$("TB_HideSelect").dispose();TB_init();TB_doneOnce=0;return false}function TB_position(){$("TB_window").set("morph",{duration:75});$("TB_window").morph({width:TB_WIDTH+"px",left:(window.getScrollLeft()+(window.getWidth()-TB_WIDTH)/2)+"px",top:(window.getScrollTop()+(window.getHeight()-TB_HEIGHT)/2)+"px"})}function TB_overlaySize(){$("TB_overlay").setStyles({height:"0px",width:"0px"});$("TB_HideSelect").setStyles({height:"0px",width:"0px"});$("TB_overlay").setStyles({height:window.getScrollHeight()+"px",width:window.getScrollWidth()+"px"});$("TB_HideSelect").setStyles({height:window.getScrollHeight()+"px",width:window.getScrollWidth()+"px"})}function TB_load_position(){if($("TB_load")){$("TB_load").setStyles({left:(window.getScrollLeft()+(window.getWidth()-56)/2)+"px",top:(window.getScrollTop()+((window.getHeight()-20)/2))+"px",display:"block"})}}function TB_parseQuery(c){if(!c){return{}}var e={};var b=c.split(/[;&]/);for(var a=0;a<b.length;a++){var d=b[a].split("=");if(!d||d.length!=2){continue}e[unescape(d[0])]=unescape(d[1]).replace(/\+/g," ")}return e};
window.addEvent("domready",function(){$$("div.flash").each(function(a){window.setTimeout(function(){a.set("morph",{duration:"long"}).morph({height:0,"margin-top":0})},15000)})});
window.addEvent("domready",function(){$$(".flasher").each(function(b){var a=new Flasher(b)})});var Flasher=new Class({Implements:[Options],options:{url:"",width:"320",height:"240",version:"9.0.0",flashvars:{},params:{quality:"high",salign:"",allowFullScreen:"true",allowScriptAccess:"always",wmode:"transparent",base:"/"},attributes:{id:""},target:""},initialize:function(b,a){if(a){this.setOptions(a)}if(b.get("value")){this.setOptions(JSON.decode(b.get("value")))}this.options.target=b.getParent().get("id");this.options.attributes.id=this.options.target;swfobject.embedSWF(this.options.url,this.options.target,this.options.width,this.options.height,this.options.version,"/swf/swfinstaller.swf",this.options.flashvars,this.options.params,this.options.attributes)}});
var GoogMap=new Class({Implements:[Options,Events],options:{pointsSelector:".apartments .item",hoverClass:"hover",hovermeClass:"hoverme",slimListingClass:"aptslim",slideMap:false,sliderHeight:540,topSpacing:45,mapdefaults:{zoom:2,lat:30.3848,lng:-97.744354},markeroptions:{icon:{width:24,height:28,countUrl:"http://img.apartmenthl.com/imgs/maps/markers/blue/marker{count}.png",countHouseUrl:"/imgs/maps/markers/aqua/marker{count}.png",countHoverUrl:"http://img.apartmenthl.com/imgs/maps/markers/orange/marker{count}.png",defaultUrl:"http://img.apartmenthl.com/imgs/maps/markers/blue/marker.png",defaultHouseUrl:"/imgs/maps/markers/aqua/marker.png",defaultHoverUrl:"http://img.apartmenthl.com/imgs/maps/markers/orange/marker.png"},shadow:{width:35,height:28,url:"http://img.apartmenthl.com/imgs/maps/shadow.png"}}},initialize:function(c,a){if((typeof(google)!="object")||(typeof(google.maps)!="object")){return false}var b={zoom:this.options.mapdefaults.zoom,scrollwheel:false,noClear:true,center:new google.maps.LatLng(this.options.mapdefaults.lat,this.options.mapdefaults.lng),mapTypeControl:true,mapTypeControlOptions:{style:google.maps.MapTypeControlStyle.DROPDOWN_MENU},navigationControl:true,navigationControlOptions:{style:google.maps.NavigationControlStyle.SMALL},mapTypeId:google.maps.MapTypeId.ROADMAP};this.setOptions(a);this.mapcontainer=$(c);this.map=new google.maps.Map(c,b);if(this.options.slideMap){this.initSlide()}else{this.mapcontainer.setStyle("margin-top",this.options.topSpacing)}this.getAndPlotDots()},getAndPlotDots:function(){this.clearPointData();this.dots=this.collectVCards(this.options.pointsSelector);this.clearMarkers();this.dots.each(function(b){var a=this.createMarkerFromDot(b);if(a){this.markers.push(a);this.applyPointData(b)}},this);this.setBestZoomAndCenter()},clearMarkers:function(){if(!this.markers){this.markers=[];return true}this.markers.each(function(a){a.setMap()});this.markers=[]},clearPointData:function(){this.pointData={maxLat:null,minLat:null,maxLng:null,minLng:null}},applyPointData:function(c){if(!c.latitude||!c.longitude){return false}var b=parseFloat(c.latitude);var a=parseFloat(c.longitude);if(!this.pointData.maxLat||this.pointData.maxLat<b){this.pointData.maxLat=b}if(!this.pointData.minLat||this.pointData.minLat>b){this.pointData.minLat=b}if(!this.pointData.maxLng||this.pointData.maxLng<a){this.pointData.maxLng=a}if(!this.pointData.minLng||this.pointData.minLng>a){this.pointData.minLng=a}},setBestZoomAndCenter:function(){var a=new google.maps.LatLng(this.pointData.minLat,this.pointData.minLng);var c=new google.maps.LatLng(this.pointData.maxLat,this.pointData.maxLng);var b=new google.maps.LatLngBounds(a,c);this.map.fitBounds(b)},initSlide:function(){this.mapcontainer.set("morph",{duration:"short"});this.mapstart=this.mapcontainer.getPosition().y;this.mapgrandparent=this.mapcontainer.getParent().getParent();this.mapgrandparent.addEvent("resize",this.setSlideMaxHeights.bind(this));this.setSlideMaxHeights();window.addEvent("scroll",this.slide.bind(this));this.slide()},setSlideMaxHeights:function(){if(!this.mapgrandparent){return false}this.maxheight=this.mapgrandparent.getCoordinates().height-this.options.sliderHeight;this.maxscroll=this.maxheight+this.mapstart},setMapStart:function(){this.mapcontainer.setStyle("margin-top",0);this.mapstart=this.mapcontainer.getPosition().y;this.slide()},slide:function(){var a=window.getScroll().y;if(a>(this.mapstart+this.options.topSpacing)&&a<this.maxscroll){this.mapcontainer.morph({"margin-top":(a-this.mapstart)})}else{if(a<=this.mapstart){this.mapcontainer.morph({"margin-top":this.options.topSpacing})}else{if(a>=this.maxscroll){if(Browser.Engine.trident4){this.mapcontainer.morph({"margin-top":this.maxheight-this.options.topSpacing})}else{this.mapcontainer.morph({"margin-top":this.maxheight-(this.options.topSpacing/9).toInt()})}}}}},collectVCards:function(a){var b=[];$$(a).each(function(d){var c=this.parseVCard(d);b.push(c)},this);return b},parseVCard:function(b){var a={};if(b.hasClass(this.options.hovermeClass)||b.hasClass(this.options.slimListingClass)){a.hoverme=b}else{if(b.getParent("."+this.options.hovermeClass)){a.hoverme=b.getParent("."+this.options.hovermeClass)}else{if(b.getParent("."+this.options.slimListingClass)){a.hoverme=b.getParent("."+this.options.slimListingClass)}}}b.getElements("*").each(function(c){if(c){if(c.hasClass("fn")){a.fn=c.get("text")}if(c.hasClass("url")){a.url=c.get("href")}if(c.hasClass("propid")){a.propid=c.get("text")}if(c.hasClass("tel")&&c.getChildren()==[]){a.tel=c.get("text")}if(c.hasClass("street-address")){a.streetAddress=c.get("text")}if(c.hasClass("extended-address")){a.extendedAddress=c.get("text")}if(c.hasClass("locality")){a.locality=c.get("text")}if(c.hasClass("region")){a.region=c.get("text")}if(c.hasClass("postal-code")){a.postalCode=c.get("text")}if(c.hasClass("latitude")){a.latitude=c.get("text")}if(c.hasClass("longitude")){a.longitude=c.get("text")}if(c.hasClass("markercount")){a.markercount=c.get("text")}}});a.ishouse=a.hoverme.hasClass("houselisting");return a},createMarkerText:function(e){var a="",b="",c="",d="";if(e.fn&&e.url){a+='<h3><a href="'+e.url+'">'+e.fn+"</a></h3>"}else{if(e.fn){a+="<h3>"+e.fn+"</h3>"}}if(e.tel){b+='<p class="phone">'+e.tel+"</p>"}if(e.streetAddress){c+=e.streetAddress}if(e.extendedAddress){c+=", "+e.extendedAddress}if(c!=""){c="<p>"+c+"</p>"}if(e.locality){d+=e.locality}if(e.region){d+=", "+e.region}if(e.postalCode){d+=" "+e.postalCode}if(d!=""){d="<p>"+d+"</p>"}return a+b+c+d},createMarkerFromDot:function(h){if(!h.latitude||!h.longitude){return false}var o=h.fn;var i=this.createMarkerText(h);var d=new google.maps.LatLng(h.latitude,h.longitude);var l=h.markercount;if(!l){var l=0}if(l>0&&l<121){if(h.ishouse){var p=this.options.markeroptions.icon.countHouseUrl.replace("{count}",l)}else{var p=this.options.markeroptions.icon.countUrl.replace("{count}",l)}var m=this.options.markeroptions.icon.countHoverUrl.replace("{count}",l)}else{if(h.ishouse){var p=this.options.markeroptions.icon.defaultHouseUrl}else{var p=this.options.markeroptions.icon.defaultUrl}var m=this.options.markeroptions.icon.defaultHoverUrl}var n=new google.maps.Size(this.options.markeroptions.icon.width,this.options.markeroptions.icon.height);var c=new google.maps.Size(this.options.markeroptions.shadow.width,this.options.markeroptions.shadow.height);var k=new google.maps.Point(0,0);var e=new google.maps.Point((this.options.markeroptions.icon.width/2),this.options.markeroptions.icon.height);var f=new google.maps.MarkerImage(p,n,k,e);var j=new google.maps.MarkerImage(m,n,k,e);var b=new google.maps.MarkerImage(this.options.markeroptions.shadow.url,c,k,e);var a={title:o,icon:f,shadow:b,position:d,map:this.map};var g=new google.maps.Marker(a);google.maps.event.addListener(g,"click",function(){if(h.hoverme){new Fx.Scroll(window,{duration:500}).toElement(h.hoverme)}}.bind(this));google.maps.event.addListener(g,"mouseover",function(){g.setIcon(j);if(h.hoverme){h.hoverme.addClass(this.options.hoverClass)}}.bind(this));google.maps.event.addListener(g,"mouseout",function(){g.setIcon(f);if(h.hoverme){h.hoverme.removeClass(this.options.hoverClass)}}.bind(this));if(h.hoverme){h.hoverme.store("marker",g);h.hoverme.store("markerzindex",g.zIndex)}return g},setMarkerImage:function(b,e,d,a){var g=new google.maps.Size(d,a);var f=new google.maps.Point(0,0);var c=new google.maps.Point((d/2),a);var e=new google.maps.MarkerImage(e,g,f,c);b.setIcon(e)},setInfowindow:function(a){if(this.infowindow!=undefined){this.infowindow.close()}this.infowindow=a}});
var AdFab=new Class({Implements:[Options],options:{adSelector:".adfab",frameClass:"adframe",frameBodyStyles:{background:"#ffffff",margin:"0",padding:"0"},baseUrl:"http://acc.apartments.com/hserver",adSettings:{acc_random:"",aamsz:"160x600",pos:"skyscraper",SITE:"APARTMENTHOMELIVING.COM",AREA:"",zip:"",PG:"blue",AM1:"",AM2:"",AM3:"",MINRENT:"",MAXRENT:"",BEDS:"",HTYPE:"",AFF:"",pageid:""}},initialize:function(a){this.setOptions(a);this.adBlocks=$$(this.options.adSelector);this.setPageId();this.adBlocks.each(function(b){this.generateAd(b)},this)},generateAd:function(d){var b=d.getElement("input");if(!b){return false}var e=JSON.decode(b.get("value"));var a=$merge(this.options.adSettings,e);a.acc_random=this.randomNumber();a.pageid=this.pageId;var c=this.generateUrl(a);var f='<iframe scrolling="no" frameborder="no" class="'+this.options.frameClass+'" src="'+c+'"></iframe>';d.set("html",f)},generateUrl:function(a){var c=this.options.baseUrl;for(var b in a){c+="/"+b+"="+encodeURIComponent(a[b])}return c},setPageId:function(){this.pageId=this.randomNumber()},randomNumber:function(){return Math.round(Math.random()*100000000)}});
var MapMaker=new Class({Implements:[Options,Events],options:{showInfo:true,hoverMarker:true},mapdefaults:{zoom:12,lat:30.3848,lng:-97.744354,outImg:"http://img.apartmenthl.com/imgs/maps/markers/blue/marker.png",overImg:"http://img.apartmenthl.com/imgs/maps/markers/orange/marker.png",markerWidth:24,markerHeight:28,shadowImg:"http://img.apartmenthl.com/imgs/maps/shadow.png",shadowWidth:35,shadowHeight:28},dots:[],pointData:{maxLat:null,minLat:null,maxLng:null,minLng:null},plotVCards:function(b,a){this.collectVCards(a);if(this.dots.length==1){this.mapdefaults.lat=this.dots[0].latitude;this.mapdefaults.lng=this.dots[0].longitude}if(!this.map){this.buildMap(b)}this.dots.each(function(d,c){d.marker=this.createMarkerFromDot(d);this.applyPointData(d)},this);if(this.dots.length>1){this.setBestZoomAndCenter()}},buildMap:function(b){var a={zoom:this.mapdefaults.zoom,scrollwheel:false,center:new google.maps.LatLng(this.mapdefaults.lat,this.mapdefaults.lng),mapTypeControl:true,mapTypeControlOptions:{style:google.maps.MapTypeControlStyle.DROPDOWN_MENU},navigationControl:true,navigationControlOptions:{style:google.maps.NavigationControlStyle.SMALL},draggable:true,mapTypeId:google.maps.MapTypeId.ROADMAP};this.map=new google.maps.Map(b,a)},setBestZoomAndCenter:function(){if(!this.map){return false}var a=new google.maps.LatLng(this.pointData.minLat,this.pointData.minLng);var c=new google.maps.LatLng(this.pointData.maxLat,this.pointData.maxLng);var b=new google.maps.LatLngBounds(a,c);this.map.fitBounds(b)},clearPointData:function(){this.pointData={maxLat:null,minLat:null,maxLng:null,minLng:null}},applyPointData:function(c){if(!c.latitude||!c.longitude){return false}var b=parseFloat(c.latitude);var a=parseFloat(c.longitude);if(!this.pointData.maxLat||this.pointData.maxLat<b){this.pointData.maxLat=b}if(!this.pointData.minLat||this.pointData.minLat>b){this.pointData.minLat=b}if(!this.pointData.maxLng||this.pointData.maxLng<a){this.pointData.maxLng=a}if(!this.pointData.minLng||this.pointData.minLng>a){this.pointData.minLng=a}},collectVCards:function(a){$$(a).each(function(c){var b=this.parseVCard(c);this.dots.push(b)},this)},parseVCard:function(b){var a={};a.card=b;b.getElements("*").each(function(c){if(c){if(c.hasClass("fn")){a.fn=c.get("text")}if(c.hasClass("url")){a.url=c.get("href")}if(c.hasClass("propid")){a.propid=c.get("text")}if(c.hasClass("tel")&&c.getChildren()==[]){a.tel=c.get("text")}if(c.hasClass("street-address")){a.streetAddress=c.get("text")}if(c.hasClass("extended-address")){a.extendedAddress=c.get("text")}if(c.hasClass("locality")){a.locality=c.get("text")}if(c.hasClass("region")){a.region=c.get("text")}if(c.hasClass("postal-code")){a.postalCode=c.get("text")}if(c.hasClass("latitude")){a.latitude=c.get("text")}if(c.hasClass("longitude")){a.longitude=c.get("text")}if(c.hasClass("markerout")){a.markerout=c.get("src");if(c.get("width")){a.markerwidth=c.get("width")}if(c.get("height")){a.markerheight=c.get("height")}}if(c.hasClass("markerover")){a.markerover=c.get("src");if(c.get("width")){a.markerwidth=c.get("width")}if(c.get("height")){a.markerheight=c.get("height")}}if(c.hasClass("shadow")){a.markerover=c.get("src");if(c.get("width")){a.shadowwidth=c.get("width")}if(c.get("height")){a.shadowheight=c.get("height")}}}});return a},createMarkerText:function(e){var a="",b="",c="",d="";if(e.fn&&e.url){a+='<h3><a href="'+e.url+'">'+e.fn+"</a></h3>"}else{if(e.fn){a+="<h3>"+e.fn+"</h3>"}}if(e.tel){b+='<p class="phone">'+e.tel+"</p>"}if(e.streetAddress){c+=e.streetAddress}if(e.extendedAddress){c+=", "+e.extendedAddress}if(c!=""){c="<p>"+c+"</p>"}if(e.locality){d+=e.locality}if(e.region){d+=", "+e.region}if(e.postalCode){d+=" "+e.postalCode}if(d!=""){d="<p>"+d+"</p>"}return a+b+c+d},createMarkerFromDot:function(a){if(!a.latitude||!a.longitude){this.geocodeAddress(a)}else{this.createMarkerFromLatLng(a)}},geocodeAddress:function(b){if(!this.geocoder){this.createGeocoder()}var a="";if(b.streetAddress){a+=b.streetAddress}if(b.extendedAddress){a+=", "+b.extendedAddress}if(b.locality){a+=", "+b.locality}if(b.region){a+=", "+b.region}if(b.postalCode){a+=" "+b.postalCode}this.geocoder.geocode({address:a},function(d,c){if(c==google.maps.GeocoderStatus.OK){b.latitude=d[0].geometry.location.lat();b.longitude=d[0].geometry.location.lng();this.createMarkerFromLatLng(b)}})},createGeocoder:function(){this.geocoder=new google.maps.Geocoder()},createMarkerFromLatLng:function(i){if(!i.latitude||!i.longitude){return false}var o=i.fn;var j=this.createMarkerText(i);var d=new google.maps.LatLng(i.latitude,i.longitude);var p=(i.markerout?i.markerout:this.mapdefaults.outImg);var m=(i.markerover?i.markerover:this.mapdefaults.overImg);var n=new google.maps.Size((i.markerwidth?i.markerwidth:this.mapdefaults.markerWidth),(i.markerheight?i.markerheight:this.mapdefaults.markerHeight));var f=(i.markershadow?i.markershadow:this.mapdefaults.shadowImg);var c=new google.maps.Size((i.shadowwidth?i.shadowwidth:this.mapdefaults.shadowWidth),(i.shadowheight?i.shadowheight:this.mapdefaults.shadowHeight));var l=new google.maps.Point(0,0);var e=new google.maps.Point((n.width/2),n.height);var g=new google.maps.MarkerImage(p,n,l,e);var k=new google.maps.MarkerImage(m,n,l,e);var b=new google.maps.MarkerImage(f,c,l,e);var a={title:o,icon:g,shadow:b,position:d,map:this.map};var h=new google.maps.Marker(a);google.maps.event.addListener(h,"click",function(){if(this.options.showInfo){if(this.infoWindow){this.infoWindow.close();this.infoWindow=null}this.infoWindow=new google.maps.InfoWindow({content:j});this.infoWindow.open(this.map,h)}this.fireEvent("onMarkerClick",[i])}.bind(this));google.maps.event.addListener(h,"mouseover",function(){if(this.options.hoverMarker){h.setIcon(k)}this.fireEvent("onMarkerOver",[i])}.bind(this));google.maps.event.addListener(h,"mouseout",function(){if(this.options.hoverMarker){h.setIcon(g)}this.fireEvent("onMarkerOut",[i])}.bind(this));return h},setMarkerImage:function(b,e,d,a){var g=new google.maps.Size(d,a);var f=new google.maps.Point(0,0);var c=new google.maps.Point((d/2),a);var e=new google.maps.MarkerImage(e,g,f,c);b.setIcon(e)},setInfowindow:function(a,b){if(this.infoWindow){this.infoWindow.close();this.infoWindow=null}this.infoWindow=new google.maps.InfoWindow({content:b});this.infoWindow.open(this.map,a)}});
window.addEvent("domready",function(){$$(".maphappy").each(function(a){new MapHappy(a)})});var MapHappy=new Class({Implements:[Options,MapMaker],options:{sel:".vcard",showInfo:true,hoverMarker:true},initialize:function(c,a){if(a){this.setOptions(a)}if(c.get("value")){this.setOptions(JSON.decode(c.get("value")))}var b=c.getParent();this.plotVCards(b,this.options.sel)}});
