//Create IdentifyTask object userConfig.identifyTask = new esri.tasks.IdentifyTask(currentServiceUrl); //Create and setup IdentifyParameters userConfig.identifyParams = new esri.tasks.IdentifyParameters(); userConfig.identifyParams.height = userConfig.map.height; userConfig.identifyParams.width = userConfig.map.width; userConfig.identifyParams.mapExtent = userConfig.map.extent; userConfig.identifyParams.tolerance = 3; userConfig.identifyParams.returnGeometry = true; //Define the layers to identify var layersToId = []; if (currentUtilId == "barksdale") { var layers = userConfig.barksdaleService.visibleLayers; for (var i = 0; i < layers.length; i++) { if (layers != 27 && layers != 40 && layers != 82) { layersToId.push(layers); } } //End loop } else if (currentUtilId == "malmstrom") { var layers = userConfig.malmstromService.visibleLayers; for (var i = 0; i < layers.length; i++) { if (layers != 27 && layers != 40 && layers != 82) { layersToId.push(layers); } } //End loop } else if (currentUtilId == "minot") { var layers = userConfig.minotService.visibleLayers; for (var i = 0; i < layers.length; i++) { if (layers != 27 && layers != 40 && layers != 82) { layersToId.push(layers); } } //End loop } else if (currentUtilId == "whiteman") { var layers = userConfig.whitemanService.visibleLayers; for (var i = 0; i < layers.length; i++) { if (layers != 27 && layers != 40 && layers != 82) { layersToId.push(layers); } } //End loop } else if (currentUtilId == "warren") { var layers = userConfig.warrenService.visibleLayers; for (var i = 0; i < layers.length; i++) { if (layers != 27 && layers != 40 && layers != 82) { layersToId.push(layers); } } //End loop } userConfig.identifyParams.layerIds = layersToId; userConfig.identifyParams.geometry = evt.mapPoint; var deferred = userConfig.identifyTask.execute(userConfig.identifyParams); deferred.addCallback(function (response) { // Response is array of identify result objects // Return an array of features. return dojo.map(response, function (result) { var feature = result.feature; var attribution = feature.attributes; var infoTemplate = new esri.InfoTemplate(); var templateString = ""; //Parse and print the key-value pairs in the attribution object for (prop in attribution) { templateString = templateString + "<b>" + prop + "</b>: " + attribution[prop] + "<br>"; } infoTemplate.setTitle("Identify Results"); infoTemplate.setContent(templateString); feature.setInfoTemplate(infoTemplate); return feature; }); }); userConfig.map.infoWindow.setFeatures([deferred]); userConfig.map.infoWindow.show(evt.mapPoint);
map.infoWindow.show(evt.screenPoint, map.getInfoWindowAnchor(evt.screenPoint));
var evtCopy = evt; userConfig.identifyTask.execute(userConfig.identifyParams, function(response) { // Response is array of identify result objects // Return an array of features. var features = dojo.map(response, function (result) { var feature = result.feature; var attribution = feature.attributes; var infoTemplate = new esri.InfoTemplate(); var templateString = ""; //Parse and print the key-value pairs in the attribution object for (prop in attribution) { templateString = templateString + "<b>" + prop + "</b>: " + attribution[prop] + "<br>"; } infoTemplate.setTitle("Identify Results"); infoTemplate.setContent(templateString); feature.setInfoTemplate(infoTemplate); return feature; }); userConfig.map.infoWindow.setFeatures(features); userConfig.map.infoWindow.show(evtCopy.mapPoint); });