diff --git a/app/assets/javascripts/index/directions-endpoint.js b/app/assets/javascripts/index/directions-endpoint.js index 14c91a4fb4..24042081d7 100644 --- a/app/assets/javascripts/index/directions-endpoint.js +++ b/app/assets/javascripts/index/directions-endpoint.js @@ -1,4 +1,4 @@ -OSM.DirectionsEndpoint = function Endpoint(map, input, iconUrl, dragCallback, geocodeCallback) { +OSM.DirectionsEndpoint = function Endpoint(map, input, iconUrl, dragCallback, changeCallback) { var endpoint = {}; endpoint.marker = L.marker([0, 0], { @@ -42,6 +42,7 @@ OSM.DirectionsEndpoint = function Endpoint(map, input, iconUrl, dragCallback, ge if (latlng) { setLatLng(latlng); setInputValueFromLatLng(latlng); + changeCallback(); } else { endpoint.getGeocode(); } @@ -71,7 +72,7 @@ OSM.DirectionsEndpoint = function Endpoint(map, input, iconUrl, dragCallback, ge input.val(json[0].display_name); - geocodeCallback(); + changeCallback(); }); }; diff --git a/app/assets/javascripts/index/directions.js b/app/assets/javascripts/index/directions.js index 974a40e850..b34f18ed1e 100644 --- a/app/assets/javascripts/index/directions.js +++ b/app/assets/javascripts/index/directions.js @@ -28,13 +28,13 @@ OSM.Directions = function (map) { getRoute(false, !dragging); }; - var endpointGeocodeCallback = function () { + var endpointChangeCallback = function () { getRoute(true, true); }; var endpoints = [ - OSM.DirectionsEndpoint(map, $("input[name='route_from']"), OSM.MARKER_GREEN, endpointDragCallback, endpointGeocodeCallback), - OSM.DirectionsEndpoint(map, $("input[name='route_to']"), OSM.MARKER_RED, endpointDragCallback, endpointGeocodeCallback) + OSM.DirectionsEndpoint(map, $("input[name='route_from']"), OSM.MARKER_GREEN, endpointDragCallback, endpointChangeCallback), + OSM.DirectionsEndpoint(map, $("input[name='route_to']"), OSM.MARKER_RED, endpointDragCallback, endpointChangeCallback) ]; var expiry = new Date(); @@ -303,7 +303,6 @@ OSM.Directions = function (map) { var precision = OSM.zoomPrecision(map.getZoom()); var value = ll.lat.toFixed(precision) + ", " + ll.lng.toFixed(precision); endpoints[type === "from" ? 0 : 1].setValue(value, ll); - getRoute(true, true); }); var params = Qs.parse(location.search.substring(1)), @@ -323,8 +322,6 @@ OSM.Directions = function (map) { endpoints[1].setValue(params.to || "", to); map.setSidebarOverlaid(!from || !to); - - getRoute(true, true); }; page.load = function () {