]> git.openstreetmap.org Git - rails.git/blobdiff - app/views/site/_search.html.erb
Move sidebar JS to application bundle
[rails.git] / app / views / site / _search.html.erb
index f487e8f4a2d2a407bb7d7c285bfa1400c7017aca..9adc3dafe09c588f3a435c521e9c4d79e2dabeb2 100644 (file)
@@ -1,59 +1,59 @@
 <script type="text/javascript">
 <!--
 <script type="text/javascript">
 <!--
-  function startSearch() {
-    updateSidebar("<%= t 'site.sidebar.search_results' %>", "");
-  }
-
   function describeLocation() {
   function describeLocation() {
-    var args = getArgs($("viewanchor").href);
+    var args = getArgs($("#viewanchor").attr("href"));
 
 
-    <%= remote_function(:loading => "startSearch()",
-                        :url => { :controller => :geocoder, :action => :description },
-                        :with => "'lat=' + args['lat'] + '&lon=' + args['lon'] + '&zoom=' + args['zoom']") %>
+    $("#sidebar_title").html("<%= t 'site.sidebar.search_results' %>");
+    $("#sidebar_content").load("<%= url_for :controller => :geocoder, :action => :description %>", {
+      lat: args["lat"],
+      lon: args["lon"],
+      zoom: args["zoom"]
+    }, openSidebar);
   }
 
   }
 
-  function setSearchViewbox() {
-    <% if params[:action] == 'index' %>
-    var extent = getMapExtent();
+  function doSearch(query) {
+    $("#sidebar_title").html("<%= t 'site.sidebar.search_results' %>");
 
 
-    $("minlon").value = extent.left;
-    $("minlat").value = extent.bottom;
-    $("maxlon").value = extent.right;
-    $("maxlat").value = extent.top;
-    <% end %>
+    <% if params[:action] == 'index' -%>
+    var extent = unproj(map.getExtent());
+
+    $("#sidebar_content").load("<%= url_for :controller => :geocoder, :action => :search %>", {
+      query: $("#query").val(),
+      minlon: extent.left,
+      minlat: extent.bottom,
+      maxlon: extent.right,
+      maxlat: extent.top
+    }, openSidebar);
+    <% else -%>
+    $("#sidebar_content").load("<%= url_for :controller => :geocoder, :action => :search %>", {
+      query: $("#query").val()
+    }, openSidebar);
+    <% end -%>
   }
 
   }
 
-  <% if params[:query] %>
-  <%= remote_function(:loading => "startSearch()",
-                      :url => { :controller => :geocoder, :action => :search, :query => h(params[:query]) }) %>
-  <% end %>
+  $(document).ready(function () {
+    $("#search_form").submit(function (event) {
+      doSearch($("#query").val());
+
+      return false;
+    });
+  });
 // -->
 </script>
 
 // -->
 </script>
 
-<% content_for "optionals" do %>
+<% content_for :optionals do %>
   <div class="optionalbox">
   <div class="optionalbox">
-    <span class="whereami"><a href="javascript:describeLocation()" title="<%= t 'site.search.where_am_i_title' %>"><%= t 'site.search.where_am_i' %></a></span>
-    <h1><%= t 'site.search.search' %></h1>
-    <div class="search_form">
+    <div class="search_container">
     <div id="search_field">
     <div id="search_field">
-    <% form_remote_tag(:before => "setSearchViewbox()",
-                       :loading => "startSearch()",
-                       :complete => "endSearch()",
-                       :url => { :controller => :geocoder, :action => :search },
-                       :html => { :method => "get", :action => url_for(:action => "index") }) do %>
-      <%= text_field_tag :query, h(params[:query]), :tabindex => "1" %>
-      <% if params[:action] == 'index' %>
-        <%= hidden_field_tag :minlon %>
-        <%= hidden_field_tag :minlat %>
-        <%= hidden_field_tag :maxlon %>
-        <%= hidden_field_tag :maxlat %>
-      <% end %>
+    <%= form_tag "#", :id => "search_form" do %>
       <%= submit_tag t('site.search.submit_text') %>
       <%= submit_tag t('site.search.submit_text') %>
+      <%= text_field_tag :query, h(params[:query]), :tabindex => "1", :placeholder => t('site.search.search') %>
     <% end %>
     </div>
     </div>
     <% end %>
     </div>
     </div>
-    <p class="search_help">
-      <%= t 'site.search.search_help' %>
+    <p class='search_help deemphasize'>
+      <%= raw(t 'site.search.search_help') %>
+      <span class="whereami"><a href="javascript:describeLocation()" title="<%= t 'site.search.where_am_i_title' %>"><%= t 'site.search.where_am_i' %></a></span>
     </p>
   </div>
 <% end %>
     </p>
   </div>
 <% end %>