var map; var popup; var zoomz; var measureControls; var untiled = new Array(); var selection_layer; var pureCoverage = false; var polygonLayer; var polygonCreated = 0; var selected_zoom = 0; var childWindowPrelucreaza; var childWindowUploadeaza; // pink tile avoidance OpenLayers.IMAGE_RELOAD_ATTEMPTS = 5; // make OL compute scale according to WMS spec OpenLayers.DOTS_PER_INCH = 25.4 / 0.28; OpenLayers.Util.onImageLoadErrorColor = 'transparent'; //OpenLayers.ProxyHost = ""; var formatSLD = new OpenLayers.Format.SLD(); var sld; var highlightStyle; function init(){ // if this is just a coverage or a group of them, disable a few items, // and default to jpeg format format = 'image/png'; if(pureCoverage) { document.getElementById('filterType').disabled = true; document.getElementById('filter').disabled = true; document.getElementById('antialiasSelector').disabled = true; document.getElementById('updateFilterButton').disabled = true; document.getElementById('resetFilterButton').disabled = true; document.getElementById('jpeg').selected = true; format = "image/jpeg"; } var bounds = new OpenLayers.Bounds( 379222.919, 499826.349,394854.919, 516717.349 ); var initialZoomBounds=new OpenLayers.Bounds(388773.33,509100.25,390339.88,509869.23); highlightStyle=new OpenLayers.Style({ strokeWidth : '3', strokeColor : '#3300CC', strokeOpacity : '0.7', strokeDashstyle : 'solid', fillColor : '#3399CC', fillOpacity : '0.6', pointRadius : '6' }); var options = { controls: [], maxExtent: bounds, resolutions: [ 65.98046875, 32.990234375, 16.4951171875, 8.24755859375, 4.123779296875, 2.0618896484375, 1.03094482421875, 0.515472412109375, 0.2577362060546875, 0.12886810302734375, 0.06443405151367188, 0.03221702575683594], maxResolution: 65.98046875, projection: "EPSG:4317", units: 'm' }; map = new OpenLayers.Map('map', options); map.addControl(new OpenLayers.Control.MousePosition( {id: "ll_mouse", formatOutput: formatLonlats} )); //map.addControl(new OpenLayers.Control.OverviewMap()); var geographic = new OpenLayers.Projection("EPSG:4317"); var baseLayerOptions = { isBaseLayer: true, displayInLayerSwitcher: true }; var fake = new OpenLayers.Layer('fake', baseLayerOptions); map.addLayer(fake); // setup single tiled layer untiled[0] = new OpenLayers.Layer.Vector("Adrese", { strategies: [new OpenLayers.Strategy.BBOX()], protocol: new OpenLayers.Protocol.WFS({ version: "1.0.0", srsName: "EPSG:4317", // this is the default url: "geoserver/wfs?", featureType: "def_v_adrese", features: "wkb_geometry", featureNS: "alba.ro", featurePrefix: "alba", geometryName: "wkb_geometry"}), projection: geographic, // specified because it is different than the map options: { maxScale: 1, minScale: 2000}, legend:'/puz/mask/getinfo.php?zx_xz=2service=wms&WIDTH=150&height=20&style=def_v_adrese&request=GetLegendGraphic&layer=def_v_adrese&format=image/png&version=1.1.1&transparent=true' }); untiled[0].addOptions({legendSrc:'/puz/mask/getinfo.php?zx_xz=2service=wms&width=20&height=20&style=def_v_adrese&request=GetLegendGraphic&layer=def_v_adrese&format=image/png&version=1.1.1&transparent=true'}); map.addLayers([untiled[0]]); untiled[1] = new OpenLayers.Layer.WMS( "Ortofoto", "/puz/mask/getinfo.php?zx_xz=2", { srs: 'EPSG:4317', layers: 'alba:alba', setTileSize: function(size){return map.getSize();} , styles: '', transparent: 'true', format: format //legendSrc:'http://publicatlas.microimages.com/sample_cgi/sample.cgi?REQUEST=GetLegendGraphic&VERSION=1.1.1&FORMAT=image/png&LAYER=MII_NLVE%3A_NE_Ortho_Multi' }, {singleTile: true, ratio: 1, transitionEffect: 'resize', options: { maxScale: 1, minScale: 10000}} ); untiled[1].addOptions({legendSrc:'/puz/mask/getinfo.php?zx_xz=2service=wms&width=20&height=20&style=alba&request=GetLegendGraphic&layer=alba&format=image/png&version=1.1.1&transparent=true'}); map.addLayers([untiled[1]]); untiled[2] = new OpenLayers.Layer.WMS( "Terenuri", "/puz/mask/getinfo.php?zx_xz=2", { srs: 'EPSG:4317', layers: 'alba:def_pr_corpuri_proprietate', setTileSize: function(size){return map.getSize();} , styles: '', transparent: 'true', format: format //legendSrc:'http://publicatlas.microimages.com/sample_cgi/sample.cgi?REQUEST=GetLegendGraphic&VERSION=1.1.1&FORMAT=image/png&LAYER=MII_NLVE%3A_NE_Ortho_Multi' }, {singleTile: true, ratio: 1, transitionEffect: 'resize', options: { maxScale: 1, minScale: 5000}} ); untiled[2].addOptions({legendSrc:'/puz/mask/getinfo.php?zx_xz=2service=wms&width=20&height=20&style=def_pr_corpuri_proprietate&request=GetLegendGraphic&layer=def_pr_corpuri_proprietate&format=image/png&version=1.1.1&transparent=true'}); map.addLayers([untiled[2]]); untiled[3] = new OpenLayers.Layer.WMS( "ConstrucÅĢii", "/puz/mask/getinfo.php?zx_xz=2", { srs: 'EPSG:4317', layers: 'alba:def_co_constructii', setTileSize: function(size){return map.getSize();} , styles: '', transparent: 'true', format: format //legendSrc:'http://publicatlas.microimages.com/sample_cgi/sample.cgi?REQUEST=GetLegendGraphic&VERSION=1.1.1&FORMAT=image/png&LAYER=MII_NLVE%3A_NE_Ortho_Multi' }, {singleTile: true, ratio: 1, transitionEffect: 'resize', options: { maxScale: 1, minScale: 5000}} ); untiled[3].addOptions({legendSrc:'/puz/mask/getinfo.php?zx_xz=2service=wms&width=20&height=20&style=def_co_constructii&request=GetLegendGraphic&layer=def_co_constructii&format=image/png&version=1.1.1&transparent=true'}); map.addLayers([untiled[3]]); untiled[4] = new OpenLayers.Layer.WMS( "Artere", "/puz/mask/getinfo.php?zx_xz=2", { srs: 'EPSG:4317', layers: 'alba:def_v_artere_integrare', setTileSize: function(size){return map.getSize();} , styles: '', transparent: 'true', format: format //legendSrc:'http://publicatlas.microimages.com/sample_cgi/sample.cgi?REQUEST=GetLegendGraphic&VERSION=1.1.1&FORMAT=image/png&LAYER=MII_NLVE%3A_NE_Ortho_Multi' }, {singleTile: true, ratio: 1, transitionEffect: 'resize', options: { }} ); untiled[4].addOptions({legendSrc:'/puz/mask/getinfo.php?zx_xz=2service=wms&width=20&height=20&style=def_v_artere_integrare&request=GetLegendGraphic&layer=def_v_artere_integrare&format=image/png&version=1.1.1&transparent=true'}); map.addLayers([untiled[4]]); // setup single tiled layer untiled[5] = new OpenLayers.Layer.Vector("Obiective investitii", { strategies: [new OpenLayers.Strategy.BBOX()], protocol: new OpenLayers.Protocol.WFS({ version: "1.0.0", srsName: "EPSG:4317", // this is the default url: "geoserver/wfs?", featureType: "v_def_pr_obiectiv_invest", features: "wkb_geometry", featureNS: "alba.ro", featurePrefix: "alba", geometryName: "wkb_geometry"}), projection: geographic, // specified because it is different than the map options: { }, legend:'/puz/mask/getinfo.php?zx_xz=2service=wms&WIDTH=150&height=20&style=v_def_pr_obiectiv_invest&request=GetLegendGraphic&layer=v_def_pr_obiectiv_invest&format=image/png&version=1.1.1&transparent=true' }); untiled[5].addOptions({legendSrc:'/puz/mask/getinfo.php?zx_xz=2service=wms&width=20&height=20&style=v_def_pr_obiectiv_invest&request=GetLegendGraphic&layer=v_def_pr_obiectiv_invest&format=image/png&version=1.1.1&transparent=true'}); map.addLayers([untiled[5]]); untiled[6] = new OpenLayers.Layer.WMS( "Limita intravilan PUG", "/puz/mask/getinfo.php?zx_xz=2", { srs: 'EPSG:4317', layers: 'alba:v_def_af_limita_intravilan', setTileSize: function(size){return map.getSize();} , styles: '', transparent: 'true', format: format //legendSrc:'http://publicatlas.microimages.com/sample_cgi/sample.cgi?REQUEST=GetLegendGraphic&VERSION=1.1.1&FORMAT=image/png&LAYER=MII_NLVE%3A_NE_Ortho_Multi' }, {singleTile: true, ratio: 1, transitionEffect: 'resize', options: { }} ); untiled[6].addOptions({legendSrc:'/puz/mask/getinfo.php?zx_xz=2service=wms&width=20&height=20&style=v_def_af_limita_intravilan&request=GetLegendGraphic&layer=v_def_af_limita_intravilan&format=image/png&version=1.1.1&transparent=true'}); map.addLayers([untiled[6]]); untiled[7] = new OpenLayers.Layer.WMS( "Limita administrativa", "/puz/mask/getinfo.php?zx_xz=2", { srs: 'EPSG:4317', layers: 'alba:def_af_lim_administrativa', setTileSize: function(size){return map.getSize();} , styles: '', transparent: 'true', format: format //legendSrc:'http://publicatlas.microimages.com/sample_cgi/sample.cgi?REQUEST=GetLegendGraphic&VERSION=1.1.1&FORMAT=image/png&LAYER=MII_NLVE%3A_NE_Ortho_Multi' }, {singleTile: true, ratio: 1, transitionEffect: 'resize', options: { }} ); untiled[7].addOptions({legendSrc:'/puz/mask/getinfo.php?zx_xz=2service=wms&width=20&height=20&style=def_af_lim_administrativa&request=GetLegendGraphic&layer=def_af_lim_administrativa&format=image/png&version=1.1.1&transparent=true'}); map.addLayers([untiled[7]]); // setup single tiled layer untiled[8] = new OpenLayers.Layer.Vector("Patrimoniu public", { strategies: [new OpenLayers.Strategy.BBOX()], protocol: new OpenLayers.Protocol.WFS({ version: "1.0.0", srsName: "EPSG:4317", // this is the default url: "geoserver/wfs?", featureType: "v_def_v_elemente_patrimoniu_public", features: "wkb_geometry", featureNS: "alba.ro", featurePrefix: "alba", geometryName: "wkb_geometry"}), projection: geographic, // specified because it is different than the map options: { }, legend:'/puz/mask/getinfo.php?zx_xz=2service=wms&WIDTH=150&height=20&style=v_def_v_elemente_patrimoniu_public&request=GetLegendGraphic&layer=v_def_v_elemente_patrimoniu_public&format=image/png&version=1.1.1&transparent=true' }); untiled[8].addOptions({legendSrc:'/puz/mask/getinfo.php?zx_xz=2service=wms&width=20&height=20&style=v_def_v_elemente_patrimoniu_public&request=GetLegendGraphic&layer=v_def_v_elemente_patrimoniu_public&format=image/png&version=1.1.1&transparent=true'}); map.addLayers([untiled[8]]); // setup single tiled layer untiled[9] = new OpenLayers.Layer.Vector("Patrimoniu privat", { strategies: [new OpenLayers.Strategy.BBOX()], protocol: new OpenLayers.Protocol.WFS({ version: "1.0.0", srsName: "EPSG:4317", // this is the default url: "geoserver/wfs?", featureType: "v_def_v_elemente_patrimoniu_privat", features: "wkb_geometry", featureNS: "alba.ro", featurePrefix: "alba", geometryName: "wkb_geometry"}), projection: geographic, // specified because it is different than the map options: { }, legend:'/puz/mask/getinfo.php?zx_xz=2service=wms&WIDTH=150&height=20&style=v_def_v_elemente_patrimoniu_privat&request=GetLegendGraphic&layer=v_def_v_elemente_patrimoniu_privat&format=image/png&version=1.1.1&transparent=true' }); untiled[9].addOptions({legendSrc:'/puz/mask/getinfo.php?zx_xz=2service=wms&width=20&height=20&style=v_def_v_elemente_patrimoniu_privat&request=GetLegendGraphic&layer=v_def_v_elemente_patrimoniu_privat&format=image/png&version=1.1.1&transparent=true'}); map.addLayers([untiled[9]]); var overCallback= {over: featureOver, out: hideTooltip}; var highlightCtrl = new OpenLayers.Control.SelectFeature([untiled[0],untiled[5],untiled[8],untiled[9]], { hover: true, highlightOnly: true, renderIntent: "temporary" }); map.addControl(highlightCtrl); highlightCtrl.activate(); selectControl = new OpenLayers.Control.SelectFeature([untiled[0],untiled[5],untiled[8],untiled[9]],{callbacks: overCallback}); map.addControl(selectControl); selectControl.activate(); OpenLayers.loadURL("puz/sldArieFunct.xml", null, null, complete); polygonLayer = new OpenLayers.Layer.Vector("Polygon Layer", {displayInLayerSwitcher: false}); polygonLayer.events.register('featureadded',polygonLayer,featurePolygonAdded); var sketchSymbolizers = { "Point": { pointRadius: 4, graphicName: "square", fillColor: "white", fillOpacity: 1, strokeWidth: 1, strokeOpacity: 1, strokeColor: "#333333" }, "Line": { strokeWidth: 3 , strokeOpacity: 1, strokeColor: "#FF0000", strokeDashstyle: "dash" }, "Polygon": { strokeWidth: 2, strokeOpacity: 1, strokeColor: "#FF0000", fillColor: "#FF0000", fillOpacity: 0.3 } }; var style = new OpenLayers.Style(); style.addRules([ new OpenLayers.Rule({symbolizer: sketchSymbolizers}) ]); var styleMapDraw = new OpenLayers.StyleMap({"default": style}); // build up all controls map.addControl(new OpenLayers.Control.PanZoomBar({ position: new OpenLayers.Pixel(2, 15) })); //map.addControl(new OpenLayers.Control.LayerSwitcher()); map.addControl(new OpenLayers.Control.Navigation()); map.addControl(new OpenLayers.Control.MousePosition({ div: document.getElementById('mapMousePosition'), numdigits: 5 })); map.addControl(new OpenLayers.Control.Scale('mapScale')); map.addControl(new OpenLayers.Control.ScaleLine()); //map.addControl(new OpenLayers.Control.MousePosition({element: $('location')})); var loadingpanel = new OpenLayers.Control.LoadingPanel({displayClass: "olControlLoadingPanel"}); //map.addControl(loadingpanel); map.zoomToExtent(initialZoomBounds); var optionsLine = { handlerOptions: { persist: true, layerOptions: {styleMap: styleMapDraw} }, displayClass: "olControlMeasureDistance", title: "Masoara distanta" }; var optionsPolygon = { handlerOptions: { persist: true, layerOptions: {styleMap: styleMapDraw} }, displayClass: "olControlMeasureArea", title: "Masoara aria" }; measureControls = { line: new OpenLayers.Control.Measure( OpenLayers.Handler.Path, optionsLine ), polygon: new OpenLayers.Control.Measure( OpenLayers.Handler.Polygon, optionsPolygon ) }; for(var key in measureControls) { control = measureControls[key]; control.events.on({ "measure": handleMeasurements, "measurepartial": handleMeasurements }); } var search_button = new OpenLayers.Control.Button({ title: "Cauta", displayClass: "olControlCautaButton", trigger: function(){ openChild("puz/search/searchForm.php?id=2&cautare=def_v_adrese"); } }); var navHistory = new OpenLayers.Control.NavigationHistory(); navHistory.previous.title = "Incarca zona precedenta"; navHistory.next.title = "Incarca zona urmatoare"; map.addControl(navHistory); var drag_control = new OpenLayers.Control.DragPan({title:'Navigare harta', displayClass: 'olControlPanMap'}); map.addControl(drag_control); var zoomToContextExtent = new OpenLayers.Control.Button({ title: "Incadreaza toata harta", displayClass: "olControlZoomToMaxExtent", trigger: function(){ var bounds = new OpenLayers.Bounds(379222.919, 499826.349,394854.919, 516717.349);map.zoomToExtent(bounds); } }); var draw = new OpenLayers.Control.DrawFeature(polygonLayer,OpenLayers.Handler.Polygon,{callbacks : {"create": pointHandler}, handlerOptions: {holeModifier: "altKey"}, title: "Delimitare proiect", displayClass: "olControlDrawButton"}); map.addControl(draw); var print_button = new OpenLayers.Control.Button({ title: "Printeaza harta", displayClass: "olControlPrintButton", trigger: function(){ window.print(); } }); var refresh_button = new OpenLayers.Control.Button({ title: "Reimprospateaza harta", displayClass: "olControlRefreshButton", trigger: function(){ refreshMap(); } }); var zoomBox = new OpenLayers.Control.ZoomBox({ title: "Zoom pe o anumita zona" }); var separator1 = new OpenLayers.Control.Button({ trigger: function(){ } }); var separator2 = new OpenLayers.Control.Button({ trigger: function(){ } }); var separator3 = new OpenLayers.Control.Button({ trigger: function(){ } }); var info = new OpenLayers.Control.WMSGetFeatureInfo({ url: '/puz/mask/getinfo.php?zx_xz=2', title: 'Identifica elemente prin clic', queryVisible: true, displayClass: 'olControlFeatureInfo', eventListeners: { getfeatureinfo: function(event) { if(map.popups.length>0) map.removePopup(popup); if(map.getZoom()<2) { map.zoomTo(2); } popup = new OpenLayers.Popup.FramedCloud( "chicken", map.getLonLatFromPixel(event.xy), null, event.text, null, true ); map.addPopup(popup); } } }); map.addControl(info); info.activate(); //adaug controale de tip info unde gasesc elemente pt identificare var panel_top = new OpenLayers.Control.Panel({ defaultControl: drag_control }); map.addControl(panel_top); panel_top.addControls([drag_control, zoomBox, zoomToContextExtent, navHistory.previous, navHistory.next, refresh_button, separator1, measureControls.line, measureControls.polygon, separator2, info , search_button,print_button ]); layerSwitcher = new OpenLayers.Control.LayerSwitcher(); layerSwitcher.ascending = false; // layerSwitcher.displayClass = ".olControlLayerSwitcher"; layerSwitcher.useLegendGraphics = true; map.addControl(layerSwitcher); layerSwitcher.maximizeControl(); document.getElementById('mapProjection').innerHTML = map.projection; } function openChild(file) { childWindow=open(file,"Cauta","width=600,height=600,0,status=0,scrollbars=1,location=0"); if (childWindow.opener == null) childWindow.opener = self; } function handleMeasurements(event) { var geometry = event.geometry; var units = event.units; var order = event.order; var measure = event.measure; var element = document.getElementById('mapOutput'); var out = ""; if(order == 1) { out += "Distanta: " + measure.toFixed(3) + " " + units; if (map.getProjection() == "EPSG:4326") { out += ", Great Circle Distance: " + calcVincenty(geometry).toFixed(3) + " km"; } } else { out += "Arie: " + measure.toFixed(3) + " " + units + "2"; } element.innerHTML = out; } function refreshMap(){ untiled[0].redraw(); untiled[1].redraw(); untiled[2].redraw(); untiled[3].redraw(); untiled[4].redraw(); untiled[5].redraw(); untiled[6].redraw(); untiled[7].redraw(); untiled[8].redraw(); untiled[9].redraw(); }; // sets the HTML provided into the nodelist element function setHTML(response){ //document.getElementById('nodelist').innerHTML += response.responseText; }; // shows/hide the control panel function toggleControlPanel(event){ var toolbar = document.getElementById("toolbar"); if (toolbar.style.display == "none") { toolbar.style.display = "block"; } else { toolbar.style.display = "none"; } event.stopPropagation(); map.updateSize(); } function selectFeature(id, idcol, table) { if(map.getLayerIndex(selection_layer)!=-1) map.removeLayer(selection_layer); selection_layer = new OpenLayers.Layer.Vector(table, { strategies: [new OpenLayers.Strategy.BBOX()], displayInLayerSwitcher: false, projection: new OpenLayers.Projection("EPSG:4317"), protocol: new OpenLayers.Protocol.WFS({ url: "/geoserver/wfs?", featureType: table, //extractAttributes:true, features: "wkb_geometry", srsName: "EPSG:4317", featureNS: "alba.ro", featurePrefix: "alba", geometryName: "wkb_geometry" }), styleMap: new OpenLayers.StyleMap({ strokeWidth: 6, strokeColor: "#008888", fillColor: "#00DDDD", fillOpacity: 0.5, pointerEvents: "visiblePainted" }), //commitReport: goToExtent, filter: new OpenLayers.Filter.Logical({ type: OpenLayers.Filter.Logical.OR, filters: [ new OpenLayers.Filter.Comparison({ type: OpenLayers.Filter.Comparison.EQUAL_TO, property: idcol, value: id }) ] })}); map.addLayer(selection_layer); selection_layer.events.register("loadend", selection_layer, goToExtent); if(map.popups.length>0) map.removePopup(popup); selection_layer.redraw(); document.getElementById('deselecteaza').disabled = false; } function selectFeatureBBox(id, idcol, table,xmin,ymin,xmax,ymax, zoom) { searchResultBounds=new OpenLayers.Bounds(xmin,ymin,xmax,ymax); var bboxzoom = map.getZoomForExtent(searchResultBounds) if(bboxzoomzoom) selected_zoom = zoom; // map.zoomTo(selected_zoom); // selected_zoom=0; //} } function featurePolygonAdded(feature) { polygonCreated = feature; document.getElementById('prelucreaza').disabled = false; } function pointHandler() { polygonLayer.removeAllFeatures(); polygonLayer.refresh(); document.getElementById('prelucreaza').disabled = "disabled"; } function clearSelection() { if(map.getLayerIndex(selection_layer)!=-1) map.removeLayer(selection_layer); document.getElementById('deselecteaza').disabled = "disabled"; } function prelucreaza() { var wkt = new OpenLayers.Format.WKT(); childWindowPrelucreaza=open("puz/exchange/prepare_download.php?geom=" + wkt.write(polygonCreated.feature),"Download","width=600,height=300,0,status=0,scrollbars=1,location=0"); if (childWindowPrelucreaza.opener == null) childWindowPrelucreaza.opener = self; } function uploadeaza() { var wkt = new OpenLayers.Format.WKT(); childWindowUploadeaza=open("puz/exchange/uploader.php","Download","width=600,height=600,0,status=0,scrollbars=1,location=0"); if (childWindowUploadeaza.opener == null) childWindowUploadeaza.opener = self; } function setPalette(mode){ if (mode == '') { untiled[0].mergeNewParams({ palette: null }); untiled[1].mergeNewParams({ palette: null }); untiled[2].mergeNewParams({ palette: null }); untiled[3].mergeNewParams({ palette: null }); untiled[4].mergeNewParams({ palette: null }); untiled[5].mergeNewParams({ palette: null }); untiled[6].mergeNewParams({ palette: null }); untiled[7].mergeNewParams({ palette: null }); untiled[8].mergeNewParams({ palette: null }); untiled[9].mergeNewParams({ palette: null }); } else { untiled[0].mergeNewParams({ palette: mode }); untiled[1].mergeNewParams({ palette: mode }); untiled[2].mergeNewParams({ palette: mode }); untiled[3].mergeNewParams({ palette: mode }); untiled[4].mergeNewParams({ palette: mode }); untiled[5].mergeNewParams({ palette: mode }); untiled[6].mergeNewParams({ palette: mode }); untiled[7].mergeNewParams({ palette: mode }); untiled[8].mergeNewParams({ palette: mode }); untiled[9].mergeNewParams({ palette: mode }); } ///////////////////////////////////////////////////////////////////////////////////// } // Set a style for the given layer: function setLayerStyle(layerName, index, layer) { //alert('set style'); var customStyle=sld.namedLayers[layerName].userStyles[index]; layer.styleMap.styles['default']=customStyle; layer.styleMap.styles['temporary']=highlightStyle; layer.redraw(); } function complete(req) { //alert('complete fct'); sld = formatSLD.read(req.responseXML || req.responseText); //parcurg vectorii setLayerStyle("Adrese",0,untiled[0]); setLayerStyle("Obiective investitii",0,untiled[5]); setLayerStyle("Patrimoniu public",0,untiled[8]); setLayerStyle("Patrimoniu privat",0,untiled[9]); } function setWidth(size){ var mapDiv = document.getElementById('map'); var wrapper = document.getElementById('wrapper'); if (size == "auto") { // reset back to the default value mapDiv.style.width = null; wrapper.style.width = null; } else { mapDiv.style.width = size + "px"; wrapper.style.width = size + "px"; } // notify OL that we changed the size of the map div map.updateSize(); } function setHeight(size){ var mapDiv = document.getElementById('map'); if (size == "auto") { // reset back to the default value mapDiv.style.height = null; } else { mapDiv.style.height = size + "px"; } // notify OL that we changed the size of the map div map.updateSize(); } function updateFilter(){ } function resetFilter() { } function mergeNewParams(params){ untiled[0].mergeNewParams(params); untiled[1].mergeNewParams(params); untiled[2].mergeNewParams(params); untiled[3].mergeNewParams(params); untiled[4].mergeNewParams(params); untiled[5].mergeNewParams(params); untiled[6].mergeNewParams(params); untiled[7].mergeNewParams(params); untiled[8].mergeNewParams(params); untiled[9].mergeNewParams(params); } function getColors() { alert(untiled[0].params.LAYERS); alert('Culoare '+untiled[0].features[0].attributes.id_af_plan); //for (var pr in untiled[0].features[0].attributes) // { // alert(pr); // } } function featureOver(feature) { var fname=''; if(feature.layer.name=='Adrese'){ fname = fname + '

Adrese

";} if(feature.layer.name=='Obiective investitii'){ fname = fname + '

Obiective investitii

";} if(feature.layer.name=='Patrimoniu public'){ fname = fname + '

Patrimoniu public

";} if(feature.layer.name=='Patrimoniu privat'){ fname = fname + '

Patrimoniu privat

";} var xy = this.map.getControl('ll_mouse').lastXy || new OpenLayers.Pixel(0,0); showTooltip(fname, xy.x+50, xy.y+50); } function showTooltip(ttText, x, y) { var windowWidth = getViewport().width; var o = document.getElementById('tooltip'); o.innerHTML = ttText; if(o.offsetWidth) { var ew = o.offsetWidth; } else if(o.clip.width) { var ew = o.clip.width; } y = y + 10; x = x - (ew / 4); if (x < 35) { x = 35; } else if(x + ew > windowWidth) { x = windowWidth - ew - 4; } if (y < 60) { y = 60; } o.style.left = x + 'px'; o.style.top = y + 'px'; document.getElementById('tooltip').style.visibility = 'visible'; } function hideTooltip() { document.getElementById('tooltip').style.visibility = 'hidden'; } //non-OL-related functions function getViewport() { var e = window, a = 'inner'; if ( !( 'innerWidth' in window ) ) { a = 'client'; e = document.documentElement || document.body; } return { width : e[ a+'Width' ], height : e[ a+'Height' ] } } function formatLonlats(lonLat) { var lat = lonLat.lat; var lg = lonLat.lon; var ns = OpenLayers.Util.getFormattedLonLat(lat); var ew = OpenLayers.Util.getFormattedLonLat(lg,'lon'); return ns + ', ' + ew + ' (' + (Math.round(lat * 10000) / 10000) + ', ' + (Math.round(lg * 10000) / 10000) + ')'; } function onPopupClose(feature) { selectControl.unselect(feature); } function onFeatureUnselect(feature) { if(feature.popup!=null) { map.removePopup(feature.popup); feature.popup.destroy(); //feature.attributes.poppedup = false; feature.popup = null; } } function formatLonlats(lonLat) { var lat = lonLat.lat; var lg = lonLat.lon; var ns = OpenLayers.Util.getFormattedLonLat(lat); var ew = OpenLayers.Util.getFormattedLonLat(lg,'lon'); return ns + ', ' + ew + ' (' + (Math.round(lat * 10000) / 10000) + ', ' + (Math.round(lg * 10000) / 10000) + ')'; } OpenLayers.Control.LoadingPanel = OpenLayers.Class(OpenLayers.Control, { counter: 0, maximized: false, visible: true, initialize: function(options) { OpenLayers.Control.prototype.initialize.apply(this, [options]); }, setVisible: function(visible) { this.visible = visible; if (visible) { OpenLayers.Element.show(this.div); } else { OpenLayers.Element.hide(this.div); } }, getVisible: function() { return this.visible; }, hide: function() { this.setVisible(false); }, show: function() { this.setVisible(true); }, toggle: function() { this.setVisible(!this.getVisible()); }, addLayer: function(evt) { if (evt.layer) { evt.layer.events.register('loadstart', this, this.increaseCounter); evt.layer.events.register('loadend', this, this.decreaseCounter); } }, setMap: function(map) { OpenLayers.Control.prototype.setMap.apply(this, arguments); this.map.events.register('preaddlayer', this, this.addLayer); for (var i = 0; i < this.map.layers.length; i++) { var layer = this.map.layers[i]; layer.events.register('loadstart', this, this.increaseCounter); layer.events.register('loadend', this, this.decreaseCounter); } }, increaseCounter: function() { this.counter++; if (this.counter > 0) { if (!this.maximized && this.visible) { this.maximizeControl(); } } }, decreaseCounter: function() { if (this.counter > 0) { this.counter--; } if (this.counter == 0) { if (this.maximized && this.visible) { this.minimizeControl(); } } }, draw: function () { OpenLayers.Control.prototype.draw.apply(this, arguments); return this.div; }, minimizeControl: function(evt) { this.div.style.display = "none"; this.maximized = false; if (evt != null) { OpenLayers.Event.stop(evt); } }, maximizeControl: function(evt) { this.div.style.display = "block"; this.maximized = true; if (evt != null) { OpenLayers.Event.stop(evt); } }, destroy: function() { if (this.map) { this.map.events.unregister('preaddlayer', this, this.addLayer); if (this.map.layers) { for (var i = 0; i < this.map.layers.length; i++) { var layer = this.map.layers[i]; layer.events.unregister('loadstart', this, this.increaseCounter); layer.events.unregister('loadend', this, this.decreaseCounter); } } } OpenLayers.Control.prototype.destroy.apply(this, arguments); }, CLASS_NAME: "OpenLayers.Control.LoadingPanel" });