(function(){var a={wktFormat:new OpenLayers.Format.WKT(),featureToEWKT:function(c,d){var b="SRID="+d.projCode.substring(5)+";";return b+this.wktFormat.write(c);},stripSRIDre:new RegExp("^SRID=\\d+;(.+)","i"),ewktToFeature:function(c){var b=this.stripSRIDre.exec(c);if(b){c=b[1];}return this.wktFormat.read(c);},multiGeometryClasses:{"linestring":OpenLayers.Geometry.MultiLineString,"point":OpenLayers.Geometry.MultiPoint,"polygon":OpenLayers.Geometry.MultiPolygon,"collection":OpenLayers.Geometry.Collection},transformVector:function(c,g,f){if(g.projCode==f.projCode){return c;}var d;if(c.constructor==Array){d=[];for(var e=0;e<c.length;e++){d.push(this.transformVector(c[e],g,f));}}else{var b=c.geometry.clone();d=new OpenLayers.Feature.Vector(b.transform(g,f));}return d;},wms:{map:function(b){if(b==="map"){return new OpenLayers.Layer.WMS("OpenLayers WMS","http://labs.metacarta.com/wms/vmap0",{layers:"basic"});}else{if(b==="nasa"){return new OpenLayers.Layer.WMS("NASA Global Mosaic","http://t1.hypercube.telascience.org/cgi-bin/landsat7",{layers:"landsat7"});}else{if(b==="blank"){return new OpenLayers.Layer("",{isBaseLayer:true});}}}return false;}},osm:{map:function(b){return this[b]();},mapnik:function(){return new OpenLayers.Layer.OSM("OpenStreetMap (Mapnik)",["http://a.tile.openstreetmap.org/${z}/${x}/${y}.png","http://b.tile.openstreetmap.org/${z}/${x}/${y}.png","http://c.tile.openstreetmap.org/${z}/${x}/${y}.png"],{numZoomLevels:19});},osmarender:function(){return new OpenLayers.Layer.OSM.Osmarender("OpenStreetMap (Osmarender)");}},google:{map:function(b){return this[b]();},streets:function(){return new OpenLayers.Layer.Google("Google Streets",{sphericalMercator:true,numZoomLevels:20});},physical:function(){return new OpenLayers.Layer.Google("Google Physical",{sphericalMercator:true,type:G_PHYSICAL_MAP});},satellite:function(){return new OpenLayers.Layer.Google("Google Satellite",{sphericalMercator:true,type:G_SATELLITE_MAP,numZoomLevels:22});},hybrid:function(){return new OpenLayers.Layer.Google("Google Hybrid",{sphericalMercator:true,type:G_HYBRID_MAP,numZoomLevels:20});}},yahoo:{map:function(b){return new OpenLayers.Layer.Yahoo("Yahoo",{sphericalMercator:true,numZoomLevels:20});}},ve:{map:function(c){var b=this.types[c]();return new OpenLayers.Layer.VirtualEarth("Microsoft VE ("+c+")",{sphericalMercator:true,minZoomLevel:2,type:b});},types:{road:function(){return VEMapStyle.Road;},shaded:function(){return VEMapStyle.Shaded;},aerial:function(){return VEMapStyle.Aerial;},hybrid:function(){return VEMapStyle.Hybrid;}}},cloudmade:{map:function(b){return new OpenLayers.Layer.CloudMade("CloudMade "+b,{styleId:b});}},deepJoinOptions:function(){var b=arguments[0];if(b===undefined){b={};}for(var d=1;d<arguments.length;d++){var e=arguments[d];if(e){for(var c in e){if(e[c]!==undefined&&e[c]!==null){if(typeof e[c]==="object"&&e[c].constructor!=Array){b[c]=this.deepJoinOptions(b[c],e[c]);}else{b[c]=e[c];}}}}}return b;}};a.Map=OpenLayers.Class(OpenLayers.Map,{initialize:function(d,b,c){this.vectorLayers=b;this.opts=this.initOptions(c);this.initMap(d,this.opts);},initOptions:function(b){var f={mapOptions:{units:"m",projection:"EPSG:900913",displayProjection:"EPSG:4326",maxExtent:[-20037508.34,-20037508.34,20037508.34,20037508.34],controls:["LayerSwitcher","Navigation","PanZoom","Attribution"]},mapDivClass:"",mapDivStyle:{width:"600px",height:"400px"},layers:["osm.mapnik"],defaultLon:0,defaultLat:0,defaultZoom:4,zoomToDataExtent:true};var e=a.deepJoinOptions(f,b);var d=e.mapOptions.maxExtent;e.mapOptions.maxExtent=new OpenLayers.Bounds(d[0],d[1],d[2],d[3]);e.mapOptions.projection=new OpenLayers.Projection(e.mapOptions.projection);e.mapOptions.displayProjection=new OpenLayers.Projection(e.mapOptions.displayProjection);e.defaultCenter=new OpenLayers.LonLat(e.defaultLon,e.defaultLat);e.defaultCenter.transform(e.mapOptions.displayProjection,e.mapOptions.projection);for(var c=0;c<e.mapOptions.controls.length;c++){e.mapOptions.controls[c]=new OpenLayers.Control[e.mapOptions.controls[c]]();}return e;},initMap:function(g,d){var b=document.getElementById(g);OpenLayers.Util.extend(b.style,d.mapDivStyle);if(d.mapDivClass){b.className=d.mapDivClass;}if(!b.style.position){b.style.position="relative";}var f=[];for(var c=0;c<d.layers.length;c++){var e=d.layers[c].split(".");f.push(a[e[0]].map(e[1]));if(e[0]=="ve"){if(d.mapOptions.panMethod===undefined){d.mapOptions.panMethod=OpenLayers.Easing.Linear.easeOut;}}}OpenLayers.Map.prototype.initialize.apply(this,[b.id,d.mapOptions]);if(this.vectorLayers){for(var c=0;c<this.vectorLayers.length;c++){f.push(this.vectorLayers[c]);}}else{this.vectorLayers=[];}if(f.length>0){this.addLayers(f);this.initCenter();}this.selectControl=new OpenLayers.Control.SelectFeature(this.vectorLayers);this.selectControl.events.on({featurehighlighted:this.featureHighlighted,featureunhighlighted:this.featureUnhighlighted,scope:this});this.events.on({zoomend:this.zoomEnd,scope:this});this.addControl(this.selectControl);this.selectControl.activate();this.addControl(new a.EditableLayerSwitcher());},initCenter:function(){if(this.opts.zoomToDataExtent){var f=new OpenLayers.Bounds();for(var e=0;e<this.vectorLayers.length;e++){var g=this.vectorLayers[e];if(g.opts.cluster){for(var d=0;d<g.features.length;d++){for(var c=0;c<g.features[d].cluster.length;c++){f.extend(g.features[d].cluster[c].geometry.getBounds());}}}else{f.extend(g.getDataExtent());}}if(!f.equals(new OpenLayers.Bounds())){this.zoomToExtent(f);return;}}var b=new OpenLayers.LonLat(this.opts.defaultLon,this.opts.defaultLat);b=b.transform(this.displayProjection,this.projection);this.setCenter(b,this.opts.defaultZoom);},featureHighlighted:function(b){this.createPopup(b);},featureUnhighlighted:function(b){this.deleteAllPopups();},zoomEnd:function(b){this.deleteAllPopups();},addPopup:function(b,e){if(e){for(var c=this.popups.length-1;c>=0;--c){this.removePopup(this.popups[c]);}}b.map=this;this.popups.push(b);var d=b.draw();if(d){d.style.zIndex=this.Z_INDEX_BASE.Popup+this.popups.length;this.div.appendChild(d);this.popupMoveFunc=function(g){var f=this.getPixelFromLonLat(b.lonlat);b.moveTo(f);};this.events.register("move",this,this.popupMoveFunc);this.popupMoveFunc();}},removePopup:function(b){OpenLayers.Util.removeItem(this.popups,b);if(b.div){try{this.div.removeChild(b.div);this.events.unregister("move",this,this.popupMoveFunc);}catch(c){}}b.map=null;},createPopup:function(c){var g=c.feature;var j;if(g.geometry.CLASS_NAME=="OpenLayers.Geometry.Point"){j=g.geometry.getBounds().getCenterLonLat();}else{j=this.getLonLatFromViewPortPx(c.object.handlers.feature.evt.xy);}var h=[];if(g.cluster){if(g.layer&&g.layer.opts&&g.layer.opts.clusterDisplay=="list"){if(g.cluster.length>1){var f="<ul class='olwidgetClusterList'>";for(var e=0;e<g.cluster.length;e++){f+="<li>"+g.cluster[e].attributes.html+"</li>";}f+="</ul>";h.push(f);}else{h.push(g.cluster[0].attributes.html);}}else{for(var e=0;e<g.cluster.length;e++){h.push(g.cluster[e].attributes.html);}}}else{if(g.attributes.html){h.push(g.attributes.html);}}if(h.length>0){var d=this;var b=new a.Popup(null,j,null,h,null,true,function(){d.selectControl.unselect(g);},this.opts.popupDirection,this.opts.popupPaginationSeparator);if(this.opts.popupsOutside){b.panMapIfOutOfView=false;}this.addPopup(b);}},deleteAllPopups:function(){var b=[];for(var c=0;c<this.popups.length;c++){b.push(this.popups[c]);}for(var c=0;c<b.length;c++){this.removePopup(b[c]);}this.popups=[];},CLASS_NAME:"olwidget.Map"});a.BaseVectorLayer=OpenLayers.Class(OpenLayers.Layer.Vector,{initialize:function(b){if(!b){b={};}this.opts=b;this.defaultOpts={};OpenLayers.Layer.Vector.prototype.initialize.apply(this);},setMap:function(c){OpenLayers.Layer.Vector.prototype.setMap.apply(this,[c]);if(c.CLASS_NAME=="olwidget.Map"){this.opts=a.deepJoinOptions({name:"data",overlayStyle:{fillColor:"#ff00ff",strokeColor:"#ff00ff",pointRadius:6,fillOpacity:0.5,strokeWidth:2},selectOverlayStyle:{fillColor:"#9999ff",strokeColor:"#9999ff",pointRadius:6,fillOpacity:0.5,strokeWidth:2}},this.defaultOpts,c.opts,this.opts);this.name=this.opts.name;this.styleMap=new OpenLayers.StyleMap({"default":new OpenLayers.Style(this.opts.overlayStyle,{context:this.opts.overlayStyleContext}),"select":new OpenLayers.Style(this.opts.selectOverlayStyle,{context:this.opts.overlayStyleContext})});}if(this.opts.paging===true){if(this.strategies===null){this.strategies=[];}var b=new OpenLayers.Strategy.Paging();b.setLayer(this);this.strategies.push(b);b.activate();}},CLASS_NAME:"olwidget.BaseVectorLayer"});a.InfoLayer=OpenLayers.Class(a.BaseVectorLayer,{initialize:function(c,b){a.BaseVectorLayer.prototype.initialize.apply(this,[b]);this.info=c;},setMap:function(d){if(this.opts.cluster||d.opts.cluster){var c={pointRadius:"${radius}",strokeWidth:"${width}",label:"${label}",labelSelect:true,fontSize:"11px",fontFamily:"Helvetica, sans-serif",fontColor:"#ffffff"};this.defaultOpts.overlayStyle=a.deepJoinOptions({},c);this.defaultOpts.selectOverlayStyle=a.deepJoinOptions({},c);this.defaultOpts.overlayStyleContext={width:function(e){return(e.cluster)?2:1;},radius:function(f){var g=f.attributes.count;var e;if(g==1){e=6;}else{if(g<=5){e=8;}else{if(g<=25){e=10;}else{if(g<=50){e=12;}else{e=14;}}}}return e;},label:function(e){if(e.cluster&&e.cluster.length>1){return e.cluster.length;}return"";}};}a.BaseVectorLayer.prototype.setMap.apply(this,arguments);if(this.opts.cluster===true){if(!this.strategies){this.strategies=[];}var b=new OpenLayers.Strategy.Cluster();b.setLayer(this);this.strategies.push(b);b.activate();}},afterAdd:function(){a.BaseVectorLayer.prototype.afterAdd.apply(this);var e=[];for(var d=0;d<this.info.length;d++){var c=a.ewktToFeature(this.info[d][0]);c=a.transformVector(c,this.map.displayProjection,this.map.projection);if(c.constructor!=Array){c=[c];}var f=this.info[d][1];for(var b=0;b<c.length;b++){if(typeof f==="object"){c[b].attributes=f;if(typeof f.style!=="undefined"){c[b].style=OpenLayers.Util.applyDefaults(f.style,this.opts.overlayStyle);}}else{c[b].attributes={html:f};}e.push(c[b]);}}this.addFeatures(e);},CLASS_NAME:"olwidget.InfoLayer"});a.EditableLayer=OpenLayers.Class(a.BaseVectorLayer,{undoStack:null,undoStackPos:null,undoStackLength:1000,initialize:function(c,b){a.BaseVectorLayer.prototype.initialize.apply(this,[b]);this.undoStack=[];this.textarea=document.getElementById(c);},setMap:function(b){this.defaultOpts={editable:true,geometry:"point",hideTextarea:true,isCollection:false};a.BaseVectorLayer.prototype.setMap.apply(this,arguments);this.opts.cluster=false;if(this.opts.hideTextarea){this.textarea.style.display="none";}this.buildControls();this.readWKT();this.addUndoState();},buildControls:function(){var c=[];var j=new OpenLayers.Control.Navigation({"title":"Move the map"});c.push(j);var g;if(this.opts.geometry.constructor==Array){g=this.opts.geometry;}else{g=[this.opts.geometry];}this.defaultControl=null;for(var f=0;f<g.length;f++){var b;if(g[f]=="linestring"){b=new OpenLayers.Control.DrawFeature(this,OpenLayers.Handler.Path,{"displayClass":"olControlDrawFeaturePath","title":"Draw lines"});}else{if(g[f]=="polygon"){b=new OpenLayers.Control.DrawFeature(this,OpenLayers.Handler.Polygon,{"displayClass":"olControlDrawFeaturePolygon","title":"Draw polygons"});}else{if(g[f]=="point"){b=new OpenLayers.Control.DrawFeature(this,OpenLayers.Handler.Point,{"displayClass":"olControlDrawFeaturePoint","title":"Draw points"});}}}b.activate=function(){OpenLayers.Control.prototype.activate.apply(this,[]);this.map.div.style.cursor="crosshair";};var h=b.deactivate;b.deactivate=function(){OpenLayers.Control.prototype.deactivate.apply(this,[]);this.map.div.style.cursor="auto";};c.push(b);if(!this.defaultControl){this.defaultControl=b;}}if(this.opts.geometry!="point"||this.opts.isCollection){var e=new OpenLayers.Control.ModifyFeature(this,{clickout:true,title:"Modify features"});c.push(e);c.push(new a.DeleteVertex(this,{title:"Delete vertices"}));}var d=this;c.push(new OpenLayers.Control.Button({displayClass:"olControlClearFeatures",trigger:function(){d.clearFeatures();},title:"Clear all"}));this.redoButton=new OpenLayers.Control.Button({displayClass:"olControlRedo",trigger:function(){d.redo();},title:"Redo"});c.push(this.redoButton);this.undoButton=new OpenLayers.Control.Button({displayClass:"olControlUndo",trigger:function(){d.undo();},title:"Undo"});c.push(this.undoButton);this.controls=c;},clearFeatures:function(){this.removeFeatures(this.features);this.destroyFeatures();if(this.textarea.value!==""){this.textarea.value="";this.addUndoState();}},addUndoState:function(){var b=this.textarea.value;if(this.undoStack.length>this.undoStackPos){this.undoStack=this.undoStack.slice(0,this.undoStackPos+1);}this.undoStack.push(b);if(this.undoStack.length>this.undoStackLength){this.undoStack.shift();}this.undoStackPos=this.undoStack.length-1;this.setUndoButtonStates();},undo:function(){if(this.undoStackPos>0){this.undoStackPos--;if(this.undoStackPos<this.undoStack.length){this.textarea.value=this.undoStack[this.undoStackPos];this.readWKT();}}this.setUndoButtonStates();},redo:function(){if(this.undoStackPos<this.undoStack.length-1){this.undoStackPos++;this.textarea.value=this.undoStack[this.undoStackPos];this.readWKT();}this.setUndoButtonStates();},setUndoButtonStates:function(){if(this.undoButton.map){if(this.undoStackPos>0){this.undoButton.activate();}else{this.undoButton.deactivate();}if(this.undoStackPos<this.undoStack.length-1){this.redoButton.activate();}else{this.redoButton.deactivate();}}},readWKT:function(){var e=this.textarea.value;if(this.features){this.removeFeatures(this.features);}if(e){var c=a.ewktToFeature(e);if(c&&(c.constructor!=Array||c[0]!=undefined)){c=a.transformVector(c,this.map.displayProjection,this.map.projection);if(c.constructor==Array||c.geometry.CLASS_NAME==="OpenLayers.Geometry.MultiLineString"||c.geometry.CLASS_NAME==="OpenLayers.Geometry.MultiPoint"||c.geometry.CLASS_NAME==="OpenLayers.Geometry.MultiPolygon"){if(c.geometry!=undefined){var d=[];var f=c.geometry.components.length;for(var b=0;b<f;b++){d.push(new OpenLayers.Feature.Vector(c.geometry.components[b]));}this.addFeatures(d,{silent:true});}else{this.addFeatures(c,{silent:true});}}else{this.addFeatures([c],{silent:true});}this.numGeom=this.features.length;}else{this.numGeom=0;}}},addWKT:function(b){if(this.opts.isCollection){this.featureToTextarea(this.features);}else{if(this.features.length>1){var c=[this.features[0]];this.removeFeatures(c);this.destroyFeatures(c);}this.featureToTextarea(b.feature);}this.addUndoState();},modifyWKT:function(d){if(this.opts.isCollection){var c=[];for(var b=0;b<Math.min(this.numGeom,this.features.length);b++){c.push(this.features[b].clone());}this.featureToTextarea(c);}else{if(d.feature){this.featureToTextarea(d.feature);}else{this.textarea.value="";}}this.addUndoState();},featureToTextarea:function(c){if(this.opts.isCollection){this.numGeom=c.length;}else{this.numGeom=1;}c=a.transformVector(c,this.map.projection,this.map.displayProjection);if(this.opts.isCollection){if(this.opts.geometry.constructor!=Array){var d=[];for(var b=0;b<c.length;b++){d.push(c[b].geometry);}var e=a.multiGeometryClasses[this.opts.geometry];c=new OpenLayers.Feature.Vector(new e(d));}}this.textarea.value=a.featureToEWKT(c,this.map.displayProjection);},CLASS_NAME:"olwidget.EditableLayer"});a.EditableMap=OpenLayers.Class(a.Map,{initialize:function(e,c){var b=document.getElementById(e);var d=document.createElement("div");d.setAttribute("id",e+"_map");b.parentNode.insertBefore(d,b);a.Map.prototype.initialize.apply(this,[d.id,[new a.EditableLayer(e)],c]);}});a.InfoMap=OpenLayers.Class(a.Map,{initialize:function(b,d,c){a.Map.prototype.initialize.apply(this,[b,[new a.InfoLayer(d)],c]);}});a.EditableLayerSwitcher=OpenLayers.Class(OpenLayers.Control.LayerSwitcher,{currentlyEditing:null,editableLayers:[],panel:null,initialize:function(b){OpenLayers.Control.prototype.initialize.apply(this,arguments);},setMap:function(){OpenLayers.Control.prototype.setMap.apply(this,arguments);this.map.events.on({"addlayer":this.redraw,"changelayer":this.redraw,"removelayer":this.redraw,scope:this});},onInputClick:function(b){if(!this.inputElem.disabled){if(this.layer){this.layerSwitcher.setEditing(this.layer);}else{this.layerSwitcher.stopEditing();}this.layerSwitcher.minimizeControl();}},stopEditing:function(){if(this.currentlyEditing){var b=this.currentlyEditing;b.events.un({"featuremodified":b.modifyWKT,"featureadded":b.addWKT,scope:b});}if(this.panel){this.panel.deactivate();this.panel.destroy();this.panel=null;}this.maximize.innerHTML="Edit";this.minimize.innerHTML="(-) Edit";this.currentlyEditing=null;if(this.map.selectControl){this.map.selectControl.activate();}this.map.removeControl(this.panel);this.setChecked(null);},setEditing:function(b){if(this.currentlyEditing){this.stopEditing();}this.panel=new OpenLayers.Control.Panel({defaultControl:b.defaultControl,displayClass:"olControlEditingToolbar"});this.panel.onClick=function(d,c){OpenLayers.Event.stop(c?c:window.event);this.activateControl(d);b.setUndoButtonStates();};this.panel.addControls(b.controls);this.map.addControl(this.panel);this.currentlyEditing=b;this.maximize.innerHTML='Editing "'+b.name+'"';this.minimize.innerHTML='(-) Editing "'+b.name+'"';b.events.on({"featuremodified":b.modifyWKT,"featureadded":b.addWKT,scope:b});b.setUndoButtonStates();if(this.map.selectControl){this.map.selectControl.deactivate();}},setChecked:function(c){for(var b=0;b<this.editableLayers.length;b++){if(c==this.editableLayers[b].layer){this.editableLayers[b].inputElem.checked=true;break;}}},destroy:function(){OpenLayers.Event.stopObservingElement(this.div);this.map.events.un({"addlayer":this.redraw,"changelayer":this.redraw,"removelayer":this.redraw,"changebaselayer":this.redraw,scope:this});clearLayersArray();OpenLayers.Control.prototype.destroy.apply(this,arguments);},clearLayersArray:function(){for(var c=0;c<this.editableLayers.length;c++){var b=this.editableLayers[c];OpenLayers.Event.stopObservingElement(b.inputElem);OpenLayers.Event.stopObservingElement(b.labelSpan);}this.editableLayers=[];},draw:function(){OpenLayers.Control.prototype.draw.apply(this);this.loadContents();this.redraw();this.stopEditing();return this.div;},buildInput:function(c,g,e){var b=document.createElement("input");b.id=this.id+"_edit_switcher_"+this.editableLayers.length;b.name=this.id+"_edit";b.type="radio";b.value=c;b.checked=g;var f=document.createElement("span");OpenLayers.Element.addClass(f,"label");f.innerHTML=c;if(e&&(!e.inRange||!e.visibility)){b.disabled=true;OpenLayers.Element.addClass(f,"disabled");}var d={"inputElem":b,"layer":e,"layerSwitcher":this};OpenLayers.Event.observe(b,"mouseup",OpenLayers.Function.bindAsEventListener(this.onInputClick,d));OpenLayers.Event.observe(f,"mouseup",OpenLayers.Function.bindAsEventListener(this.onInputClick,d));this.layersDiv.appendChild(b);this.layersDiv.appendChild(f);this.layersDiv.appendChild(document.createElement("br"));this.editableLayers.push({"layer":e,"inputElem":b,"labelSpan":f});},redraw:function(){this.clearLayersArray();this.layersDiv.innerHTML="";this.editingControls.innerHTML="";if(this.panel&&this.panel.div){this.editingControls.appendChild(this.panel.div);var b=document.createElement("div");b.style.clear="both";this.editingControls.appendChild(b);}this.buildInput("none",!this.currentlyEditing,null);for(var d=0;d<this.map.layers.length;d++){var c=this.map.layers[d];if(c.opts&&c.opts.editable){this.buildInput(c.name,this.currentlyEditing&&this.currentlyEditing.name==c.name,c);}}if(this.editableLayers.length==1){this.div.style.display="none";}else{this.div.style.display="";}},loadContents:function(){OpenLayers.Event.observe(this.div,"mouseup",OpenLayers.Function.bindAsEventListener(this.mouseUp,this));OpenLayers.Event.observe(this.div,"click",this.ignoreEvent);OpenLayers.Event.observe(this.div,"mousedown",OpenLayers.Function.bindAsEventListener(this.mouseDown,this));OpenLayers.Event.observe(this.div,"dblclick",this.ignoreEvent);this.container=document.createElement("div");OpenLayers.Element.addClass(this.container,"container");this.div.appendChild(this.container);OpenLayers.Rico.Corner.round(this.div,{corners:"bl br",bgColor:"transparent",color:this.roundedCornerColor,blend:false});OpenLayers.Rico.Corner.changeOpacity(this.container,0.75);this.layersDiv=document.createElement("div");this.layersDiv.id=this.id+"_layersDiv";this.layersDiv.style.display="none";OpenLayers.Element.addClass(this.layersDiv,"layersDiv");this.editingControls=document.createElement("div");this.editingControls.id=this.id+"_editingControls";OpenLayers.Element.addClass(this.editingControls,"editingControls");this.maximize=document.createElement("div");OpenLayers.Element.addClass(this.maximize,"maxmin max");this.minimize=document.createElement("div");OpenLayers.Element.addClass(this.minimize,"maxmin min");this.minimize.style.display="none";OpenLayers.Event.observe(this.maximize,"click",OpenLayers.Function.bindAsEventListener(this.maximizeControl,this));OpenLayers.Event.observe(this.minimize,"click",OpenLayers.Function.bindAsEventListener(this.minimizeControl,this));this.container.appendChild(this.maximize);this.container.appendChild(this.minimize);this.container.appendChild(this.editingControls);var b=document.createElement("div");b.style.clear="both";this.container.appendChild(b);this.container.appendChild(this.layersDiv);},maximizeControl:function(b){if(this.editableLayers.length==2&&this.editableLayers[1].layer.visibility){if(this.currentlyEditing){this.stopEditing();}else{this.setEditing(this.editableLayers[1].layer);}}else{this.showControls(false);}if(b!=null){OpenLayers.Event.stop(b);}},minimizeControl:function(b){this.showControls(true);if(b!=null){OpenLayers.Event.stop(b);}},showControls:function(b){this.maximize.style.display=b?"":"none";this.minimize.style.display=b?"none":"";this.layersDiv.style.display=b?"none":"";},CLASS_NAME:"olwidget.EditableLayerSwitcher"});a.Popup=OpenLayers.Class(OpenLayers.Popup.Framed,{autoSize:true,panMapIfOutOfView:true,fixedRelativePosition:false,positionBlocks:{"tl":{"offset":new OpenLayers.Pixel(44,-6),"padding":new OpenLayers.Bounds(5,14,5,5),"blocks":[{className:"olwidgetPopupStemTL",size:new OpenLayers.Size(24,14),anchor:new OpenLayers.Bounds(null,0,32,null),position:new OpenLayers.Pixel(0,-28)}]},"tr":{"offset":new OpenLayers.Pixel(-44,-6),"padding":new OpenLayers.Bounds(5,14,5,5),"blocks":[{className:"olwidgetPopupStemTR",size:new OpenLayers.Size(24,14),anchor:new OpenLayers.Bounds(32,0,null,null),position:new OpenLayers.Pixel(0,-28)}]},"bl":{"offset":new OpenLayers.Pixel(44,6),"padding":new OpenLayers.Bounds(5,5,5,14),"blocks":[{className:"olwidgetPopupStemBL",size:new OpenLayers.Size(24,14),anchor:new OpenLayers.Bounds(null,null,32,0),position:new OpenLayers.Pixel(0,0)}]},"br":{"offset":new OpenLayers.Pixel(-44,6),"padding":new OpenLayers.Bounds(5,5,5,14),"blocks":[{className:"olwidgetPopupStemBR",size:new OpenLayers.Size(24,14),anchor:new OpenLayers.Bounds(32,null,null,0),position:new OpenLayers.Pixel(0,0)}]}},initialize:function(c,i,d,f,g,b,j,e,h){if(e&&e!="auto"){this.fixedRelativePosition=true;this.relativePosition=e;}if(h===undefined){this.separator=" of ";}else{this.separator=h;}this.olwidgetCloseBox=b;this.olwidgetCloseBoxCallback=j;this.page=0;OpenLayers.Popup.Framed.prototype.initialize.apply(this,[c,i,d,f,g,false,null]);},setContentHTML:function(c){if(c!==null&&c!==undefined){this.contentHTML=c;}var j;var m;if(this.contentHTML.constructor!=Array){j=this.contentHTML;m=false;}else{j=this.contentHTML[this.page];m=this.contentHTML.length>1;}if((this.contentDiv!==null)&&(j!==null)){var b=this;this.contentDiv.innerHTML="";var i=document.createElement("div");i.className="olwidgetPopupContent";this.contentDiv.appendChild(i);if(this.olwidgetCloseBox){var h=document.createElement("div");h.className="olwidgetPopupCloseBox";h.innerHTML="close";h.onclick=function(n){b.olwidgetCloseBoxCallback.apply(b,arguments);};i.appendChild(h);}var e=document.createElement("div");e.innerHTML=j;e.className="olwidgetPopupPage";i.appendChild(e);if(m){var k=document.createElement("div");k.className="olwidgetPopupPagination";var d=document.createElement("div");d.className="olwidgetPaginationPrevious";d.innerHTML="prev";d.onclick=function(n){b.page=(b.page-1+b.contentHTML.length)%b.contentHTML.length;b.setContentHTML();b.map.events.triggerEvent("move");};var g=document.createElement("div");g.className="olwidgetPaginationCount";g.innerHTML=(this.page+1)+this.separator+this.contentHTML.length;var f=document.createElement("div");f.className="olwidgetPaginationNext";f.innerHTML="next";f.onclick=function(n){b.page=(b.page+1)%b.contentHTML.length;b.setContentHTML();b.map.events.triggerEvent("move");};k.appendChild(d);k.appendChild(g);k.appendChild(f);i.appendChild(k);}var l=document.createElement("div");l.style.clear="both";i.appendChild(l);if(this.autoSize){this.registerImageListeners();this.updateSize();}}},createBlocks:function(){this.blocks=[];var f=null;for(var e in this.positionBlocks){f=e;break;}var b=this.positionBlocks[f];for(var d=0;d<b.blocks.length;d++){var g={};this.blocks.push(g);var c=this.id+"_FrameDecorationDiv_"+d;g.div=OpenLayers.Util.createDiv(c,null,null,null,"absolute",null,"hidden",null);this.groupDiv.appendChild(g.div);}},updateBlocks:function(){if(!this.blocks){this.createBlocks();}if(this.size&&this.relativePosition){var k=this.positionBlocks[this.relativePosition];for(var g=0;g<k.blocks.length;g++){var d=k.blocks[g];var f=this.blocks[g];var e=d.anchor.left;var m=d.anchor.bottom;var c=d.anchor.right;var o=d.anchor.top;var n=(isNaN(d.size.w))?this.size.w-(c+e):d.size.w;var j=(isNaN(d.size.h))?this.size.h-(m+o):d.size.h;f.div.style.width=(n<0?0:n)+"px";f.div.style.height=(j<0?0:j)+"px";f.div.style.left=(e!==null)?e+"px":"";f.div.style.bottom=(m!==null)?m+"px":"";f.div.style.right=(c!==null)?c+"px":"";f.div.style.top=(o!==null)?o+"px":"";f.div.className=d.className;}this.contentDiv.style.left=this.padding.left+"px";this.contentDiv.style.top=this.padding.top+"px";}},updateSize:function(){if(this.map.opts.popupsOutside===true){var c="<div class='"+this.contentDisplayClass+"'>"+this.contentDiv.innerHTML+"</div>";var d=document.body;var b=OpenLayers.Util.getRenderedDimensions(c,null,{displayClass:this.displayClass,containerElement:d});return this.setSize(b);}else{return OpenLayers.Popup.prototype.updateSize.apply(this,arguments);}},CLASS_NAME:"olwidget.Popup"});a.DeleteVertex=OpenLayers.Class(OpenLayers.Control.ModifyFeature,{initialize:function(c,b){b["toggle"]=false;OpenLayers.Control.ModifyFeature.prototype.initialize.apply(this,[c,b]);this.selectControl.onUnselect=this.unselectFeature;var d=this;this.selectControl.callbacks.clickout=function(e){d.layer.removeFeatures(d.vertices,{silent:true});d.editingFeature=null;if(!this.hover&&this.clickout){this.unselectAll();}};this.editingFeature=null;var d=this;this.handlers.feature=new OpenLayers.Handler.Feature(this,this.layer,{over:this.overVertex,out:this.outVertex});},overVertex:function(b){if(b.geometry.CLASS_NAME==="OpenLayers.Geometry.Point"){OpenLayers.Element.addClass(this.map.viewPortDiv,this.displayClass+"Over");}},outVertex:function(b){OpenLayers.Element.removeClass(this.map.viewPortDiv,this.displayClass+"Over");},activate:function(){this.handlers.feature.map=this.map;this.handlers.feature.activate();return OpenLayers.Control.ModifyFeature.prototype.activate.apply(this,arguments);},deactivate:function(){return OpenLayers.Control.ModifyFeature.prototype.deactivate.apply(this,arguments);},selectFeature:function(b){this.outVertex();if(b.geometry.CLASS_NAME==="OpenLayers.Geometry.Point"){if(this.editingFeature&&b.geometry.parent){if(b.geometry.parent){var c=b.geometry.parent.components.length;b.geometry.parent.removeComponent(b.geometry);if(b.geometry.parent.components.length==c){this.layer.removeFeatures([this.editingFeature],{silent:true});this.layer.removeFeatures(this.vertices,{silent:true});this.editingFeature=null;this.layer.events.triggerEvent("featuremodified");}else{this.layer.events.triggerEvent("featuremodified",{feature:this.editingFeature});this.selectControl.select(this.editingFeature);}}}else{this.layer.removeFeatures([b],{silent:true});this.layer.events.triggerEvent("featuremodified");}}else{this.editingFeature=b;this.feature=b;this.resetVertices();}},collectVertices:function(){this.vertices=[];this.virtualVertices=[];var b=this;function c(j){var g,h,f,d;if(j.CLASS_NAME=="OpenLayers.Geometry.Point"){h=new OpenLayers.Feature.Vector(j);h._sketch=true;b.vertices.push(h);}else{var e=j.components.length;if(j.CLASS_NAME=="OpenLayers.Geometry.LinearRing"){e-=1;}for(g=0;g<e;++g){f=j.components[g];if(f.CLASS_NAME=="OpenLayers.Geometry.Point"){h=new OpenLayers.Feature.Vector(f);h._sketch=true;b.vertices.push(h);}else{c(f);}}}}c.call(this,this.feature.geometry);this.layer.addFeatures(this.vertices,{silent:true});},beforeSelectFeature:function(){},unselectFeature:function(){},dragStart:function(){},dragVertex:function(){},dragComplete:function(){},setFeatureState:function(){},handleKeypress:function(){},collectDragHandle:function(){},collectRadiusHandle:function(){},CLASS_NAME:"olwidget.DeleteVertex"});window.olwidget=a;})();
