-<div id="search_results">
- <table class="search_results_title" width="100%">
- <tr>
- <td align="left">Search Results</td>
- <td align="right"><a href="javascript:closeSearchResults()">Close</a></td>
- </tr>
- </table>
- <div id="search_results_content">
- </div>
-</div>
-
<script type="text/javascript">
<!--
- function openSearchResults() {
- $("search_results").style.display = "block";
- $("search_results_content").innerHTML = "<p class='search_results_entry'>Searching...</p>";
- <%= onopen %>
+ function startSearch() {
+ updateSidebar("Search Results", "<p class='search_results_entry'>Searching...</p>");
+
+ $("search_field").style.display = "none";
+ $("search_active").style.display = "inline";
}
- function closeSearchResults() {
- $("search_results").style.display = "none";
- <%= onclose %>
+ function endSearch() {
+ $("search_field").style.display = "inline";
+ $("search_active").style.display = "none";
+ }
+
+ function describeLocation() {
+ var position = getPosition();
+
+ <%= remote_function(:loading => "startSearch()",
+ :complete => "endSearch()",
+ :url => { :controller => :geocoder, :action => :description },
+ :with => "'lat=' + position.lat + '&lon=' + position.lon") %>
}
<% if params[:query] %>
- <%= remote_function(:update => :search_results_content,
- :loading => "openSearchResults()",
- :url => { :controller => :geocoder, :action => :search, :query => params[:query] }) %>
+ <%= remote_function(:loading => "startSearch()",
+ :complete => "endSearch()",
+ :url => { :controller => :geocoder, :action => :search, :query => h(params[:query]) }) %>
<% end %>
// -->
</script>
<% content_for "optionals" do %>
<div class="optionalbox">
<span class="oboxheader">Search</span>
- <% form_remote_tag(:update => :search_results_content,
- :loading => "openSearchResults()",
+ <span class="whereami"><a href="javascript:describeLocation()">Where am I?</a></span>
+ <div class="search_form">
+ <span id="search_field">
+ <% form_remote_tag(:loading => "startSearch()",
+ :complete => "endSearch()",
:url => { :controller => :geocoder, :action => :search }) do %>
- <%= text_field_tag :query, params[:query] %>
+ <table>
+ <tr>
+ <td><%= text_field_tag :query, h(params[:query]) %></td>
+ <td></td>
+ <td><%= submit_tag 'Go' %></td>
+ </tr>
+ </table>
<% end %>
+ </span>
+ <p id="search_active">Searching...</p>
+ </div>
<p class="search_help">
examples: 'Alkmaar', 'Regent Street, Cambridge', 'CB2 5AQ',
or 'post offices near Lünen'
- <a href="http://wiki.openstreetmap.org/index.php/Search_Help">more examples...</a>
+ <a href="http://wiki.openstreetmap.org/index.php/Search">more examples...</a>
</p>
</div>
<% end %>