]> git.openstreetmap.org Git - nominatim-ui.git/blob - dist/search.html
Merge pull request #12 from mtmail/generate-mapicon-url
[nominatim-ui.git] / dist / search.html
1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4   <meta content="text/html;charset=utf-8" http-equiv="Content-Type">
5   <title>OpenStreetMap Nominatim</title>
6   <meta name="viewport" content="width=device-width, initial-scale=1">
7
8   <link rel="icon" type="image/png" href="/assets/images/favicon-194x194.png" sizes="194x194" />
9   <link rel="icon" type="image/png" href="/assets/images/favicon-16x16.png" sizes="16x16" />
10
11   <link href="assets/css/leaflet.css" rel="stylesheet" />
12   <link href="assets/css/Control.MiniMap.min.css" rel="stylesheet" />
13   <link href="assets/css/bootstrap.min.css" rel="stylesheet" />
14   <link href="assets/css/common.css" rel="stylesheet" />
15   <link href="assets/css/search.css" rel="stylesheet" type="text/css" />
16   <link href="assets/css/details.css" rel="stylesheet" type="text/css" />
17 </head>
18 <body id="search-page">
19
20   <div id="error-overlay">
21     You need Javascript enabled to view this page.
22   </div>
23
24   <header class="container-fluid">
25     <div class="row">
26       <div class="col-4">
27         <div class="brand">
28           <a href="/">
29             <img alt="logo" src="assets/images/osm_logo.120px.png" width="30" height="30"/>
30             <h1>Nominatim</h1>
31           </a>
32         </div>
33       </div>
34       <div id="last-updated" class="col-4 text-center">
35         Data from <a id="api-request-link" href="">API request</a>
36         <br>
37         Data last updated:
38         <span id="data-date"></span>
39       </div>
40       <div class="col-4 text-right">
41         <div class="dropdown">
42           <button class="dropdown-toggle btn btn-sm btn-outline-secondary" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
43             About &amp; Help
44           </button>
45           <div class="dropdown-menu dropdown-menu-right">
46             <a class="dropdown-item" href="https://nominatim.org/release-docs/develop/api/Overview/" target="_blank">API Reference</a>
47             <a class="dropdown-item" href="https://nominatim.org/release-docs/develop/api/Faq/" target="_blank">FAQ</a>
48             <a class="dropdown-item" href="https://help.openstreetmap.org/tags/nominatim/">OpenStreetMap Help</a>
49             <a class="dropdown-item" href="https://github.com/osm-search/Nominatim">Nominatim on Github</a>
50             <a class="dropdown-item" href="https://github.com/osm-search/nominatim-ui">This frontend on Github</a>
51             <div class="dropdown-divider"></div>
52             <a class="dropdown-item" href="#" data-toggle="modal" data-target="#report-modal">Report problem with results</a>
53           </div>
54         </div>
55       </div>
56     </div>
57   </header>
58
59   <div class="modal fade" id="report-modal">
60     <div class="modal-dialog">
61       <div class="modal-content">
62         <div class="modal-header">
63           <h4 class="modal-title">Report a problem</h4>
64           <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
65         </div>
66         <div class="modal-body">
67           <p>
68             Before reporting problems please read the <a target="_blank" href="https://nominatim.org/release-docs/develop/api/Overview/">user documentation</a>
69             and
70             <a target="_blank" href="https://nominatim.org/release-docs/develop/api/Faq/">FAQ</a>.
71
72             If your problem relates to the address of a particular search result please use the 'details' link 
73             to check how the address was generated before reporting a problem.
74           </p>
75           <p>
76             Use <a target="_blank" href="https://github.com/osm-search/Nominatim/issues">Nominatim issues on github</a>
77             to report problems.
78           </p>
79           <p>
80             Please ensure that you include a full description of the problem, including the search
81             query that you used, the problem with the result and, if the problem relates to missing data,
82             the osm type (node, way, relation) and id of the item that is missing.
83           </p>
84           <p>
85             Problems that contain enough detail are likely to get looked at before ones that require
86             significant research.
87           </p>
88         </div>
89         <div class="modal-footer">
90           <button type="button" class="btn btn-outline-secondary" data-dismiss="modal">OK</button>
91         </div>
92       </div>
93     </div>
94   </div>
95
96   <main>
97   </main>
98
99   <footer>
100     <p class="disclaimer">
101       Addresses and postcodes are approximate
102     </p>
103     <p class="copyright">
104       &copy; <a href="https://osm.org/copyright">OpenStreetMap</a> contributors
105     </p>
106   </footer>
107
108   <script src="assets/js/jquery.min.js"></script>
109   <script src="assets/js/bootstrap.bundle.min.js"></script>
110   <script src="assets/js/leaflet.js"></script>
111   <script src="assets/js/Control.MiniMap.min.js"></script>
112   <script src="assets/js/handlebars.min.js"></script>
113   <script src="assets/js/url-search-params.js"></script>
114
115   <script src="config.js"></script>
116   <script src="handlebar_helpers.js"></script>
117
118   <script src="assets/js/nominatim-ui.js"></script>
119 <script id="searchpage-template" type="text/x-handlebars-template">
120 {{#*inline "partial_one_result"}}
121   <div class="result" data-position="{{iResNum}}">
122     {{formatMapIcon aResult}}
123
124     <span class="name">{{aResult.display_name}}</span>
125     <span class="type">({{formatLabel aResult}})</span>
126     <p class="coords">{{aResult.lat}},{{aResult.lon}}</p>  
127
128     <a class="details btn btn-outline-secondary btn-sm"
129        href="details.html?osmtype={{shortOSMType aResult.osm_type}}&osmid={{aResult.osm_id}}">details</a>
130   </div>
131 {{/inline}}
132
133 <div class="top-bar" id="structured-query-selector">
134   <div class="search-type-link">
135     <a id="switch-to-reverse" href="/reverse.html">reverse search</a>
136   </div>
137   <div class="form-check form-check-inline">
138     <input class="form-check-input" type="radio" name="query-selector"
139            id="simple" value="simple" {{#unless hStructured}}checked="checked"{{/unless}}>
140     <label class="form-check-label" for="simple">simple</label>
141   </div>
142   <div class="form-check form-check-inline">
143     <input class="form-check-input" type="radio" name="query-selector"
144             id="structured" value="structured" {{#if hStructured}}checked="checked"{{/if}}>
145     <label class="form-check-label" for="structured">structured</label>
146   </div>
147
148   <form class="form-inline" role="search" accept-charset="UTF-8" action="">
149     <div class="form-group-simple {{#if hStructured}}hidden{{/if}}">
150       <input id="q"
151              name="q"
152              type="text"
153              class="form-control form-control-sm"
154              placeholder="Search"
155              value="{{sQuery}}" />
156     </div>
157     <div class="form-group-structured {{#unless hStructured}}hidden{{/unless}}">
158       <div class="form-inline">
159         <input name="street" type="text" class="form-control form-control-sm mr-1"
160                placeholder="House number/Street"
161                value="{{hStructured.street}}" />
162         <input name="city" type="text" class="form-control form-control-sm mr-1"
163                placeholder="City"
164                value="{{hStructured.city}}" />
165         <input id="county" name="county" type="text" class="form-control form-control-sm mr-1"
166                placeholder="County"
167                value="{{hStructured.county}}" />
168         <input name="state" type="text" class="form-control form-control-sm mr-1"
169                placeholder="State"
170                value="{{hStructured.state}}" />
171         <input name="country" type="text" class="form-control form-control-sm mr-1"
172                placeholder="Country"
173                value="{{hStructured.country}}" />
174         <input name="postalcode" type="text" class="form-control form-control-sm mr-1"
175                placeholder="Postal Code"
176                value="{{hStructured.postalcode}}" />
177       </div>
178     </div>
179     <div class="form-group search-button-group">
180             <button type="submit" class="btn btn-primary btn-sm mx-1">Search</button>
181       {{#if env.Search_AreaPolygons}}
182         <input type="hidden" value="1" name="polygon_geojson" />
183       {{/if}}
184       <input type="hidden" name="viewbox" value="{{sViewBox}}" />
185       <div class="form-check form-check-inline">
186         <input type="checkbox" class="form-check-input"
187                id="use_viewbox" {{#if sViewBox}}checked="checked"{{/if}}>
188         <label class="form-check-label" for="use_viewbox">apply viewbox</label>
189       </div>
190     </div>
191   </form>
192 </div>
193
194 <div id="content">
195
196   {{#if sQuery}}
197     <div id="searchresults" class="sidebar">
198       {{#each aSearchResults as |aResult|}}
199         {{>partial_one_result iResNum=@index aResult=aResult env=env}}
200       {{/each}}
201
202       {{#if aSearchResults}}
203         {{#if sMoreURL}}
204           <div class="more">
205             <a class="btn btn-primary" href="{{sMoreURL}}">
206               Search for more results
207             </a>
208           </div>
209         {{/if}}
210       {{else}}
211         <div class="noresults">No search results found</div>
212       {{/if}}
213     </div>
214
215   {{else}}
216
217     <div id="intro" class="sidebar">
218       <h2>Welcome to Nominatim</h2>
219
220       <p>
221         Nominatim is a search engine for
222         <a href="https://www.openstreetmap.org">OpenStreetMap</a> data. This
223         is the debugging interface. You may search for a name or address
224         (forward search) or look up data by its geographic coordinate (reverse
225         search). Each result comes with a link to a details page where you
226         can inspect what data about the object is saved in the database and
227         investigate how the address of the object has been computed.
228       </p>
229
230       For more information visit the
231       <a href="https://nominatim.org">Nominatim home page</a>.
232     </div>
233
234   {{/if}}
235
236   <div id="map-wrapper">
237     <div id="map-position">
238       <div id="map-position-inner"></div>
239       <div id="map-position-close"><a href="#">hide</a></div>
240     </div>
241     <div id="map"></div>
242   </div>
243 </div>
244 </script>
245 </body>
246 </html>