// $Id$ // Global variables var map, mapExtension, gOverlays; // Setup custom GMap Overlays function gmap_arcgis() { /** * Use a timer to make sure everything is loaded upon execution time. * See http://drupal.org/node/223613#comment-736303 */ setTimeout(function() { // Variables var id = 'auto1map'; // Get Map Id if (Drupal.settings.gmap_arcgis.id !== undefined) { id = Drupal.settings.gmap_arcgis.id; } // Get an existing GMap instance using Drupal GMap Module API map = Drupal.gmap.getMap(id).map; //gmapArcgisShowPolygons(map, Drupal.settings.gmap_arcgis.polygons); }, 5); } // Show all defined polygons function gmapArcgisShowPolygons(map, polygons) { for (j = 0; j < polygons.length; j++) { showPolygon(map, polygons[j]); } } // Hide all defined polygons function gmapArcgisHidePolygons(map, polygons) { for (j = 0; j < polygons.length; j++) { polygons[j].overlay.setOpacity(0); unblockUI(); } } // Add polygons from a given ArcGIS MapServer Layer function showPolygon(map, polygon) { var defaultOpacity = 0.55; if (typeof polygon.overlay != 'undefined') { polygon.overlay.setOpacity(defaultOpacity); unblockUI(); return; } uri = polygon['uri']; layers = polygon['layers']; polygon.overlay = new gmaps.ags.MapOverlay(uri, { exportOptions: { layerIds: layers, layerOption: 'show', } }); polygon.overlay.setMap(map); polygon.overlay.setOpacity(defaultOpacity); google.maps.event.addListener(polygon.overlay.getMapService(), 'load', function() { unblockUI(); }); } // UI unblocker wrapper function unblockUI() { $.unblockUI(); } // UI blocker wrapper function blockUI() { $.blockUI(); } // Add map overlays $(document).ready(function() { google.setOnLoadCallback(gmap_arcgis); $('#edit-lista-uc').change(function() { $('#header').hide(); $('#nav').hide(); }); });