zoom) 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("Arii functionale PUG",0,untiled[0]);
setLayerStyle("Planuri urbanism",0,untiled[1]);
setLayerStyle("Adrese",0,untiled[5]);
setLayerStyle("Arii protectie",0,untiled[6]);
setLayerStyle("Obiective utilitate publica",0,untiled[7]);
}
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=='Arii functionale PUG'){
fname = fname + 'Arii functionale PUG
';
fname = fname + "- Tip: ";
if(feature.attributes.zona_functionala!=null)
fname = fname + feature.attributes.zona_functionala+"
";
else
fname = fname + "- ";
fname = fname + "- Subtip: ";
if(feature.attributes.subzona_functionala!=null)
fname = fname + feature.attributes.subzona_functionala+"
";
else
fname = fname + "- ";
fname = fname + "
";}
if(feature.layer.name=='Planuri urbanism'){
fname = fname + 'Planuri urbanism
';
fname = fname + "- Nume beneficiar: ";
if(feature.attributes.nume_benef!=null)
fname = fname + feature.attributes.nume_benef+"
";
else
fname = fname + "- ";
fname = fname + "- Denumire: ";
if(feature.attributes.denumire!=null)
fname = fname + feature.attributes.denumire+"
";
else
fname = fname + "- ";
fname = fname + "
";}
if(feature.layer.name=='Adrese'){
fname = fname + 'Adrese
';
fname = fname + "- Adresa: ";
if(feature.attributes.adresa!=null)
fname = fname + feature.attributes.adresa+"
";
else
fname = fname + "- ";
fname = fname + "
";}
if(feature.layer.name=='Arii protectie'){
fname = fname + 'Arii protectie
';
fname = fname + "- Tip: ";
if(feature.attributes.definitie!=null)
fname = fname + feature.attributes.definitie+"
";
else
fname = fname + "- ";
fname = fname + "- Descriere: ";
if(feature.attributes.descriere!=null)
fname = fname + feature.attributes.descriere+"
";
else
fname = fname + "- ";
fname = fname + "
";}
if(feature.layer.name=='Obiective utilitate publica'){
fname = fname + 'Obiective utilitate publica
';
fname = fname + "- Denumire: ";
if(feature.attributes.denumire_o!=null)
fname = fname + feature.attributes.denumire_o+"
";
else
fname = fname + "- ";
fname = fname + "- Tip: ";
if(feature.attributes.definitie!=null)
fname = fname + feature.attributes.definitie+"
";
else
fname = fname + "- ";
fname = fname + "
";}
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"
});