Make close button on route dialogue return to index.
authorMatt Amos <zerebubuth@gmail.com>
Mon, 26 Jan 2015 15:02:55 +0000 (15:02 +0000)
committerMatt Amos <zerebubuth@gmail.com>
Mon, 26 Jan 2015 15:02:55 +0000 (15:02 +0000)
app/assets/javascripts/index.js
app/assets/javascripts/index/directions.js.erb
app/views/layouts/_search.html.erb

index 66dfa5b..afb6b3d 100644 (file)
@@ -236,6 +236,10 @@ $(document).ready(function () {
     };
 
     page.load = function() {
+      var params = querystring.parse(location.search.substring(1));
+      if (params.query) {
+        $("#sidebar .search_form input[name=query]").value(params.query);
+      }
       if (!("autofocus" in document.createElement("input"))) {
         $("#sidebar .search_form input[name=query]").focus();
       }
index b1f9e44..f1f4581 100644 (file)
@@ -2,6 +2,16 @@
 //= require_tree ./directions_engines
 
 OSM.Directions = function (map) {
+  $(".directions_form a.directions_close").on("click", function(e) {
+    e.preventDefault();
+    var route_from = $(e.target).parent().parent().parent().find("input[name=route_from]").val();
+    if (route_from) {
+      OSM.router.route("/?query=" + encodeURIComponent(route_from) + OSM.formatHash(map));
+    } else {
+      OSM.router.route("/" + OSM.formatHash(map));
+    }
+  });
+
   var awaitingGeocode; // true if the user has requested a route, but we're waiting on a geocode result
   var awaitingRoute;   // true if we've asked the engine for a route and are waiting to hear back
   var dragging;        // true if the user is dragging a start/end point
index fb4f79e..5b6806e 100644 (file)
@@ -9,7 +9,7 @@
   </form>
 
   <form method="GET" action="<%= directions_path %>" class="directions_form">
-    <div width="100%" align="right" style="height:30px"><%= link_to tag('span', { :class => "icon close"}), root_path, { :title => t('site.search.close_directions_title') } %></div>
+    <div width="100%" align="right" style="height:30px"><%= link_to tag('span', { :class => "icon close"}), root_path, { :title => t('site.search.close_directions_title'), :class => "directions_close" } %></div>
 
     <div class="line">
       <%= image_tag "marker-green.png", :class => 'routing_marker', :id => 'marker_from', :draggable => 'true' %>