From 7897691f9a7f732f20c04e22dadd1e64683a7951 Mon Sep 17 00:00:00 2001 From: Mac_Weber Date: Mon, 8 Oct 2012 00:56:54 -0300 Subject: [PATCH] Issue #1805844 by Mac_Weber: Fixing getting geoJSON layer from URL. --- .../layer_types/openlayers_layer_type_geojson.js | 33 +++++++++------------- 1 file changed, 14 insertions(+), 19 deletions(-) diff --git a/plugins/layer_types/openlayers_layer_type_geojson.js b/plugins/layer_types/openlayers_layer_type_geojson.js index c2a5458..1adbb68 100644 --- a/plugins/layer_types/openlayers_layer_type_geojson.js +++ b/plugins/layer_types/openlayers_layer_type_geojson.js @@ -39,33 +39,28 @@ Drupal.openlayers.layer.geojson = function(title, map, options) { layer.events.triggerEvent('loadend'); } } - else if (options.useBBOX) { - options.strategies = [ new OpenLayers.Strategy.BBOX(options.resFactor) ]; + else { + // @todo Add more strategies. Paging strategy would be really interesting + // to use with views_geojson. + // @see http://dev.openlayers.org/releases/OpenLayers-2.7/doc/apidocs/files/OpenLayers/Strategy/Paging-js.html + if (options.useBBOX) { + // BBOX strategy. + // @see http://dev.openlayers.org/releases/OpenLayers-2.7/doc/apidocs/files/OpenLayers/Strategy/BBOX-js.html + options.strategies = [ new OpenLayers.Strategy.BBOX(options.resFactor) ]; + } + else { + // Fixed strategy. + // @see http://dev.openlayers.org/releases/OpenLayers-2.7/doc/apidocs/files/OpenLayers/Strategy/Fixed-js.html + options.strategies = [new OpenLayers.Strategy.Fixed()]; + } options.protocol = new OpenLayers.Protocol.HTTP({ url: options.url, format: new OpenLayers.Format.GeoJSON() }); var layer = new OpenLayers.Layer.Vector(title, options); } - else { - var layer = new OpenLayers.Layer.Vector(title, options); - - // Use an AJAX like call to get data from URL - OpenLayers.loadURL(options.url, {}, null, function (response) { - var format = new OpenLayers.Format.GeoJSON(geojson_options); - var features = format.read(response.responseText); - // Add features, if needed - if (features) { - layer.addFeatures(features); - layer.events.triggerEvent('loadend'); - } - }); - } return layer; }; })(jQuery); - - - -- 1.7.11.3