Extract functions to update map form fields

This commit is contained in:
Javi Martín
2023-04-24 17:56:02 +02:00
parent f8053c9532
commit 2e8bc11c2a

View File

@@ -15,9 +15,9 @@
App.Map.maps = []; App.Map.maps = [];
}, },
initializeMap: function(element) { initializeMap: function(element) {
var addMarkerInvestments, centerData, clearFormfields, createMarker, var addMarkerInvestments, centerData, createMarker, editable, markerData,
editable, markerData, map, mapCenterLatLng, marker, markerIcon, map, mapCenterLatLng, marker, markerIcon, moveOrPlaceMarker,
moveOrPlaceMarker, removeMarker, removeMarkerSelector, updateFormfields; removeMarker, removeMarkerSelector;
App.Map.cleanInvestmentCoordinates(element); App.Map.cleanInvestmentCoordinates(element);
removeMarkerSelector = $(element).data("marker-remove-selector"); removeMarkerSelector = $(element).data("marker-remove-selector");
addMarkerInvestments = $(element).data("marker-investments-coordinates"); addMarkerInvestments = $(element).data("marker-investments-coordinates");
@@ -37,7 +37,9 @@
draggable: editable draggable: editable
}); });
if (editable) { if (editable) {
marker.on("dragend", updateFormfields); marker.on("dragend", function() {
App.Map.updateFormfields(map, marker);
});
} }
marker.addTo(map); marker.addTo(map);
return marker; return marker;
@@ -48,7 +50,7 @@
map.removeLayer(marker); map.removeLayer(marker);
marker = null; marker = null;
} }
clearFormfields(); App.Map.clearFormfields(element);
}; };
moveOrPlaceMarker = function(e) { moveOrPlaceMarker = function(e) {
if (marker) { if (marker) {
@@ -56,21 +58,7 @@
} else { } else {
marker = createMarker(e.latlng.lat, e.latlng.lng); marker = createMarker(e.latlng.lat, e.latlng.lng);
} }
updateFormfields(); App.Map.updateFormfields(map, marker);
};
updateFormfields = function() {
var inputs = App.Map.coordinatesInputs(element);
inputs.lat.val(marker.getLatLng().lat);
inputs.long.val(marker.getLatLng().lng);
inputs.zoom.val(map.getZoom());
};
clearFormfields = function() {
var inputs = App.Map.coordinatesInputs(element);
inputs.lat.val("");
inputs.long.val("");
inputs.zoom.val("");
}; };
centerData = App.Map.centerData(element); centerData = App.Map.centerData(element);
@@ -87,7 +75,7 @@
$(removeMarkerSelector).on("click", removeMarker); $(removeMarkerSelector).on("click", removeMarker);
map.on("zoomend", function() { map.on("zoomend", function() {
if (marker) { if (marker) {
updateFormfields(); App.Map.updateFormfields(map, marker);
} }
}); });
map.on("click", moveOrPlaceMarker); map.on("click", moveOrPlaceMarker);
@@ -164,6 +152,20 @@
zoom: $($(element).data("zoom-input-selector")) zoom: $($(element).data("zoom-input-selector"))
}; };
}, },
updateFormfields: function(map, marker) {
var inputs = App.Map.coordinatesInputs(map._container);
inputs.lat.val(marker.getLatLng().lat);
inputs.long.val(marker.getLatLng().lng);
inputs.zoom.val(map.getZoom());
},
clearFormfields: function(element) {
var inputs = App.Map.coordinatesInputs(element);
inputs.lat.val("");
inputs.long.val("");
inputs.zoom.val("");
},
cleanInvestmentCoordinates: function(element) { cleanInvestmentCoordinates: function(element) {
var clean_markers, markers; var clean_markers, markers;
markers = $(element).attr("data-marker-investments-coordinates"); markers = $(element).attr("data-marker-investments-coordinates");