app={gm2MapDivId:"gm2_map",startLatSpan:50.111469367532194,startLngSpan:8.68044376373291,mapZoom:13,zoomLevelMin:10,zoomLevelMax:17,zoomRangeTypeMarker:14,bigInfoWindowEnable:false,extInfoWindowEnable:true,debug:false,webServiceURL:"/webservices/gmap",infoTableDivId:"infoTable",infoTablePageLength:20,extInfoWindowId:"ext_info_win_t_",map:null,startPos:null,geocoder:null,bq_buttons:new Array(),bq_switch:null,enabledSourceOfSupply:new Array(),e:null,markersOptions:new Array(),markers:new Array(),markersId:new Array(),markersType:new Array(),markerWithInfoWindowLat:null,markerWithInfoWindowLng:null,infoWindowOptions:{maxWidth:400,maxTitle:null,maxContent:null,minContent:null,type:null},markersNewLoad:false,zoomEnabled:true,searchId:null,searchLat:null,searchLng:null,init:function(){app.searchLat=app.getUrlParameterByName("lat");app.searchLng=app.getUrlParameterByName("lng");app.searchId=app.getUrlParameterByName("id");if((app.searchLat!=null)&&(app.searchLng!=null)&&(app.searchId!=null)){app.startLatSpan=(app.searchLat*1)+0.0015;app.startLngSpan=app.searchLng;app.mapZoom=16}app.startPos=new GLatLng(app.startLatSpan,app.startLngSpan);app.bq_switch=new bq_switch(d_obj("switch_all"));for(var b=0;b<=6;b++){var c="bq_0"+(b+1);var a=new bq_button(d_obj(c),b);app.bq_buttons.push(a)}app.addEvent(app.bq_buttons[0].obj,"mouseover",function(d){app.bq_buttons[0].onMouseOver()});app.addEvent(app.bq_buttons[1].obj,"mouseover",function(d){app.bq_buttons[1].onMouseOver()});app.addEvent(app.bq_buttons[2].obj,"mouseover",function(d){app.bq_buttons[2].onMouseOver()});app.addEvent(app.bq_buttons[3].obj,"mouseover",function(d){app.bq_buttons[3].onMouseOver()});app.addEvent(app.bq_buttons[4].obj,"mouseover",function(d){app.bq_buttons[4].onMouseOver()});app.addEvent(app.bq_buttons[5].obj,"mouseover",function(d){app.bq_buttons[5].onMouseOver()});app.addEvent(app.bq_buttons[6].obj,"mouseover",function(d){app.bq_buttons[6].onMouseOver()});app.addEvent(app.bq_switch.obj,"mouseover",function(d){app.bq_switch.onMouseOver()});app.addEvent(app.bq_buttons[0].obj,"mouseout",function(d){app.bq_buttons[0].onMouseOut()});app.addEvent(app.bq_buttons[1].obj,"mouseout",function(d){app.bq_buttons[1].onMouseOut()});app.addEvent(app.bq_buttons[2].obj,"mouseout",function(d){app.bq_buttons[2].onMouseOut()});app.addEvent(app.bq_buttons[3].obj,"mouseout",function(d){app.bq_buttons[3].onMouseOut()});app.addEvent(app.bq_buttons[4].obj,"mouseout",function(d){app.bq_buttons[4].onMouseOut()});app.addEvent(app.bq_buttons[5].obj,"mouseout",function(d){app.bq_buttons[5].onMouseOut()});app.addEvent(app.bq_buttons[6].obj,"mouseout",function(d){app.bq_buttons[6].onMouseOut()});app.addEvent(app.bq_switch.obj,"mouseout",function(d){app.bq_switch.onMouseOut()});app.addEvent(app.bq_buttons[0].obj,"click",function(d){app.bq_buttons[0].onClick()});app.addEvent(app.bq_buttons[1].obj,"click",function(d){app.bq_buttons[1].onClick()});app.addEvent(app.bq_buttons[2].obj,"click",function(d){app.bq_buttons[2].onClick()});app.addEvent(app.bq_buttons[3].obj,"click",function(d){app.bq_buttons[3].onClick()});app.addEvent(app.bq_buttons[4].obj,"click",function(d){app.bq_buttons[4].onClick()});app.addEvent(app.bq_buttons[5].obj,"click",function(d){app.bq_buttons[5].onClick()});app.addEvent(app.bq_buttons[6].obj,"click",function(d){app.bq_buttons[6].onClick()});app.addEvent(app.bq_switch.obj,"click",function(d){app.bq_switch.onClick()});app.markersOptions[0]={draggable:false,icon:app.getIconType1("/assets/images_system/icon_t1_01.png")};app.markersOptions[1]={draggable:false,icon:app.getIconType1("/assets/images_system/icon_t1_02.png")};app.markersOptions[2]={draggable:false,icon:app.getIconType1("/assets/images_system/icon_t1_03.png")};app.markersOptions[3]={draggable:false,icon:app.getIconType1("/assets/images_system/icon_t1_04.png")};app.markersOptions[4]={draggable:false,icon:app.getIconType1("/assets/images_system/icon_t1_05.png")};app.markersOptions[5]={draggable:false,icon:app.getIconType1("/assets/images_system/icon_t1_06.png")};app.markersOptions[6]={draggable:false,icon:app.getIconType1("/assets/images_system/icon_t1_07.png")};app.markersOptions[10]={draggable:false,icon:app.getIconType2("/assets/images_system/icon_t2_01.png")};app.markersOptions[11]={draggable:false,icon:app.getIconType2("/assets/images_system/icon_t2_02.png")};app.markersOptions[12]={draggable:false,icon:app.getIconType2("/assets/images_system/icon_t2_03.png")};app.markersOptions[13]={draggable:false,icon:app.getIconType2("/assets/images_system/icon_t2_04.png")};app.markersOptions[14]={draggable:false,icon:app.getIconType2("/assets/images_system/icon_t2_05.png")};app.markersOptions[15]={draggable:false,icon:app.getIconType2("/assets/images_system/icon_t2_06.png")};app.markersOptions[16]={draggable:false,icon:app.getIconType2("/assets/images_system/icon_t2_07.png")};app.markersNewLoad=true;app.map=new GMap2(document.getElementById(app.gm2MapDivId));app.map.setCenter(app.startPos,app.mapZoom);app.geocoder=new GClientGeocoder();app.geocoder.setBaseCountryCode("de");app.map.setMapType(G_NORMAL_MAP);app.addMapControl();GEvent.addListener(app.map,"dblclick",function(e,d){if(app.zoomEnabled){if(e==null){var g=new GLatLng(d.lat(),d.lng());var f=app.map.getZoom()+1;if((f>=zs.zoomLevelMin)&&(f<=zs.zoomLevelMax)){zs.zoomFromSlider=false;app.setZoomEnabled(false);window.setTimeout("app.map.setZoom("+f+");",1000)}}}});GEvent.addListener(app.map,"moveend",function(){window.setTimeout("app.addMarkers()",500)});GEvent.addListener(app.map,"zoomend",function(e,d){app.mapZoom=d;if(((d>=app.zoomRangeTypeMarker)&&(e<app.zoomRangeTypeMarker))||((d<app.zoomRangeTypeMarker)&&(e>=app.zoomRangeTypeMarker))){app.markersNewLoad=true}});GEvent.addListener(app.map,"maptypechanged",function(){if(app.extInfoWindowEnable==true){app.map.closeExtInfoWindow()}else{app.map.closeInfoWindow()}});app.addEvent(d_obj("btn_up"),"click",function(){app.map.panDirection(0,1)});app.addEvent(d_obj("btn_left"),"click",function(){app.map.panDirection(1,0)});app.addEvent(d_obj("btn_right"),"click",function(){app.map.panDirection(-1,0)});app.addEvent(d_obj("btn_down"),"click",function(){app.map.panDirection(0,-1)})},load:function(){if(GBrowserIsCompatible()){regionPoints.init(app.infoTableDivId);app.init();zs.init(app.map,{id:"zoomslider",id_rail:"zoomsliderrail",id_wrapper:"zoomslider_wrapper",type:1,zoomLevelMin:app.zoomLevelMin,zoomLevelMax:app.zoomLevelMax});app.addMarkers();window.setTimeout("app.bq_switch.onClick();",1000);if((app.searchLat==null)&&(app.searchLng==null)&&(app.searchId!=null)){window.setTimeout("app.searchPointById('"+app.searchId+"');",2500)}if((app.searchLat!=null)&&(app.searchLng!=null)&&(app.searchId!=null)){window.setTimeout("app.goToMarkerById('"+app.searchId+"');",2500)}}},addMarkers:function(){var a=regionPoints;var b=app.getMapBounds();a.getPoints(b.NE_Pos.lat(),b.NE_Pos.lng(),b.SW_Pos.lat(),b.SW_Pos.lng())},removeMarker:function(a){if(app.markers.length!=0){app.map.removeOverlay(app.markers[a]);app.markers[a]=null}},addMapControl:function(){app.map.addControl(new MTControl())},addEvent:function(c,b,a){if(c.addEventListener){c.addEventListener(b,a,false)}else{if(c.attachEvent){c["e"+b+a]=a;c[b+a]=function(){c["e"+b+a](window.event)};c.attachEvent("on"+b,c[b+a])}}},searchAddress:function(a){if(app.geocoder){app.geocoder.getLatLng(a,function(b){if(!b){alert(a+" not found")}else{zs.zoomFromSlider=false;app.map.setCenter(b,13)}})}},getIconType1:function(a){var b=new GIcon(G_DEFAULT_ICON);b.image=a;b.shadow=null;b.iconSize=new GSize(25,40);b.iconAnchor=new GPoint(12,38);b.infoWindowAnchor=new GPoint(7,42);b.imageMap=new Array(2,3,19,3,19,27,10,34,2,27);return b},getIconType2:function(a){var b=new GIcon(G_DEFAULT_ICON);b.image=a;b.shadow=null;b.iconSize=new GSize(68,66);b.iconAnchor=new GPoint(34,60);b.infoWindowAnchor=new GPoint(28,64);b.imageMap=new Array(1,0,61,0,61,35,40,35,40,48,32,56,23,47,23,35,1,35);return b},showMarker:function(a,c,f,h,e,g,j){var b=h;h=(app.map.getZoom()>=app.zoomRangeTypeMarker)?(Math.round(h)+10):h;var i=new GLatLng(c,f);var d=new GMarker(i,app.markersOptions[h]);if(app.inArray(app.enabledSourceOfSupply,b)){app.map.addOverlay(d)}GEvent.addListener(d,"click",function(){var l=d.getLatLng();var k=l.lat();var m=l.lng();app.showDetails=false;app.markerWithInfoWindowLat=k;app.markerWithInfoWindowLng=m;app.infoWindowOptions.maxTitle=e;app.infoWindowOptions.maxContent=j;app.infoWindowOptions.minContent=g;app.infoWindowOptions.type=b;if(!app.extInfoWindowEnable){if(app.bigInfoWindowEnable==true){d.openInfoWindowHtml(g,app.infoWindowOptions)}else{d.openInfoWindowHtml(g,{})}}else{extInfoWindowHtml='<img src="/assets/images_system/print_cover.gif" class="gm2_iw_print_cover" /><div class="gm2_iw_wrapper"><div class="extIWContent">'+g+'<div id="routesearchbox">'+app.getRouteSearchFormHtml_iw(a,0,e+"@"+c+","+f)+"</div></div></div>";d.openExtInfoWindow(app.map,app.extInfoWindowId+b,extInfoWindowHtml,{beakOffset:3,paddingX:50,paddingY:50})}});return d},inArray:function(c,b){for(var a=0;a<c.length;a++){if(c[a]==b){return true}}return false},refreshMarkers:function(){app.addMarkers()},pushValueArray:function(b,a){b.push(a);return b},popValueArray:function(d,c){var a=new Array();for(var b=0;b<d.length;b++){if(d[b]!=c){a.push(d[b])}}return a},getMapBounds:function(){var c=app.map.getBounds();var d=new GLatLng();var g=new GLatLng();d=c.getNorthEast();g=c.getSouthWest();if(app.debug==true){document.getElementById("info").innerHTML="NE = "+d.lat()+" : "+d.lng()+"<br>";document.getElementById("info").innerHTML+="SW = "+g.lat()+" : "+g.lng()+"<br>"}var b=0.005*(18-app.map.getZoom())*2;var e=0.007*(18-app.map.getZoom())*2;var f={lat:d.lat(),lng:d.lng()};var a={lat:g.lat(),lng:g.lng()};f.lat=f.lat+b;f.lng=f.lng+e;a.lat=a.lat-b;a.lng=a.lng-e;if(f.lng>=180){f.lng=-360+f.lng}if(f.lng<=-180){f.lng=360+f.lng}if(a.lng>=180){a.lng=-360+a.lng}if(a.lng<=-180){a.lng=360+a.lng}if(f.lat>=90){f.lat=90}if(f.lat<=-90){f.lat=-90}if(a.lat>=90){a.lat=90}if(a.lat<=-90){a.lat=-90}d=new GLatLng(f.lat,f.lng);g=new GLatLng(a.lat,a.lng);return{NE_Pos:d,SW_Pos:g}},goToMarkerById:function(d){var c=app.getMarkerNumber(d);if(c!=null){var b=app.markers[c].getLatLng();var a=b.lat();var e=b.lng();app.markerWithInfoWindowLat=a;app.markerWithInfoWindowLng=e;a+=0.0015;if(app.extInfoWindowEnable){app.map.closeExtInfoWindow()}else{app.map.closeInfoWindow()}app.showDetails=true;app.showDetailsMarkerId=d;zs.zoomFromSlider=false;app.map.setCenter(new GLatLng(a,e),16)}},getMarkerNumber:function(c){var b=null;for(var a=0;a<app.markersId.length;a++){if(app.markersId[a]==c){b=a;break}}return b},getRouteSearchFormHtml_iw:function(b,c,a){var d="";if(c==0){d=d+'<div id="search_menu">';d=d+'<b>Route berechnen:</b> <a href="javascript:void(0)" onclick="app.setRouteSearchForm('+b+",1,'"+a+'\')">Hierher</a> - <a href="javascript:void(0)" onclick="app.setRouteSearchForm('+b+",2,'"+a+"')\">Von hier</a>";d=d+"</div>";return d}if(c==1){d=d+'<div id="search_var1">';d=d+'<form name="gm2_route_formular" action="http://maps.google.com/maps" method="get" target="_blank" onsubmit="last_search_typ = 1;saveValues(this.saddr.value, this.daddr.value);">';d=d+'<b>Route berechnen:</b> Hierher - <a href="javascript:void(0)" onclick="app.setRouteSearchForm('+b+",2,'"+a+'\')">Von hier</a><br /><span class="fieldlabel">Startadresse</span><br />';d=d+'<input name="saddr" type="text" class="fieldsearch" value="'+getFromFormValue()+'" /><input class="button_los" type="image" src="/assets/images_system/button_los.gif" value="Los" onfocus="if(this.blur)this.blur()" />';d=d+'<input name="daddr" type="hidden" value="'+a+'" />';d=d+'<input name="hl" type="hidden" value="de" />';d=d+"</form>";d=d+'<a href="javascript:void(0)" class="wizardpop" onclick="app.setRouteSearchForm('+b+",0,'"+a+"')\">&laquo; Zur&uuml;ck</a>";d=d+"</div>";return d}if(c==2){d=d+'<div id="search_var2">';d=d+'<form name="gm2_route_formular" action="http://maps.google.com/maps" method="get" target="_blank" onsubmit="last_search_typ = 2;saveValues(this.saddr.value, this.daddr.value);">';d=d+'<b>Route berechnen:</b> <a href="javascript:void(0)" onclick="app.setRouteSearchForm('+b+",1,'"+a+'\')">Hierher</a> - Von hier<br /><span class="fieldlabel">Zieladresse</span><br />';d=d+'<input name="daddr" type="text" class="fieldsearch" value="'+getToFormValue()+'" /><input class="button_los" type="image" src="/assets/images_system/button_los.gif" value="Los" onfocus="if(this.blur)this.blur()"  />';d=d+'<input name="saddr" type="hidden" value="'+a+'" />';d=d+'<input name="hl" type="hidden" value="de" /><p class="clr">&nbsp;</p>';d=d+"</form>";d=d+'<a href="javascript:void(0)" class="wizardpop" onclick="app.setRouteSearchForm('+b+",0,'"+a+"')\">&laquo; Zur&uuml;ck</a>";d=d+"</div>";return d}return null},setRouteSearchForm:function(d,e,a){var c=app.getRouteSearchFormHtml_iw(d,e,a);app.map.closeExtInfoWindow();var b=app.getMarkerNumber(d);extInfoWindowHtml='<img src="/assets/images_system/print_cover.gif" class="gm2_iw_print_cover" /><div class="gm2_iw_wrapper"><div class="extIWContent">'+app.infoWindowOptions.minContent+'<div id="routesearchbox">'+app.getRouteSearchFormHtml_iw(d,e,a)+"</div></div></div>";app.markers[b].openExtInfoWindow(app.map,app.extInfoWindowId+app.markersType[b],extInfoWindowHtml,{beakOffset:3,paddingX:10,paddingY:10})},printMap:function(){window.print()},getUrlParameterByName:function(a){var e=window.location.search;if(e!=""){e=e.substr(1,e.length-1);var c=e.split("&");for(var b=0;b<c.length;b++){var d=c[b].split("=");if(d[0].toLowerCase()==a.toLowerCase()){return d[1]}}return null}else{return null}},searchPointById:function(a){regionPoints.getPointById(app.searchId)},unload:function(){if(app.map){GUnload()}},setZoomEnabled:function(a){app.zoomEnabled=a}};function bq_button(b,a){this.obj=b;this.number=a;this.id="bq_0"+(a+1);this.state=0;this.onMouseOver=function(){this.setMouseOver()};this.onMouseOut=function(){if(this.state!=2){this.setInactive()}else{this.setSelected()}};this.onClick=function(){if(this.state==2){this.setInactive();app.bq_switch.setInactive();app.enabledSourceOfSupply=app.popValueArray(app.enabledSourceOfSupply,this.number);app.refreshMarkers()}else{this.setSelected();app.enabledSourceOfSupply=app.pushValueArray(app.enabledSourceOfSupply,this.number);app.refreshMarkers()}};this.setSelected=function(){this.obj.firstChild.className="active";this.state=2};this.setInactive=function(){this.obj.firstChild.className="inactive";this.state=0};this.setMouseOver=function(){this.obj.firstChild.className="mouseover"}}function bq_switch(a){this.obj=a;this.state=0;this.onMouseOver=function(){if(this.state!=2){this.obj.firstChild.className="mouseover";this.state=1}};this.onMouseOut=function(){if(this.state!=2){this.obj.firstChild.className="inactive";this.state=1}};this.onClick=function(){if(this.state==2){this.setInactive();for(var b=0;b<app.bq_buttons.length;b++){app.bq_buttons[b].setInactive();app.enabledSourceOfSupply=app.popValueArray(app.enabledSourceOfSupply,app.bq_buttons[b].number)}app.refreshMarkers()}else{this.setSelected();app.enabledSourceOfSupply=new Array();for(var b=0;b<app.bq_buttons.length;b++){app.bq_buttons[b].setSelected();app.enabledSourceOfSupply=app.pushValueArray(app.enabledSourceOfSupply,app.bq_buttons[b].number)}app.refreshMarkers()}};this.setSelected=function(){this.obj.firstChild.className="active";this.state=2};this.setInactive=function(){this.obj.firstChild.className="inactive";this.state=0}}var gm2_route_formularFrom=null;var gm2_route_formularTo=null;var last_search_typ=0;function saveValues(b,a){gm2_route_formularFrom=b;gm2_route_formularTo=a}function getFromFormValue(){if(gm2_route_formularFrom==null){return""}if(last_search_typ==1){return gm2_route_formularFrom.replace('"',"")}return""}function getToFormValue(){if(gm2_route_formularTo==null){return""}if(last_search_typ==2){return gm2_route_formularTo.replace('"',"")}return""};