X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/69437cf0ad12550ebfaadea56d074ac9996b8ca0..5b6558c0f29013e85c9c398a61872f9dad5a69c5:/app/assets/javascripts/index.js?ds=sidebyside diff --git a/app/assets/javascripts/index.js b/app/assets/javascripts/index.js index 74ec05823..fc8e8ff46 100644 --- a/app/assets/javascripts/index.js +++ b/app/assets/javascripts/index.js @@ -15,6 +15,7 @@ //= require index/new_note //= require router //= require routing +//= require_tree ./routing_engines (function() { var loaderTimeout; @@ -326,7 +327,7 @@ $(document).ready(function () { e.preventDefault(); if ($(".query_wrapper.routing").is(":visible")) { // Routing - OSM.routing.requestRoute(); + OSM.routing.requestRoute(true, false); } else { // Search $("header").addClass("closed"); @@ -347,20 +348,30 @@ $(document).ready(function () { map.getCenter().lng.toFixed(precision))); }); + OSM.routing = OSM.Routing(map,'OSM.routing',$('.query_wrapper.routing')); + OSM.routing.chooseEngine('javascripts.directions.engines.osrm_car'); + $(".get_directions").on("click",function(e) { - e.preventDefault(); - $(".query_wrapper.search").hide(); - $(".query_wrapper.routing").show(); - $(".query_wrapper.routing [name=route_from]").focus(); + e.preventDefault(); + $(".search").hide(); + $(".routing").show(); + $(".query_wrapper.routing [name=route_from]").focus(); + $("#map").on('dragend dragover',function(e) { e.preventDefault(); }); + $("#map").on('drop',function(e) { OSM.routing.handleDrop(e); }); + $(".routing_marker").on('dragstart',function(e) { + e.originalEvent.dataTransfer.effectAllowed = 'move'; + e.originalEvent.dataTransfer.setData('id', this.id); + }); }); $(".close_directions").on("click",function(e) { - e.preventDefault(); - $(".query_wrapper.search").show(); - $(".query_wrapper.routing").hide(); - $(".query_wrapper.search [name=query]").focus(); + e.preventDefault(); + $(".search").show(); + $(".routing").hide(); + OSM.routing.close(); + $("#map").off('dragend drop dragover'); + $(".routing_marker").off('dragstart'); + $(".query_wrapper.search [name=query]").focus(); }); - OSM.routing = OSM.Routing(map,'OSM.routing',$('.query_wrapper.routing')); - });