var agt=navigator.userAgent.toLowerCase();if(agt.indexOf('msie')>-1){}
var panel;function initmenu(){slider.init('accordion',0);$('accordion').style.visibility='visible';}
var imgLocation=OpenLayers.Util.getImagesLocation();var map,drawControl,vectors,routes;var Controls,formats;var mousePosition,selectedFeature;var introDisplayContent=new Object({tab1:"",tab2:"",activeTab:null});function init(){var options={controls:[],projection:new OpenLayers.Projection("EPSG:900913"),displayProjection:new OpenLayers.Projection("EPSG:4326"),units:"m",numZoomLevels:19,maxResolution:156543.0339,maxExtent:new OpenLayers.Bounds(-20037508,-20037508,20037508,20037508.34)};map=new OpenLayers.Map('map',options);var gnorm=new OpenLayers.Layer.Google("Google kaart",{'type':G_NORMAL_MAP,'sphericalMercator':true,'maxZoomLevel':17,'minZoomLevel':3});var gphy=new OpenLayers.Layer.Google("Google terrein",{'type':G_PHYSICAL_MAP,'sphericalMercator':true,'maxZoomLevel':17,'minZoomLevel':3});var gsat=new OpenLayers.Layer.Google("Google satelliet",{'type':G_SATELLITE_MAP,'sphericalMercator':true,'maxZoomLevel':19,'minZoomLevel':3});var ghyb=new OpenLayers.Layer.Google("Satelliet en wegen",{'type':G_HYBRID_MAP,'sphericalMercator':true,'maxZoomLevel':19,'minZoomLevel':3});var mapnik=new OpenLayers.Layer.TMS("OpenStreetMap",["http://tile.openstreetmap.org/"],{type:'png',buffer:0,transitionEffect:'resize',getURL:osm_getTileURL,'minResolustion':0.5971642833709717});var osmwater=new OpenLayers.Layer.TMS("Waterkaart","http://squall.student.utwente.nl/kaart/waterkaart/",{type:'png',buffer:0,transitionEffect:'resize',getURL:osm_getTileURL,'minResolution':4.777314266967774});map.addLayers([mapnik,osmwater,gsat,gnorm,gphy,ghyb]);routes=new OpenLayers.Layer.GML("Vaarroutes","gml/vaarroutes.kml",{format:OpenLayers.Format.KML,preFeatureInsert:routesStyle,onFeatureInsert:function(feature){},formatOptions:{extractStyles:true,extractAttributes:true,placemarksDesc:'Geen beschrijving'}})
routes.events.register('featuresadded',routes,getAdditionalData);routes['categories']=new Object();routes['feutureMaxBounds']=new OpenLayers.Bounds();routes.events.addEventType("featuresDestroyAll");map.addLayer(routes);gps=new OpenLayers.Layer.Vector("GPS")
map.addLayers([gps]);gps.isRunning=false;vectors=new OpenLayers.Layer.Vector('Mijn kaart"',{formatOptions:{extractStyles:true,extractAttributes:true},styleMap:new OpenLayers.StyleMap({strokeWidth:$('lineWidth').value,strokeColor:$('lineColor').value,pointRadius:$('pointRadius').value,fillOpacity:0.2,fillColor:$('lineColor').value,hoverStrokeColor:'#FF1200',hoverPointUnit:'%',graphicOpacity:1,graphicWidth:30,graphicHeight:39})});modifyStroke();map.addLayers([vectors]);updateFormats();var removeOptions={clickout:true,onSelect:featureRemove,toggle:false,multiple:false,hover:false,multipleKey:"shiftKey"};var modifyOptions={onDelete:function(feature){OpenLayers.Console.log("delete",feature.id);},onModificationEnd:controlDeactivate};var measureOptions={displayUnits:'km',featureAdded:controlDeactivate,handlerOptions:{persist:true}};var dragOptions={onComplete:controlDeactivate};var drawOptions={featureAdded:controlDeactivate};var addIconOptions={featureAdded:iconStyle};var selectStyle=OpenLayers.Util.applyDefaults({strokeWidth:"3",strokeColor:"red"},OpenLayers.Feature.Vector.style["select"]);var selectOptions={selectStyle:selectStyle,onSelect:onFeatureSelect,onUnselect:onFeatureUnselect};Controls={selectControl:new OpenLayers.Control.SelectFeature(routes,selectOptions),featureRemove:new OpenLayers.Control.SelectFeature(vectors,removeOptions),point:new OpenLayers.Control.DrawFeature(vectors,OpenLayers.Handler.Point,drawOptions),line:new OpenLayers.Control.DrawFeature(vectors,OpenLayers.Handler.Path,drawOptions),polygon:new OpenLayers.Control.DrawFeature(vectors,OpenLayers.Handler.Polygon,drawOptions),drag:new OpenLayers.Control.DragFeature(vectors,dragOptions),modify:new OpenLayers.Control.ModifyFeature(vectors,modifyOptions),measure:new OpenLayers.Control.Measure(OpenLayers.Handler.Path,{persist:false}),zoom:new OpenLayers.Control.ZoomBox(),addicon:new OpenLayers.Control.DrawFeature(vectors,OpenLayers.Handler.Point,addIconOptions)};Controls.measure.events.on({"measure":measureDone,"measurepartial":measurePoint});Controls.measure['lastAddedFeature']=null;for(var key in Controls){map.addControl(Controls[key]);}
Controls.selectControl.activate();map.addControl(new OpenLayers.Control.Navigation());map.addControl(new OpenLayers.Control.PanZoomBar({displayClass:"c_PanZoomBar",zoomWorldIcon:true}));map.addControl(new OpenLayers.Control.KeyboardDefaults());map.addControl(new OpenLayers.Control.Permalink("myPermalink"));mousePosition=new OpenLayers.Control.MousePosition({formatOutput:niceFormat,element:$("coordDisplay")});map.addControl(mousePosition);if(!map.getCenter()){map.setCenter(OpenLayers.Layer.SphericalMercator.forwardMercator(4.3698,52.0986),10);}
initmenu();myinit_addtitle_checkbox();}
function myinit_addtitle_checkbox(){var x=document.getElementsByTagName("input");for(var i in x){if(i.substring(0,3)=='cb_'){$(i).title="Klik om alle symbolen van deze categorie op de kaart tonen of wissen";}
if(i.substring(0,3)=='bt_'){$(i).title="Klik hier om alle items uit de categorie per plaats weer te geven";}}}
function osm_getTileURL(bounds){var res=this.map.getResolution();var x=Math.round((bounds.left-this.maxExtent.left)/(res*this.tileSize.w));var y=Math.round((this.maxExtent.top-bounds.top)/(res*this.tileSize.h));var z=this.map.getZoom();var limit=Math.pow(2,z);if(y<0||y>=limit){return OpenLayers.Util.getImagesLocation()+"404.png";}else{x=((x%limit)+limit)%limit;return this.url+z+"/"+x+"/"+y+"."+this.type;}}
function controlDeactivate(feature,pixel,activeControl){if(activeControl!=null){activeControl.deactivate();}else{this.deactivate();}
Controls.selectControl.activate();clearToolbarStyle();}
function clearToolbarStyle(){$('map').style.cursor='default';var y=$('toolBar').getElementsByTagName("IMG");for(var i=0;i<y.length;i++){y[i].className='c_Control';}}
function controlToggle(element,classActive,cursor){var activeControl=null;for(key in Controls){var control=Controls[key];if(control.active&&key!='selectControl'){activeControl=key;}
control.deactivate();}
clearToolbarStyle();if(element.id=='zoom'){map.events.register('mouseup',Controls.zoom,zoomDeactivate);}
if(element.id=='addicon'){vectors.events.register('featureadded',vectors,closeDisplay);}
if(element.id=='measure'){removeMeasurements();}
if(element.id!=activeControl){element.className=classActive;$('map').style.cursor=cursor;if(element.id=='modify'){Controls['modify'].mode=OpenLayers.Control.ModifyFeature.RESHAPE;}else{Controls['modify'].mode=null;}
Controls[element.id].activate();}else{Controls['selectControl'].activate();}}
function closeDisplay(){if($('iconDisplay').style.visibility=='visible'){displayToggle('iconDisplay');}
vectors.events.unregister('featureadded',vectors,closeDisplay);}
function removeMeasurements(){if(Controls['measure'].lastAddedFeature!=null){for(var i=map.popups.length-1;i>=0;i--){map.removePopup(map.popups[i]);}
vectors.destroyFeatures(Controls['measure'].lastAddedFeature);Controls['measure'].lastAddedFeature=null;}}
function serializeAll(){var type=$("formatType").value;var str=formats['out'][type].write(vectors.features);$('output').value=str.replace(/,/g,', ');}
function featureRemove(feature){var x=confirm("Route/figuur verwijderen!");if(x==true){var f=feature;Controls['featureRemove'].unselect(feature);vectors.destroyFeatures(f);controlDeactivate(null,null,this);}}
function myclear(){$('output').value="";}
var shownDis=new Array();function displayToggle(id){var el=$(id);if(el.style.visibility=="hidden"){var y=false;for(var x in shownDis){if(shownDis[x]==id){y=true;break;}}
if(!y){shownDis.push(id);var leftPos=$('fotoBar2').parentNode.offsetLeft+$('fotoBar2').offsetLeft;el.style.left=leftPos+'px';}
el.style.visibility="visible";}else{el.style.visibility="hidden";}}
function barToggle(id){var el=$(id);if(el.style.visibility=="hidden"){el.style.visibility="visible";}else{el.style.visibility="hidden";}}
function importdata(){var type=$('formatType').value;var feature=formats['in'][type].read($('output').value);vectors.addFeatures(feature);}
function modifyStroke(){OpenLayers.Feature.Vector.style['default']['strokeWidth']=$('lineWidth').value;OpenLayers.Feature.Vector.style['default']['strokeColor']=$('lineColor').value;OpenLayers.Feature.Vector.style['default']['strokeOpacity']=$('lineOpacity').value;OpenLayers.Feature.Vector.style['default']['pointRadius']=$('pointRadius').value;vectors.styleMap.styles['default']['defaultStyle']['strokeWidth']=$('lineWidth').value;vectors.styleMap.styles['default']['defaultStyle']['strokeColor']=$('lineColor').value;vectors.styleMap.styles['default']['defaultStyle']['strokeOpacity']=$('lineOpacity').value;vectors.styleMap.styles['default']['defaultStyle']['pointRadius']=$('pointRadius').value;vectors.styleMap.styles['default']['defaultStyle']['fillColor']=$('lineColor').value;}
function startSearch(location){var geocoder=new GClientGeocoder();geocoder.getLocations(location+", NL",gotGeocoderResult);}
function gotGeocoderResult(result){if(result==null||result.Status.code!=200){alert("Het opgegeven adres kan niet gevonden worden.");return;}
var record=result.Placemark[0];var lonlat=new OpenLayers.Layer.SphericalMercator.forwardMercator(record.Point.coordinates[0],record.Point.coordinates[1])
var data="<b>"+record.address+"<\/b>";var point=new OpenLayers.Geometry.Point(lonlat.lon,lonlat.lat);var pointFeature=new OpenLayers.Feature.Vector(point,null);addIconStyle(pointFeature);vectors.addFeatures([pointFeature]);map.setCenter(lonlat);}
function helpMenu(item){window.open('help.html'+item,'','menubar=no,scrollbars=yes,resizable=yes,width=600,height=300')}
function changeBaseLayerl(selectedLayer){for(var i=0;i<map.layers.length;i++){if(map.layers[i].isBaseLayer&&map.layers[i].name==selectedLayer.id){var layer=map.layers[i].name;map.setBaseLayer(map.layers[i]);}}}
function changeLayerUrl(){routes.setUrl($('layerUrl').value);}
function onPopupClose(evt){Controls.selectControl.unselect(selectedFeature);}
function onFeatureSelect(feature){selectedFeature=feature;popup=new OpenLayers.Popup.FramedCloud("Toelichting",map.getLonLatFromPixel(mousePosition.lastXy),new OpenLayers.Size(100,100),"<p><b>"+feature.attributes.name+"</b></p>"+feature.attributes.description,null,true,onPopupClose);feature.popup=popup;map.addPopup(popup);}
function onFeatureUnselect(feature){map.removePopup(feature.popup);feature.popup.destroy();feature.popup=null;feature.layer.redraw();}
function w_displayRoute(element){for(key in routes.features){if(routes.features[key].fid==element.id){if(routes.features[key].attributes.description.length>400){var feature=routes.features[key];}}}
if(w_popup!=null){map.removePopup(w_popup);w_popup=null;}
feature['show']=true;var lonlat=new OpenLayers.LonLat(feature.geometry.x,feature.geometry.y);w_popup=new OpenLayers.Popup.FramedCloud(feature.attributes.name,feature.geometry.getBounds().getCenterLonLat(),null,'<p><b>'+feature.attributes.name+'</b></p>'+feature.attributes.description,null,true);map.addPopup(w_popup,false);map.zoomToExtent(feature.geometry.getBounds());feature['show']=false;}
var selectCity='';function w_displayItem(element){var parentDiv=element.parentNode;var category=parentDiv.id;if(element.checked){if(routes.categories[category]==true){var displayMode='ínline';}else{w_getData("category="+category);routes.categories[category]=true;return;}}else{var displayMode='none';}
for(key in routes.features){if(routes.features[key].fid==category){routes.features[key].style.display=displayMode;}}
routes.redraw();}
function changeCity(oForm){routes.events.register("featuresDestroyAll",routes,prepareQuery);if(oForm.elements["removeLoc"].checked){w_removeAllCategory(oForm);}else{w_removeCategory(oForm);}}
function prepareQuery(evt){routes.events.unregister("featuresDestroyAll",routes,prepareQuery);var oForm=evt.target;var oSelect=oForm.elements["selectCity"];var index=oSelect.selectedIndex;var cityId=oSelect.options[index].id;var cityText=oSelect.options[index].text;var sPos=oSelect.options[index].value;var aPos=sPos.split(",");var lat=parseFloat(aPos[0]);var lon=parseFloat(aPos[1]);var zoom=parseInt(aPos[2]);selectCity=cityId;$('cityField').value=cityId;$('cityButton').innerHTML="<b>"+cityText+"</b>";var categoryArray=new Array();for(var i=0;i<$('fm_legenda_alg').elements.length;i++){var element=$('fm_legenda_alg').elements[i];if(element.type=='checkbox'&&element.checked){categoryArray.push(element.parentNode.id);}}
if(oForm.elements.showAllLoc[1].checked){if(categoryArray.length>0){w_getData('category='+categoryArray.join());for(var c in categoryArray){routes.categories[categoryArray[c]]=true;}}}else{getDataGML(cityId);}
map.setCenter(OpenLayers.Layer.SphericalMercator.forwardMercator(lon,lat),zoom);if(oForm.elements["showWelcom"].checked){getFoto(cityId);}}
function w_removeCategory(oForm){var f=new Array();for(var c in routes.categories){for(var i in routes.features){if(routes.features[i].fid==c){f.push(routes.features[i]);}}
routes.categories[c]=false;}
routes.destroyFeatures(f);routes.events.triggerEvent("featuresDestroyAll",{target:oForm});}
function w_removeAllCategory(oForm){routes['categories']=new Object();var f=new Array();for(var i in routes.features){var sFid=(routes.features[i].fid==undefined)?"vr_":routes.features[i].fid.substr(0,3);if(sFid!='vr_'&&sFid!='wr_'&&sFid!='fr_'){f.push(routes.features[i]);}}
routes.destroyFeatures(f);routes.events.triggerEvent("featuresDestroyAll",{target:oForm});}
function w_getData(category,displayMode){toggle('waitDisplay');var cityX=selectCity.toLowerCase();if(cityX!=''&&cityX!='zuid-holland'&&cityX!='nederland'){var city='&city='+cityX;}else{var city='';}
routes['numFeatures']=0;routes.url="../../php/dbGetData.php?"+category+city;routes.format=OpenLayers.Format.Text;routes.format.prototype.displayMode=displayMode;loadGML();routes.events.register('featureadded',parentDiv,setLoadResult);routes.events.register('featuresadded',parentDiv,checkLoadResult);}
function setLoadResult(evt){routes['numFeatures']+=1;}
function checkLoadResult(evt){if(routes.numFeatures==0){if($('cityField').value!=''){var dataNotFound='Geen gegevens gevonden in '+$('cityField').value;}else{var dataNotFound='Geen gegevens gevonden';}
alert(dataNotFound);}
routes.events.unregister('featureadded',parentDiv,setLoadResult);routes.events.unregister('featuresadded',parentDiv,checkLoadResult);w_zoomToExtent(evt.features);toggle('waitDisplay');}
function w_zoomToExtent(features){var maxExtent=features[0].geometry.getBounds();for(var i=0,len=features.length;i<len;i++){maxExtent.extend(features[i].geometry.getBounds());}
map.zoomToExtent(maxExtent,false);}
function w_searchData(category,description){var d=false;var c=false;var y=false;if(category!=''){category=category.toLowerCase();categoryString='category='+category;c=true;}
if(description!=''){description='&description='+description;d=true;}
if(c||d){for(var x in routes.categories){if(x==category&&routes.categories[x]){y=true;}}
if(c&&!d&&y){for(key in routes.features){if(routes.features[key].fid==category){routes.features[key].style.display='inline';}}
routes.redraw();}else{w_getData(categoryString+description);}}else{alert('Er zijn geen zoek-argumenten opgegeven: Kies een categorie en/of geef een zoek tekst op.');}}
function addFeaturesToDiv(unregister){var result=false;for(key in routes.features){if(routes.features[key].fid==parentDiv.id){result=true;parentDiv.innerHTML+='<span class="c_featureMenuItem" onclick="w_showFeatureOnClick(\''+routes.features[key].id+'\', this);" onmouseover="w_showFeature(\''+routes.features[key].id+'\', true);"  onmouseout="w_showFeature(\''+routes.features[key].id+'\', false );" >'+routes.features[key].attributes['name']+'</span>';}}
if(!result){parentDiv.innerHTML+='<span class="c_featureMenuItem">Geen gegevens gevonden.</span>';}
parentDiv.innerHTML+='<br />';if(unregister!=true){routes.events.unregister('featuresadded',parentDiv,addFeaturesToDiv);}}
var parentDiv;function w_createFeatureMenu(element){parentDiv=element.parentNode;var category=parentDiv.id;if(element.childNodes[0].src.search("minus")<0){element.childNodes[0].src=element.childNodes[0].src.replace("plus","minus");if(routes.categories[category]!=true){routes.events.register('featuresadded',parentDiv,addFeaturesToDiv);w_getData("category="+category,'none');routes.categories[category]=true;}else{addFeaturesToDiv(true);}}else{element.childNodes[0].src=element.childNodes[0].src.replace("minus","plus");for(var i=parentDiv.childNodes.length-1;i>2;i--){parentDiv.removeChild(parentDiv.childNodes[i]);}}}
function w_showFeature(featureId,display){if(display){var displayMode='inline';}else{var displayMode='none';}
var feature=routes.getFeatureById(featureId);if(feature['show']!=true){feature.style.display=displayMode;routes.redraw();}}
var w_popup=null;function w_showFeatureOnClick(featureId,element){var feature=routes.getFeatureById(featureId);if(w_popup!=null){map.removePopup(w_popup);w_popup=null;}
if(feature['show']!=true){feature['show']=true;element.style.fontWeight='bold';var lonlat=new OpenLayers.LonLat(feature.geometry.x,feature.geometry.y);w_popup=new OpenLayers.Popup.FramedCloud(feature.attributes.name,new OpenLayers.LonLat(feature.geometry.x,feature.geometry.y),null,'<p><b>'+feature.attributes.name+'</b></p>'+feature.attributes.description,null,true);map.addPopup(w_popup,false);}else{feature['show']=false;element.style.fontWeight='normal';}}
function selectText(){$('output').select();}
function updateFormats(){var in_options={'internalProjection':map.baseLayer.projection,'externalProjection':new OpenLayers.Projection($("inproj").value)};var out_options={'internalProjection':map.baseLayer.projection,'externalProjection':new OpenLayers.Projection($("outproj").value)};var formatOptions={extractStyles:true,extractAttributes:true};var gmlOptions={featureType:"feature",featureNS:"http://example.com/feature"};var gmlOptionsIn=OpenLayers.Util.extend(OpenLayers.Util.extend({},gmlOptions),in_options);var gmlOptionsOut=OpenLayers.Util.extend(OpenLayers.Util.extend({},gmlOptions),out_options);var kmlOptionsIn=OpenLayers.Util.extend(OpenLayers.Util.extend({},formatOptions),in_options);formats={'in':{wkt:new OpenLayers.Format.WKT(in_options),gpx:new OpenLayers.Format.GPX(in_options),georss:new OpenLayers.Format.GeoRSS(in_options),gml:new OpenLayers.Format.GML.v3(gmlOptionsIn),kml:new OpenLayers.Format.KML(kmlOptionsIn)},'out':{wkt:new OpenLayers.Format.WKT(out_options),gpx:new OpenLayers.Format.GPX(out_options),georss:new OpenLayers.Format.GeoRSS(out_options),gml:new OpenLayers.Format.GML.v3(gmlOptionsOut),kml:new OpenLayers.Format.KML(out_options)}};}
function updateLayerOpacity(layer,optacityValue){map[layer].setOpacity(optacityValue);Controls.selectControl.activate()}
function niceScale(){var scale=this.map.getScale();if(!scale){return;}
if(scale>=9500&&scale<=950000){scale=Math.round(scale/10000)+" m";}else if(scale>=950000){scale=Math.round(scale/10000000)+" m";}else{scale=Math.round(scale);}
return"1 : "+scale;}
function niceDegrees(coord){var deg=Math.floor(coord);var min=(coord-deg)*60;return deg+"° "+min.toFixed(2)+"'";}
function niceFormat(lonLat){return niceDegrees(lonLat.lat)+" NB &nbsp; "+niceDegrees(lonLat.lon)+" OL &nbsp; "+"Zoom "+this.map.getZoom();};function getAdditionalData(){routes.events.unregister('featuresadded',routes,getAdditionalData);var urlParams=OpenLayers.Util.getParameters();if(urlParams){for(var key in urlParams){if(key.toLowerCase()=='city'){var city=urlParams[key];getFoto(city);getDataGML(city);}}}}
function getDataGML(city){city=city.toUpperCase();var cityFilter="city="+city;routes.url=encodeURI("../../php/dbGetCity.php?"+cityFilter);routes.format=OpenLayers.Format.KML;loadGML();}
function getFoto(city){try{$('displayArea').removeChild($('introDisplaySmall'));}catch(err){var doNothing;}
$('introDisplay').style.visibility='hidden';var city=city.toLowerCase();var f="gempag/";$("fotoBar1").src=f+city+"/1.jpg";$("fotoBar2").src=f+city+"/2.jpg";$("fotoBar3").src=f+city+"/3.jpg";$("fotoBar4").src=f+city+"/4.jpg";$("introDisplayTab").innerHTML="Welkom in "+city.substring(0,1).toUpperCase()+city.substring(1);var url=f+city+"/intro"+city+".txt"
OpenLayers.Request.GET({'url':url,'callback':updateIntroDisplay,'failure':loadFailure1});var url=f+city+"/vaarregels"+city+".txt"
OpenLayers.Request.GET({'url':url,'callback':updatevaarDisplay,'failure':loadFailure2});}
function loadGML(){routes.loaded=false;routes.events.triggerEvent("loadstart");routes.loadGML();}
function loadFailure1(request){introDisplayContent['tab1']="<p>Er is voor deze gemeente of waterschap nog geen welkomstekst. Onze excuses hiervoor.</p>";$("introDisplayContent").innerHTML="<p>Er is voor deze gemeente of waterschap nog geen welkomstekst. Onze excuses hiervoor.</p>";}
function loadFailure2(request){introDisplayContent['tab2']="<p>Er zijn geen aanvullende vaarregels op het Binnenvaart Politie Regelement (BPR) gevonden.</p> ";}
function updateIntroDisplay(request){introDisplayContent['tab1']=request.responseText;$("introDisplayContent").innerHTML=request.responseText;displayToggle('introDisplay');}
function updatevaarDisplay(request){introDisplayContent['tab2']=request.responseText;}
function w_getRoute(item){if(routes[item.id]==true){var features=new Array();for(var i=0,len=routes.features.length;i<len;i++){if(routes.features[i].fid==item.id){features.push(routes.features[i]);}}
if(features.length>0){w_zoomToExtent(features);}}else{routes.url="gml/"+item.id+".kml";routes.format=OpenLayers.Format.KML;loadGML();routes.events.register('featuresadded',item,getRouteResult);routes[item.id]=true;}}
function getRouteResult(evt){w_zoomToExtent(evt.features);routes.events.unregister('featuresadded',item,getRouteResult);}
function routesStyle(feature){try{feature.style['cursor']="pointer";}catch(err){var doNothing;}}
function minimizeDisplay(id,imgUrl,desc){barToggle(id);var divx=OpenLayers.Util.createImage(id+'Small',new OpenLayers.Pixel(1,1),new OpenLayers.Size(36,36),imgUrl,'static',null,1,null);divx.onclick=new Function("maximizeDisplay(this,'"+id+"')");divx.className="c_Control";divx.title="Maximaliseer "+desc;divx.style.marginRight="5px";$('displayArea').appendChild(divx);}
function maximizeDisplay(divx,id){barToggle(id);$('displayArea').removeChild(divx);}
function updateFormLayout(item){var item=item.id.toLowerCase(item);var el=$('formatType');if(item=='opendoc'){$('titleImportForm').innerHTML='Importeer locaties/routes';$('butImport').style.display='inline';$('butExport').style.display='none';$('outproj').style.display='none';$('inproj').style.display='inline';$('gpxFormat').innerHTML="GPX";$('gpxFormat').style.visibility='visible';}else if(item=='featuresave'){$('titleImportForm').innerHTML='Exporteer locaties/routes';$('butImport').style.display='none';$('butExport').style.display='inline';$('outproj').style.display='inline';$('inproj').style.display='none';$('gpxFormat').innerHTML="";$('gpxFormat').style.visibility='hidden';}else{$('titleImportForm').innerHTML='';$('butImport').style.display='none';$('butExport').style.display='none';$('outproj').style.display='none';$('inproj').style.display='none';}}
function resizeMap(){var bN=OpenLayers.Util.getBrowserName();var vPH=getViewportHeight(bN);var vPW=getViewportWidth(bN);$('map').style.width=vPW-5+"px";$('map').style.height=vPH-5+"px";$('header').style.width=vPW-20+"px";$('footer').style.width=vPW-20+"px";$('footer').style.top=vPH-20+"px";var obj=$('accordion');var top=(isNaN(parseInt(obj.style.top,10)))?180:parseInt(obj.style.top,10);var aDiv=obj.getElementsByTagName("div");for(var x in aDiv){if(aDiv[x].className=="sliderContent"){aDiv[x].maxh=(vPH-270-top);}}
$('pageDisplayContent').style.height=vPH-85+"px";$('pageDisplayContentIframe').style.height=vPH-85+"px";if(vPW<=1060){var fBw="235px"
$('fotoBar1').style.width="240px";$('fotoBar2').style.width=fBw;$('fotoBar3').style.width=fBw;$('fotoBar4').style.width=fBw;$('nauticDisplay').style.width=fBw;}}
function getViewportHeight(bN){var height=-1;var mode=document.compatMode;if((mode||bN=='msie')&&bN!='opera'){switch(mode){case'CSS1Compat':height=document.documentElement.clientHeight;break;default:height=document.body.clientHeight;}}else{height=self.innerHeight;}
if(height<=635){return 595;}else{return height;}}
function getViewportWidth(bN){var width=-1;var mode=document.compatMode;if(mode||bN=='msie'){switch(mode){case'CSS1Compat':width=document.documentElement.clientWidth;break;default:width=document.body.clientWidth;}}else{width=self.innerWidth;}
if(width<=1060){return 1000;}else{return width;}}
function contentToggle(item,nr,id){var spanTag=item.parentNode.getElementsByTagName('span');for(var x in spanTag){spanTag[x].className="bartab";}
$(id).innerHTML=introDisplayContent['tab'+nr];introDisplayContent.activeTab=item;item.className="bartabcurrent";}
function zoomDeactivate(e){map.events.unregister('mouseup',Controls.zoom,zoomDeactivate);controlDeactivate(null,null,this);}
function addIconStyle(feature){var style={};style['graphicOpacity']=1;style['graphicWidth']=30;style['graphicHeight']=39;style['graphicXOffset']=-(style.graphicWidth/2);style['graphicYOffset']=-style.graphicHeight;style['externalGraphic']="img/"+$("iconType").value+".png";feature.style=style;vectors.redraw();}
function iconStyle(feature){addIconStyle(feature);controlDeactivate(null,null,this);}
function calcVincenty(geometry){var dist=0;for(var i=1;i<geometry.components.length;i++){var first=geometry.components[i-1];var second=geometry.components[i];dist+=calcDistance(first,second);}
return dist.toFixed(0);}
function measurePoint(event){var measureGeometry=event.geometry;var s=$("coordDisplay").innerHTML;var c='<br />'+s.substr(0,s.indexOf("N"));c+=s.substring(s.indexOf("N")+2,s.indexOf("O"));if(measureGeometry.components.length==1){measureStart();event.geometry['descriptions']=new Array();$('pointerDisplay').innerHTML="";}else{event.geometry['descriptions'].push($('pointerDisplay').innerHTML);}
var units=event.units;var order=event.order;var measure=event.measure;var element=$('measureDisplay');var out="";if(order==1){out=calcVincenty(measureGeometry)+" m";}else{out="Afst: "+measure.toFixed(3)+" "+units+"<sup>2</"+"sup>";}
element.innerHTML=out;}
function measureDone(event){measurePoint(event);var line=new OpenLayers.Feature.Vector(event.geometry,null);line.attributes.description=$('pointerDisplay').innerHTML;line.attributes.name="Afstand en koers";Controls.measure.lastAddedFeature=line;vectors.addFeatures(line);measureStop();controlDeactivate(null,null,Controls.measure);calcPosPopup(event.geometry);}
function displayMove(event){var measureGeometry=Controls.measure.handler.line.geometry;if(measureGeometry!=null){var el=$('pointerDisplay');el.style.left=event.xy.x+'px';el.style.top=(event.xy.y-40)+'px';var first=measureGeometry.components[measureGeometry.components.length-2];var second=measureGeometry.components[measureGeometry.components.length-1];el.innerHTML=calcDistance(first,second).toFixed(0)+' m'+'<br />'+calcCourse(first,second).toFixed(1)+"°";}}
function measureStart(){$('pointerDisplay').style.visibility='visible';map.events.register("mousemove",Controls.measure,displayMove);}
function measureStop(){$('pointerDisplay').style.visibility='hidden';map.events.unregister("mousemove",Controls.measure,displayMove);}
function calcDistance(first,second){var p1=OpenLayers.Layer.SphericalMercator.inverseMercator(first.x,first.y);var p2=OpenLayers.Layer.SphericalMercator.inverseMercator(second.x,second.y);return OpenLayers.Util.distVincenty(p1,p2).toFixed(3)*1000;}
function calcCourse(first,second){var y=second.y-first.y;var x=second.x-first.x;if(x!=0||y!=0){var v180=(y<0)?180:(x<0)?360:0;return Math.atan(x/y)*180/Math.PI+v180;}else{return 0;}}
function calcPosPopup(geometry){var lonLat;var lonLatIM;var t=0;for(var i=1;i<geometry.components.length;i++){var points=new Array();points[0]=geometry.components[i-1];points[1]=geometry.components[i];var lineElement=new OpenLayers.Geometry.LineString(points);lonLat=new OpenLayers.LonLat(points[0].x,points[0].y);lonLatIM=OpenLayers.Layer.SphericalMercator.inverseMercator(lonLat.lon,lonLat.lat)
popupAdded(lonLat,niceDegrees(lonLatIM.lat)+'<br />'+niceDegrees(lonLatIM.lon),i+'p');popupAdded(lineElement.getBounds().getCenterLonLat(),geometry.descriptions[i],i);t=i;}
var points=geometry.components[t];lonLat=new OpenLayers.LonLat(points.x,points.y);lonLatIM=OpenLayers.Layer.SphericalMercator.inverseMercator(lonLat.lon,lonLat.lat)
popupAdded(lonLat,niceDegrees(lonLatIM.lat)+'<br />'+niceDegrees(lonLatIM.lon),i+'p');}
function popupAdded(position,description,nr){popup=new OpenLayers.Popup("PopupPositie_"+nr,position,new OpenLayers.Size(4,4),'<span>'+description+'</span>',false);popup.contentDiv.className='c_PopupDistance';popup['popupSmall']=true;popup.events.register('click',popup.contentDiv,popupToggle);map.addPopup(popup);}
function popupToggle(event){var popup=event.object;if(!popup.popupSmall){var size=new OpenLayers.Size(4,4);var color='red';popup.popupSmall=true;}else{var size=new OpenLayers.Size(75,25);var color='';popup.popupSmall=false;}
event.object.setBackgroundColor(color);event.object.setSize(size);}
function dragNu(event){alert('Nu');}
var minusHeight=0;if(screen.availHeight<801){minusHeight=80;}
var slider=function(){var array=[];var speed=2;var timer=2;return{init:function(t,c){var s,ds,l,i,y;s=document.getElementById(t);ds=s.getElementsByTagName('div');l=ds.length;i=y=0;for(i=0;i<l;i++){var d,did;d=ds[i];did=d.id;if(did.indexOf("header")!=-1){y++;d.onclick=new Function("slider.process(this)");}else if(did.indexOf("content")!=-1){array.push(did.replace('-content',''));d.maxh=d.offsetHeight-minusHeight;if(c!=y){d.style.height='0px';d.style.display='none'}
else{d.style.display='block'}}}},process:function(d){var cl,i;cl=array.length;i=0;for(i;i<cl;i++){var s,h,c,cd;s=array[i];h=document.getElementById(s+'-header');c=s+'-content';cd=document.getElementById(c);clearInterval(cd.timer);if(h==d&&cd.style.display=='none'){cd.style.display='block';this.islide(c,1);}else if(cd.style.display=='block'){this.islide(c,-1)}}},islide:function(i,d){var c,m;c=document.getElementById(i);m=c.maxh;c.direction=d;c.timer=setInterval("slider.slide('"+i+"')",timer)},slide:function(i){var c,m,h,dist;c=document.getElementById(i);m=c.maxh;h=c.offsetHeight;dist=(c.direction==1)?Math.round((m-h)/speed):Math.round(h/speed);if(dist<=1){dist=1}
c.style.height=h+(dist*c.direction)+'px';c.style.opacity=h/c.maxh;c.style.filter='alpha(opacity='+(h*100/c.maxh)+')';if(h<2&&c.direction!=1){c.style.display='none';clearInterval(c.timer);}else if(h>(m-2)&&c.direction==1){clearInterval(c.timer)}}};}();function Browser(){var ua,s,i;this.isIE=false;this.isNS=false;this.version=null;ua=navigator.userAgent;s="MSIE";if((i=ua.indexOf(s))>=0){this.isIE=true;this.version=parseFloat(ua.substr(i+s.length));return;}
s="Netscape6/";if((i=ua.indexOf(s))>=0){this.isNS=true;this.version=parseFloat(ua.substr(i+s.length));return;}
s="Gecko";if((i=ua.indexOf(s))>=0){this.isNS=true;this.version=6.1;return;}}
var browser=new Browser();var dragObj=new Object();dragObj.zIndex=0;function dragStart(event,id){var thisId=$(id);if(id){dragObj.zIndex=thisId.style.zIndex;}
var el;var x,y;if(id)
dragObj.elNode=document.getElementById(id);else{if(browser.isIE)
dragObj.elNode=window.event.srcElement;if(browser.isNS)
dragObj.elNode=event.target;if(dragObj.elNode.nodeType==3)
dragObj.elNode=dragObj.elNode.parentNode;}
if(browser.isIE){x=window.event.clientX+document.documentElement.scrollLeft
+document.body.scrollLeft;y=window.event.clientY+document.documentElement.scrollTop
+document.body.scrollTop;}
if(browser.isNS){x=event.clientX+window.scrollX;y=event.clientY+window.scrollY;}
dragObj.cursorStartX=x;dragObj.cursorStartY=y;dragObj.elStartLeft=parseInt(dragObj.elNode.style.left,10);dragObj.elStartTop=parseInt(dragObj.elNode.style.top,10);if(isNaN(dragObj.elStartLeft)){if(browser.isIE){dragObj.elStartLeft=Number(thisId.currentStyle['left'].substr(0,thisId.currentStyle['left'].search("[e%p]")));}
else if(browser.isNS){dragObj.elStartLeft=thisId['offsetLeft'];}
else{dragObj.elStartLeft=0;};}
if(isNaN(dragObj.elStartTop)){if(browser.isIE){dragObj.elStartTop=Number(thisId.currentStyle['top'].substr(0,thisId.currentStyle['top'].search("[e%p]")));}
else if(browser.isNS){dragObj.elStartTop=thisId['offsetTop'];}
else{dragObj.elStartTop=0;};}
dragObj.elNode.style.zIndex=++dragObj.zIndex;if(browser.isIE){document.attachEvent("onmousemove",dragGo);document.attachEvent("onmouseup",dragStop);window.event.cancelBubble=true;window.event.returnValue=false;}
if(browser.isNS){document.addEventListener("mousemove",dragGo,true);document.addEventListener("mouseup",dragStop,true);event.preventDefault();}}
function dragGo(event){var x,y;if(browser.isIE){x=window.event.clientX+document.documentElement.scrollLeft
+document.body.scrollLeft;y=window.event.clientY+document.documentElement.scrollTop
+document.body.scrollTop;}
if(browser.isNS){x=event.clientX+window.scrollX;y=event.clientY+window.scrollY;}
dragObj.elNode.style.left=(dragObj.elStartLeft+x-dragObj.cursorStartX)+"px";dragObj.elNode.style.top=(dragObj.elStartTop+y-dragObj.cursorStartY)+"px";if(browser.isIE){window.event.cancelBubble=true;window.event.returnValue=false;}
if(browser.isNS)
event.preventDefault();}
function dragStop(event){var x,y;if(browser.isIE){document.detachEvent("onmousemove",dragGo);document.detachEvent("onmouseup",dragStop);}
if(browser.isNS){document.removeEventListener("mousemove",dragGo,true);document.removeEventListener("mouseup",dragStop,true);}}