/*
	Compressed from: gmaps.js
	On: 29/05/2009 13:49
	For licences see individual files
*/


var gmaps_config={useW:257,maxW:499,heroWidth:498,heroHeight:307,smallWidth:236,smallHeight:157,thingsToDoWidth:808,thingsToDoHeight:440,thingsToDoHideOnLoad:false};var gmaps_templates={thingsToDo:{gmapWindow:'<div class="gmapWindow"><div>{$text}</div></div>',gmapWindowImg:'<img src="{$img}" width="78" height="43" alt="" />'}};Event.observe(window,"unload",unload_handler);function gMapsSpecificHandler(){var K=this;if($("gMapHolder")&&gmap2.enabled()){var C=$("gMapHolderWrapper").readAttribute("class").match(/(gmap_)+[\w]{1,20}/g).toString();switch(C){case"gmap_hero":$("gMapHolderWrapper").setStyle({width:gmaps_config.heroWidth+"px",height:gmaps_config.heroHeight+"px"});gmap2.init(gmaps_config.heroWidth,gmaps_config.heroHeight);$$("#gMapControl a.gMapThingsToDo").invoke("hide");if($("thingsToDoTab")){gmap2.addBehaviours({afterOpenMap:function(){$$("#gMapControl a.gMapThingsToDo").invoke("show")},afterCloseMap:function(){$$("#gMapControl a.gMapThingsToDo").invoke("hide")}})}gmap2.addExternalControls({buttonsWrapper:"gMapControl",mapWrapper:"gMapHolderWrapper"});break;case"gmap_small":gmap2.init(gmaps_config.smallWidth,gmaps_config.smallHeight);break;case"gmap_things_to_do":$("contentBox").insert({after:$("gMapHolderWrapper")});$$("#gMapControlTop a.gMapShow").invoke("hide");var B=window.location.search.match(/(id=)+[\w]{1,20}/g);var J=gmaps_config.thingsToDoHideOnLoad;if(B!==null&&B.length>0){J=B[0].split("=")[1]}gmap2.enlargePlaceholder();gmap2.init(gmaps_config.thingsToDoWidth,gmaps_config.thingsToDoHeight,"advanced");gmap2.addBehaviours({afterOpenMap:function(){$$("#infoBoxComplete").invoke("show");$$("#gMapControlTop a.gMapShow").invoke("hide");$$("#gMapPlaceholderHolder, #rightBox, #bottomLine").invoke("show")},afterCloseMap:function(){$$("#infoBoxComplete").invoke("hide");$$("#gMapControlTop a.gMapShow").invoke("show");$("rightNav").setStyle({marginTop:"43px"});$$("#gMapPlaceholderHolder, #rightBox, #bottomLine").invoke("hide")},beforeOpenMap:function(){gmap2.enlargePlaceholder()}});gmap2.addExternalControls({buttonsWrapper:["gMapControl","gMapControlTop"],mapWrapper:"gMapHolderWrapper"});var L=function(R,Q,P){var O=Event.findElement(R,"a");gmap2.mapVisibleControls();gmap2.showMap("gMapHolderWrapper");gmap2.windowOpen(gmap2.getGmapPoint(Q.lat,Q.lng),P);gmap2.setCenter(Q.lat,Q.lng);gmap2.map.savePosition();$$("#infoBoxComplete").invoke("show")};var G=$$("#mapLocation var.name");var M=$$("#mapSourceContent code");var A=$$("#infoBoxList li");var D=M.length-1;var N="";var F=999;var I=0;var E=999;var H=0;M.each(function(P,Q){if(D==Q){N="last"}var T=P.up();var O=P.up(1);var R=gmap2.getGmapParams(P);if(R.lat>H){H=R.lat}if(R.lng>I){I=R.lng}if(R.lat<E){E=R.lat}if(R.lng<F){F=R.lng}var W=gmap2.createPoint(R.lat,R.lng,Q);W.show();var S=O.select("img");var V=gmaps_templates.thingsToDo.gmapWindow.tpl({text:A[Q].innerHTML});Event.observe(A[Q],"click",function(X){L(X,R,V)},false);gmap2.click(W,function(){gmap2.windowOpen(gmap2.getGmapPoint(R.lat,R.lng),V);gmap2.map.savePosition()});var U=new Element("span",{className:"showOnMap"}).update(new Element("a",{className:"showOnMap",href:"#topOfTheMap"}).update(new Element("span",{style:"background-position: -"+Q*25+"px 0px !important;",className:"number"})).insert(new Element("span").insert("Show on map")));O.insert(U);U=O.select("a.showOnMap");U.each(function(X){Event.observe(X,"click",function(Y){L(Y,R,V)},false)})});gmap2.setCenterArea(F,I,E,H);if(J){gmap2.windowOpenById(J)}break}$$("#gMapHolderWrapper.renderHidden").invoke("hide");$$("#infoBoxComplete.renderHidden").invoke("hide")}}function unload_handler(A){if(typeof GUnload!=="undefined"){GUnload()}}var gmap2={v:{location:{lat:null,lng:null,zoom:null,showPin:false}},map:null,point:null,init:function(A,C,B){if(!this.enabled()||!$("mapLocation")){return }this.v.location=this.getGmapParams($("mapLocation"));this.map=new GMap2($("gMapHolder"),{size:new GSize(A,C)});this.map.setCenter(this.getGmapPoint(this.v.location.lat,this.v.location.lng),this.v.location.zoom);this.cupoint=new GLatLng(this.v.location.lat,this.v.location.lng);if(B!==undefined&&B=="advanced"){this.map.addControl(new GLargeMapControl());this.map.addControl(new GScaleControl());this.map.addControl(new GMapTypeControl())}else{this.map.addControl(new GSmallMapControl())}if(this.v.location.showPin){this.createPoint(this.v.location.lat,this.v.location.lng)}if(A<250){$$("#gMapHolder .gmnoprint")[1].setStyle({width:(A-20)+"px",display:"block",overflow:"hidden"})}},click:function(A,B){GEvent.addListener(A,"click",function(){B()})},windowOpen:function(A,B){this.map.openInfoWindowHtml(A,B)},windowOpenById:function(A){forceClickEvent($$("#infoBox li.id_"+A)[0])},getGmapParams:function(A){if(A!==null){return{lat:parseFloat(A.select("var.lat")[0].innerHTML),lng:parseFloat(A.select("var.lng")[0].innerHTML),zoom:(A.select("var.zoom").length>0)?parseInt(A.select("var.zoom")[0].innerHTML):1,showPin:(A.select("var.showPin").length>0)?parseBool(A.select("var.showPin")[0].innerHTML):false}}return false},enabled:function(){if(typeof window.GBrowserIsCompatible=="undefined"||!GBrowserIsCompatible()){return false}return true},getGmapPoint:function(B,A){return new GLatLng(B,A)},createPoint:function(E,C,G){G=(G!==undefined)?G:false;var A=new GLatLng(E,C);var B={};if(G!==false){var F=new GIcon(G_DEFAULT_ICON);F.image="http://maps.google.com/intl/en_ALL/mapfiles/marker"+String.fromCharCode("A".charCodeAt(0)+G)+".png";B={icon:F}}var D=new GMarker(A,B);this.map.addOverlay(D);return D},setCenterArea:function(C,B,G,F){var A=new GLatLng(G,C);var E=new GLatLng(F,B);var D=new GLatLngBounds(A,E);this.map.setCenter(D.getCenter());this.map.setZoom(this.map.getBoundsZoomLevel(D));this.map.savePosition()},setCenter:function(B,A){this.map.setCenter(new GLatLng(B,A))},addExternalControls:function(D){var B=this;var C="";if(typeof D.buttonsWrapper=="object"){var E="";for(var A=D.buttonsWrapper.length-1;A>=0;A--){C+=E+"#"+D.buttonsWrapper[A]+" a.gMapShow";E=", "}}else{C="#"+D.buttonsWrapper+" a.gMapShow"}$$(C).each(function(F){Event.observe(F,"click",function(H){var G=Event.findElement(H,"a");if(!$(D.mapWrapper).visible()){B.mapVisibleControls(G);B.showMap(D.mapWrapper)}else{B.mapHiddenControls(G);B.hideMap(D.mapWrapper)}H.stop()},false)})},addBehaviours:function(A){for(var B in A){this.behaviours[B]=A[B]}},behaviours:{beforeOpenMap:function(){},afterOpenMap:function(){},afterCloseMap:function(){}},mapVisibleControls:function(A){if(A==undefined){var A=$$("#gMapControl a.gMapShow");if(A.length==0){return }A=A[0]}var B=A.readAttribute("title").split("|");if(B.length<=1){return }A.removeClassName("button_no_arrow");A.addClassName("button_remove");A.down().innerHTML=B[1]},mapHiddenControls:function(A){if(A==undefined){var A=$$("#gMapControl a.gMapShow");if(A.length==0){return }A=A[0]}var B=A.readAttribute("title").split("|");if(B.length<=1){return }A.removeClassName("button_remove");A.addClassName("button_no_arrow");A.down().innerHTML=B[0]},showMap:function(A){this.behaviours.beforeOpenMap();$$("#"+A).invoke("show");this.behaviours.afterOpenMap()},hideMap:function(A){$$("#"+A).invoke("hide");this.behaviours.afterCloseMap()},enlargePlaceholder:function(){$("rightNav").setStyle({marginTop:"560px"})}};

