aboutsummaryrefslogtreecommitdiff
path: root/gmap_arcgis.js
diff options
context:
space:
mode:
Diffstat (limited to 'gmap_arcgis.js')
-rw-r--r--gmap_arcgis.js22
1 files changed, 19 insertions, 3 deletions
diff --git a/gmap_arcgis.js b/gmap_arcgis.js
index f5783d3..7fe4fca 100644
--- a/gmap_arcgis.js
+++ b/gmap_arcgis.js
@@ -227,8 +227,16 @@ function gmapArcgis(config) {
this.config['layers'][element].opacity = this.defaultOpacity(element);
if (typeof this.config['layers'][element].overlay != 'undefined') {
- this.config['layers'][element].overlay.setOpacity(this.config['layers'][element].opacity);
- this.identifyPolygon(this.config['layers'][element]);
+ if (this.config['layers'][element].overlay.setOpacity != undefined) {
+ this.config['layers'][element].overlay.setOpacity(this.config['layers'][element].opacity);
+ this.identifyPolygon(this.config['layers'][element]);
+ }
+ else if (this.config['layers'][element].overlay[0] != undefined) {
+ for (i=0; i < this.config['layers'][element].overlay.length; i++) {
+ this.config['layers'][element].overlay[i].setVisible(true);
+ }
+ }
+
this.unblockUI();
return;
}
@@ -354,8 +362,16 @@ function gmapArcgis(config) {
},
// Toggle layer visibility
+ // TODO: it should really toggle and not just hide layers
toggleLayers: function(element) {
- this.config['layers'][element].overlay.setOpacity(0);
+ if (this.config['layers'][element].overlay.setOpacity != undefined) {
+ this.config['layers'][element].overlay.setOpacity(0);
+ }
+ else if (this.config['layers'][element].overlay[0] != undefined) {
+ for (i=0; i < this.config['layers'][element].overlay.length; i++) {
+ this.config['layers'][element].overlay[i].setVisible(false);
+ }
+ }
if (this.config['layers'][element].identifyListener != undefined) {
google.maps.event.removeListener(this.config['layers'][element].identifyListener);