openstreetmap-website/app/views/site/_search.html.erb
Tom Hughes 4ebc48618e Get the location for "Where Am I?" from the view tab's link instead of
by asking the map so that it works in edit mode as well. Closes #2383.
2010-02-28 16:04:30 +00:00

59 lines
2.1 KiB
Text

<script type="text/javascript">
<!--
function startSearch() {
updateSidebar("<%= t 'site.sidebar.search_results' %>", "");
}
function describeLocation() {
var args = getArgs($("viewanchor").href);
<%= remote_function(:loading => "startSearch()",
:url => { :controller => :geocoder, :action => :description },
: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()",
:url => { :controller => :geocoder, :action => :search, :query => h(params[:query]) }) %>
<% end %>
// -->
</script>
<% content_for "optionals" do %>
<div class="optionalbox">
<span class="oboxheader"><%= t 'site.search.search' %></span>
<span class="whereami"><a href="javascript:describeLocation()" title="<%= t 'site.search.where_am_i_title' %>"><%= t 'site.search.where_am_i' %></a></span>
<div class="search_form">
<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]) %>
<% 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>
</div>
<p class="search_help">
<%= t 'site.search.search_help' %>
</p>
</div>
<% end %>