﻿var BGMapRootDir=location.protocol+'//'+location.host+(location.port?':'+location.port:'')+'/';var BGMap={Version:'0.1',delimiter:'|',rootDir:BGMapRootDir,Includes:['_js/main.js?v=89'],require:function(libraryName){document.write('<script type="text/javascript" src="'+libraryName+'"></script>');},load:function(){if((typeof Prototype=='undefined')||parseFloat(Prototype.Version.split(".")[0]+"."+Prototype.Version.split(".")[1])<1.5)throw("BGMaps requires the Prototype JavaScript framework >= 1.5.0");$A(this.Includes).each(function(script){BGMap.require(script);});},browserInfo:function(){var browsers=["opera","msie","safari","firefox","mozilla"];var oslist=["x11;","macintosh","windows"];var type=-1;var os=-1;var version=0;var revision=0;var navstring=navigator.userAgent.toLowerCase();for(var i=0;i<browsers.length;i++){if(navstring.indexOf(browsers[i])!=-1){this.type=i;var vCheck=new RegExp(browsers[i]+"[ /]?([0-9]+(.[0-9]+)?)");if(vCheck.exec(navstring)!=null){this.version=parseFloat(RegExp.$1);};break;}};for(var i=0;i<oslist.length;i++){if(navstring.indexOf(oslist[i])!=-1){this.os=i;break;}};this.opera=this.type==0?true:false;this.ie=this.type==1?true:false;this.safari=this.type==2?true:false;this.firefox=this.type==3?true:false;this.mozilla=this.type==4?true:false;},browserIsCompatible:function(){this.b=new this.browserInfo();return(this.b.ie&&this.b.version>=5.5)||(this.b.firefox&&this.b.version>=1.0)||(this.b.opera&&this.b.version>=8)||(this.b.mozilla&&this.b.version>=1.7)||(this.b.safari&&this.b.version>=1);}};if(BGMap.browserIsCompatible()){BGMap.load();}else{alert("Ihrer Browser ist nicht verträglich mit dem gegenwärtige Version von Stadtplandienst");};function pix(str){return Math.round(str)+'px';};function newElement(tag,parent,attributes){var el=document.createElement(tag);for(var att in attributes){el.setAttribute(att,attributes[att]);};if(parent)parent.appendChild(el);return el;};function createImage(src,size,parent,attributes){if(isPNG(src)&&BGMap.b.ie&&(BGMap.b.version<7)){var image=newElement('div');var img=newElement('img',image);image.style.filter='progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src="'+src+'");';img.style.visibility='hidden';img.src=src;}else{var image=newElement('img');image.src=src;};if(size!=null){image.style.width=pix(size.width);image.style.height=pix(size.height);};if($(parent))parent.appendChild(image);for(var att in attributes){image.setAttribute(att,attributes[att]);};return image;};function isPNG(src){return src.match(/\.png$/i)||src.match(/GetLine|IconPaintSlots/);};function changeImage(image,src,size){$(image).setSize(size);if(BGMap.b.ie&&image.tagName.toLowerCase()=='div'){var trueImage=$(image.firstChild);trueImage.setSize(size);image.style.filter='progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src="'+src+'");';trueImage.src=src;}else{image.src=src;}};function makeAbsolute(){if(arguments.length==1)arguments[0].style.position='absolute';else $A(arguments).each(function(el){el.style.position='absolute';});};function setPosition(el,position){el.style.top=pix(position.y);el.style.left=pix(position.x);};function makeUnselectable(img){if(arguments.length==1)var elements=[img];else var elements=arguments;$A(elements).each(function(image){if(BGMap.b.ie){if(image.tagName.toLowerCase()=='img'){image.unselectable="on";image.galleryImg="no";image.onselectstart=function(){return false;};};Event.observe(window,'unload',function(){this.unselectable=null;this.galleryImg=null;this.onselectstart=null;this.onload=null}.bind(image));}else if(BGMap.b.firefox||BGMap.b.mozilla){image.style.MozUserSelect="none";image.oncontextmenu=function(){return false;};}});};function changeCursor(element,cursor){if(cursor=="pointer"&&BGMap.b.ie&&BGMap.b.version<6)cursor="hand";element.style.cursor=cursor;};function removeChildrenRecursively(node){if(!node)return;while(node.hasChildNodes()){removeChildrenRecursively(node.firstChild);node.removeChild(node.firstChild);}};function logStatistics(counter){if(ivw&&!/ivw/.test(counter.toLowerCase()))ivw.update("spd");try{var b=banners;}catch(e){b=false;};if(b)b.update({"provinceShort":SearchForm.sesProvinceShort,"cityname":SearchForm.sesCityName,"zip":SearchForm.sesZip,"street":SearchForm.sesStreet});var options={method:'post',parameters:'sid='+sid+'&a=logstatistics&counter='+counter};new Ajax.Request(BGMap.gateway,options);};function logStatisticsWithParam(counter,id){var params={"TooltipDisplayed":"subcatid"};var options={method:"post",parameters:"a=logstatistics&counter="+counter+"&"+params[counter]+"="+id};new Ajax.Request(BGMap.gateway,options);};function logPoiSearchStatistics(poiName,cityKey,searchStatus){if(poiName.length>0&&poiName.match(/\S/)){var rxNotToLog=new RegExp(/\w-\w|^(auf\s+der|auf\s+dem|an\s+der|am|in\s+den|im|zu\s+den|zum|bei\s+den|beim)\b|(ch|str|weg|damm|gasse|zeile|bhf|hbf|bogen|ring|kamp|stra|korso|steig|gasthof|hotel)\b|\b(zoo|tierpark|aquarium|hof|uni|alle|über\s+den|bei\s+der|hinter\s+de[mn]|Best\s+Western|aldi|ibis|lidl|ikea|aral|esso|agip|dorint|edeka|hilton|holiday\s+inn|media\s+markt|penny|woolworth|mc\s*donald(s)?)\b|platz|allee|alee|alllee|chaussee|chausse|chausee|chause|str\.|straasse|strasse|stasse|starsse|strase|straße|staße|starße|srtaße|sraße|szraße|traße|stieg|brook|fleet|krankenhaus|klinik|kirche|st\.|ch\.|universität|schule|gymnasium|friedhof|promenade|(haupt)?bahnhof|bf\.|dr\.|baumarkt/);var rxToLog=new RegExp(/(s-|u-)((haupt)?bahn|bhf|hbf|bf\.)/);var rxNotToLogNumber=new RegExp(/\d+/);var poiNameLower=poiName.toLowerCase();if((!poiNameLower.match(rxNotToLog)||poiNameLower.match(rxToLog))&&!poiNameLower.match(rxNotToLogNumber)){var options={method:'post',parameters:'sid='+sid+'&a=logpoisearchstatistics&pn='+encodeURIComponent(poiName)+'&ck='+cityKey+'&ss='+searchStatus};new Ajax.Request(BGMap.gateway,options);}}};function initRollover(){var rolloverEl=document.getElementsByClassName("rollover-menu");$A(rolloverEl).each(function(item,index){fx.rollover(item);changeCursor(item,'pointer');});};String.prototype.setQueryStringVar=function(key,value){var queryString=this.split("?")[1];var variables=queryString.split("&");var varObj={};for(var i=0;i<variables.length;i++){var temp=variables[i].split("=");varObj[temp[0]]=temp[1];if(temp[0]==key)return this.replace(temp[1],value);};return this;};function log(){if(!document.all)if(console)console.log.apply(this,arguments);};function info(){if(!document.all)if(console)console.info.apply(this,arguments);};function err(){if(!document.all)if(console)console.error.apply(this,arguments);};function warn(){if(!document.all)if(console)console.warn.apply(this,arguments);};function logs(){if(window.opera)window.opera.postError.apply(this,arguments);else if(window.console)window.console.log(arguments[0]);else log.apply(this,arguments);};function d(message){if(!$('debug')){var div=document.createElement("div");div.id="debug";div.className="notice";document.getElementsByTagName("body")[0].appendChild(div);Event.observe($('debug'),'dblclick',function(){this.hide();}.bindAsEventListener($('debug')));Event.observe(document,'keypress',function(event){var key=event.keyCode?event.keyCode:event.which;if(String.fromCharCode(key).toLowerCase()=='d')$('debug').toggle();});new BGMap.Draggable('debug');}else{$('debug').show();};if(message){var html='';if(typeof message=="object"){html='<div class="object">'+$H(message).inspect().escapeHTML()+'</div>';html=html.replace(/,/g,",<br />");html=html.replace(/({|})/g,"<br />$1<br />");html=html.replace(/('[^']*')/g,'<span class="object-property">$1</span>');html=html.replace(/(\: [^,]*),/g,'<span class="object-value">$1</span>');}else if(typeof message=="array"){html=$A(message).inspect().escapeHTML();}else{html=message.toString().escapeHTML();html=html.replace(/("[^"]*")/gi,'<span class="string">$1</span>');html=html.replace(/([\d]+)/gi,'<span class="number">$1</span>');if(html.substr(0,1)=='+')html+=$('debug').innerHTML;};$('debug').update('<p>'+html+'</p>');}};function Size(width,height){this.width=width;this.height=height;};function Pos(x,y){this.x=x;this.y=y;};function glLongLat(longitude,latitude){this.lat=latitude;this.lon=longitude;this.toString=function(){return this.lon+','+this.lat;};this.equals=function(pos){return pos.lon==this.lon&&pos.lat==this.lat};};function setCookieValue(key,value){var expires=new Date();expires.setFullYear(expires.getFullYear()+1);document.cookie=key+'='+value+';path=/;expires='+expires.toUTCString();};