3
0
Fork 0
mirror of https://github.com/farmOS/farmOS.git synced 2024-02-23 11:37:38 +01:00
farmOS/modules/farm/farm_movement/js/farmOS.map.behaviors.assets_full.js
2020-02-10 14:27:49 -05:00

43 lines
1.4 KiB
JavaScript

(function () {
farmOS.map.behaviors.assets_full = {
attach: function (instance) {
if (Drupal.settings.farm_map.behaviors.assets_full.types !== undefined) {
var types = Drupal.settings.farm_map.behaviors.assets_full.types;
if (Drupal.settings.farm_map.behaviors.assets_full.type) {
types = types.filter(function (type) {
return type.type === Drupal.settings.farm_map.behaviors.assets_full.type;
});
}
for (var i = 0; i < types.length; i++) {
// Add a full asset geometry layer.
var opts = {
title: types[i].label,
url: types[i].full,
color: 'orange',
group: 'Assets',
};
var layer = instance.addLayer('geojson', opts);
layer.getStyle().getStroke().setLineDash([4, 12]);
}
// If zoom is true, zoom to layer(s).
if (Drupal.settings.farm_map.behaviors.assets_full.zoom) {
var source = layer.getSource();
source.on('change', function () {
// If one type was defined, zoom to the individual layer.
if (types.length === 1) {
instance.zoomToLayer(layer);
}
// Otherwise, zoom to all vectors.
else {
instance.zoomToVectors();
}
});
}
}
}
};
}());