<script type="text/javascript">
<!--
function startSearch() {
- updateSidebar("<%= t 'site.sidebar.search_results' %>", "<p class='search_results_entry'><%= t 'site.search.searching' %><\/p>");
-
- $("search_field").style.display = "none";
- $("search_active").style.display = "inline";
- }
-
- function endSearch() {
- $("search_field").style.display = "inline";
- $("search_active").style.display = "none";
+ updateSidebar("<%= t 'site.sidebar.search_results' %>", "");
}
function describeLocation() {
- var position = getPosition();
+ var args = getArgs($("viewanchor").href);
<%= remote_function(:loading => "startSearch()",
- :complete => "endSearch()",
:url => { :controller => :geocoder, :action => :description },
- :with => "'lat=' + position.lat + '&lon=' + position.lon") %>
+ :with => "'lat=' + args['lat'] + '&lon=' + args['lon'] + '&zoom=' + args['zoom']") %>
+ }
+
+ function setSearchViewbox() {
+ <% if params[:action] == 'index' %>
+ var extent = getMapExtent();
+
+ $("minlon").value = extent.left;
+ $("minlat").value = extent.bottom;
+ $("maxlon").value = extent.right;
+ $("maxlat").value = extent.top;
+ <% end %>
}
<% if params[:query] %>
<%= remote_function(:loading => "startSearch()",
- :complete => "endSearch()",
:url => { :controller => :geocoder, :action => :search, :query => h(params[:query]) }) %>
<% end %>
// -->
<% content_for "optionals" do %>
<div class="optionalbox">
- <span class="oboxheader"><%= t 'site.search.search' %></span>
- <span class="whereami"><a href="javascript:describeLocation()"><%= t 'site.search.where_am_i' %></a></span>
+ <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 id="search_field">
- <% form_remote_tag(:loading => "startSearch()",
+ <% form_remote_tag(:before => "setSearchViewbox()",
+ :loading => "startSearch()",
:complete => "endSearch()",
- :url => { :controller => :geocoder, :action => :search }) do %>
- <%= text_field_tag :query, h(params[:query]) %>
+ :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 %>
<%= submit_tag t('site.search.submit_text') %>
<% end %>
</div>
- <p id="search_active"><%= t 'site.search.searching' %></p>
</div>
<p class="search_help">
<%= t 'site.search.search_help' %>