aboutsummaryrefslogtreecommitdiff
path: root/gmap_arcgis.js
diff options
context:
space:
mode:
Diffstat (limited to 'gmap_arcgis.js')
-rw-r--r--gmap_arcgis.js23
1 files changed, 9 insertions, 14 deletions
diff --git a/gmap_arcgis.js b/gmap_arcgis.js
index 315fa08..fa03c1a 100644
--- a/gmap_arcgis.js
+++ b/gmap_arcgis.js
@@ -24,7 +24,6 @@ function gmapArcgis(config) {
}
}
- // TODO: needs debug and fixing
// Return a Gmap ArcGIS object
return {
// Storable properties
@@ -42,8 +41,7 @@ function gmapArcgis(config) {
}
if (window.blockUI[name] != undefined && window.blockUI[name] == true) {
- var index = window.blockUI.indexOf(name);
- window.blockUI = window.blockUI.splice(index, 1);
+ delete window.blockUI[name];
}
if (window.blockUI.length == 0) {
@@ -140,7 +138,7 @@ function gmapArcgis(config) {
},
// Add polygons from a given ArcGIS MapServer Layer
- showPolygon: function(params) {
+ showPolygon: function(params, name) {
var self = this;
params.service = new gmaps.ags.MapService(params['uri']);
params.overlay = new gmaps.ags.MapOverlay(params.service, {
@@ -150,19 +148,17 @@ function gmapArcgis(config) {
layerDefinitions: (params['layerDefinitions'] != undefined) ? params['layerDefinitions'] : { },
},
});
-
+
if (params.callback == undefined) {
// Default callback: remove the blockUI once the layer is shown
google.maps.event.addListener(params.overlay, 'drawend', function() {
- // TODO
- self.unblockUI();
+ self.unblockUI(name);
});
}
else {
google.maps.event.addListener(params.overlay, 'drawend', function() {
params.callback(this.map, params);
- // TODO
- self.unblockUI();
+ self.unblockUI(name);
});
}
@@ -276,7 +272,7 @@ function gmapArcgis(config) {
}
this.showOverlayIf('layers', element);
- this.config['layers'][element].overlay = this.showPolygon(this.config['layers'][element]);
+ this.config['layers'][element].overlay = this.showPolygon(this.config['layers'][element], 'layers_' + element);
},
// Add a slider layer in the map
@@ -290,7 +286,7 @@ function gmapArcgis(config) {
}
this.showOverlayIf('sliders', slider);
- this.config['sliders'][slider].overlays[layer] = this.showPolygon(this.config['sliders'][slider]);
+ this.config['sliders'][slider].overlays[layer] = this.showPolygon(this.config['sliders'][slider], 'sliders_' + slider);
this.sliderUpdateOpacity(layer, slider);
},
@@ -553,7 +549,7 @@ function gmapArcgis(config) {
},
// Show a polygon resulting from the given query
- showPolygonFromQuery: function(params) {
+ showPolygonFromQuery: function(params, name) {
var self = this;
var limit = null;
var layer = new gmaps.ags.Layer(params.uri);
@@ -604,8 +600,7 @@ function gmapArcgis(config) {
self.setCenter(center, true);
}
- // TODO
- self.unblockUI();
+ self.unblockUI(name);
return params.overlay;
});
},