]> git.openstreetmap.org Git - nominatim-ui.git/blobdiff - src/templates/searchpage.hbs
detailsURL helper which replaces detailsLink and detailsPermaLink
[nominatim-ui.git] / src / templates / searchpage.hbs
index 7f574b0d7ff0a55728a391b9e050259940fdee28..4e675be3a0239a7228b47faff64cb12d73cd9055 100644 (file)
 {{#*inline "partial_one_result"}}
-    <div class="result" data-position="{{iResNum}}">
-        {{#if aResult.icon}}
-            {{!-- <img src="{{env.Images_Base_Url}}{{aResult.icon}}" /> --}}
-            {{formatMapIcon aResult.icon}}
-        {{/if}}
+  <div class="result" data-position="{{iResNum}}">
+    {{formatMapIcon aResult}}
 
-        <span class="name">{{aResult.display_name}}</span>
-        <span class="type">({{formatLabel aResult}})</span>
-        <p class="coords">{{aResult.lat}},{{aResult.lon}}</p>  
+    <span class="name">{{aResult.display_name}}</span>
+    <span class="type">({{formatLabel aResult}})</span>
+    <p class="coords">{{aResult.lat}},{{aResult.lon}}</p>  
 
-        <a class="btn btn-default btn-xs details" href="details.html?place_id={{aResult.place_id}}">details</a>
-    </div>
+    <a class="details btn btn-outline-secondary btn-sm" href="{{detailsURL aResult}}">details</a>
+  </div>
 {{/inline}}
 
-
-<form class="form-inline" role="search" accept-charset="UTF-8" action="">
-    <div class="form-group">
-        <input id="q" name="q" type="text" class="form-control input-sm" placeholder="Search" value="{{sQuery}}">
+<div class="top-bar">
+  <ul class="nav nav-tabs">
+    <li class="nav-item">
+      <a class="nav-link {{#unless hStructured}}active{{/unless}}" data-toggle="tab" href="#simple">simple</a>
+    </li>
+    <li class="nav-item">
+      <a class="nav-link {{#if hStructured}}active{{/if}}" data-toggle="tab" href="#structured">structured</a>
+    </li>
+    <div class="search-type-link">
+      <a id="switch-to-reverse" href="/reverse.html">reverse search</a>
     </div>
-    <div class="form-group search-button-group">
-        <button type="submit" class="btn btn-primary btn-sm">Search</button>
-        {{#if env.Search_AreaPolygons}}
-            <input type="hidden" value="1" name="polygon_geojson" />
-        {{/if}}
-        <input type="hidden" name="viewbox" value="{{sViewBox}}" />
-        <div class="checkbox-inline">
-            <input type="checkbox" id="use_viewbox" {{#if sViewBox}}checked="checked"{{/if}}>
-            <label for="use_viewbox">apply viewbox</label>
+  </ul>
+  <div class="tab-content p-2">
+    <div class="tab-pane {{#unless hStructured}}active{{/unless}}" id="simple" role="tabpanel">
+      <form class="form-inline" role="search" accept-charset="UTF-8" action="">
+        <input id="q"
+               name="q"
+               type="text"
+               class="form-control form-control-sm"
+               placeholder="Search"
+               value="{{sQuery}}" />
+
+        <div class="form-group search-button-group">
+          <button type="submit" class="btn btn-primary btn-sm mx-1">Search</button>
+          <input type="hidden" name="viewbox" value="{{sViewBox}}" />
+          <div class="form-check form-check-inline">
+            <input type="checkbox" class="form-check-input"
+                   id="use_viewbox" {{#if sViewBox}}checked="checked"{{/if}}>
+            <label class="form-check-label" for="use_viewbox">apply viewbox</label>
+          </div>
         </div>
+      </form>
     </div>
-    <div class="search-type-link">
-        <a id="switch-to-reverse" href="/reverse.html">reverse search</a>
+    <div class="tab-pane {{#if hStructured}}active{{/if}}" id="structured" role="tabpanel">
+      <form class="form-inline" role="search" accept-charset="UTF-8" action="">
+        <input name="street" type="text" class="form-control form-control-sm mr-1"
+               placeholder="House number/Street"
+               value="{{hStructured.street}}" />
+        <input name="city" type="text" class="form-control form-control-sm mr-1"
+               placeholder="City"
+               value="{{hStructured.city}}" />
+        <input id="county" name="county" type="text" class="form-control form-control-sm mr-1"
+               placeholder="County"
+               value="{{hStructured.county}}" />
+        <input name="state" type="text" class="form-control form-control-sm mr-1"
+               placeholder="State"
+               value="{{hStructured.state}}" />
+        <input name="country" type="text" class="form-control form-control-sm mr-1"
+               placeholder="Country"
+               value="{{hStructured.country}}" />
+        <input name="postalcode" type="text" class="form-control form-control-sm mr-1"
+               placeholder="Postal Code"
+               value="{{hStructured.postalcode}}" />
+
+        <div class="form-group search-button-group">
+          <button type="submit" class="btn btn-primary btn-sm mx-1">Search</button>
+          <input type="hidden" name="viewbox" value="{{sViewBox}}" />
+          <div class="form-check form-check-inline">
+            <input type="checkbox" class="form-check-input"
+                   id="use_viewbox" {{#if sViewBox}}checked="checked"{{/if}}>
+            <label class="form-check-label" for="use_viewbox">apply viewbox</label>
+          </div>
+        </div>
+      </form>
     </div>
-</form>
+  </div> <!-- /tab-content -->
+</div> <!-- /top-bar -->
 
 <div id="content">
 
-    {{#if sQuery}}
-        <div id="searchresults" class="sidebar">
-            {{#each aSearchResults as |aResult|}}
-                {{>partial_one_result iResNum=@index aResult=aResult env=env}}
-            {{/each}}
+  {{#if bSearchRan}}
+    <div id="searchresults" class="sidebar">
+      {{#each aSearchResults as |aResult|}}
+        {{>partial_one_result iResNum=@index aResult=aResult env=env}}
+      {{/each}}
 
-            {{#if aSearchResults}}
-                {{#if sMoreURL}}
-                    <div class="more">
-                        <a class="btn btn-primary" href="{{sMoreURL}}">Search for more results</a>
-                    </div>
-                {{/if}}
-            {{else}}
-                <div class="noresults">No search results found</div>
-            {{/if}}
-        </div>
+      {{#if aSearchResults}}
+        {{#if sMoreURL}}
+          <div class="more">
+            <a class="btn btn-primary" href="{{sMoreURL}}">
+              Search for more results
+            </a>
+          </div>
+        {{/if}}
+      {{else}}
+        <div class="noresults">No search results found</div>
+      {{/if}}
+    </div>
 
-    {{else}}
+  {{else}}
 
-        <div id="intro" class="sidebar">
-            <h2>Welcome to Nominatim</h2>
+    <div id="intro" class="sidebar">
+      <h2>Welcome to Nominatim</h2>
 
-            <p>Nominatim is a search engine for <a href="http://www.openstreetmap.org">OpenStreetMap</a>
-            data. This is the debugging interface. You may search for a name or address(forward search) or
-            look up data by its geographic coordinate(reverse search). Each result comes with a
-            link to a details page where you can inspect what data about the object is saved in 
-            the database and investigate how the address of the object has been computed.</p>
+      <p>
+        Nominatim is a search engine for
+        <a href="https://www.openstreetmap.org">OpenStreetMap</a> data. This
+        is the debugging interface. You may search for a name or address
+        (forward search) or look up data by its geographic coordinate (reverse
+        search). Each result comes with a link to a details page where you
+        can inspect what data about the object is saved in the database and
+        investigate how the address of the object has been computed.
+      </p>
 
-            For more information visit the <a href="http://wiki.openstreetmap.org/wiki/Nominatim">Nominatim wiki page</a>.
-        </div>
+      For more information visit the
+      <a href="https://nominatim.org">Nominatim home page</a>.
+    </div>
 
-    {{/if}}
+  {{/if}}
 
-    <div id="map-wrapper">
-        <div id="map-position">
-            <div id="map-position-inner"></div>
-            <div id="map-position-close"><a href="#">hide</a></div>
-        </div>
-        <div id="map"></div>
+  <div id="map-wrapper">
+    <div id="map-position">
+      <div id="map-position-inner"></div>
+      <div id="map-position-close"><a href="#">hide</a></div>
     </div>
+    <div id="map"></div>
+  </div>
 </div>