-
- $(".search_form").on("submit", function(e) {
- e.preventDefault();
- if ($(".query_wrapper.routing").is(":visible")) {
- // Routing
- OSM.routing.requestRoute(true, true);
- } else {
- // Search
- $("header").addClass("closed");
- var query = $(this).find("input[name=query]").val();
- if (query) {
- OSM.router.route("/search?query=" + encodeURIComponent(query) + OSM.formatHash(map));
- } else {
- OSM.router.route("/" + OSM.formatHash(map));
- }
- }
- });
-
- $(".describe_location").on("click", function(e) {
- e.preventDefault();
- var precision = OSM.zoomPrecision(map.getZoom());
- OSM.router.route("/search?query=" + encodeURIComponent(
- map.getCenter().lat.toFixed(precision) + "," +
- 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();
- $(".search").hide();
- $(".routing").show();
- $(".search_form input[type='submit']").addClass("routing_submit");
- $(".query_wrapper.routing [name=route_from]").focus();
- $("#map").on('dragend dragover',function(e) { e.preventDefault(); });
- $("#map").on('drop',function(e) { OSM.routing.handleDrop(e); e.preventDefault(); });
- $(".routing_marker").on('dragstart',function(e) {
- e.originalEvent.dataTransfer.effectAllowed = 'move';
- e.originalEvent.dataTransfer.setData('id', this.id);
- var xo=e.originalEvent.clientX - $(e.target).offset().left;
- var yo=e.originalEvent.clientY - $(e.target).offset().top;
- e.originalEvent.dataTransfer.setData('offsetX', e.originalEvent.target.width/2 - xo);
- e.originalEvent.dataTransfer.setData('offsetY', e.originalEvent.target.height - yo);
- });
- });
-
- $(".close_directions").on("click",function(e) {
- e.preventDefault();
- $(".search").show();
- $(".routing").hide();
- $(".search_form input[type='submit']").removeClass("routing_submit");
- OSM.routing.close();
- $("#map").off('dragend drop dragover');
- $(".routing_marker").off('dragstart');
- $(".query_wrapper.search [name=query]").focus();
- });
-