]> git.openstreetmap.org Git - nominatim-ui.git/commitdiff
add pages /deletable.html, /polygons.html
authormarc tobias <mtmail@gmx.net>
Fri, 10 Apr 2020 23:03:21 +0000 (01:03 +0200)
committermarc tobias <mtmail@gmx.net>
Fri, 10 Apr 2020 23:03:21 +0000 (01:03 +0200)
15 files changed:
build.sh
dist/assets/js/nominatim-ui.js
dist/deletable.hbs [new file with mode: 0644]
dist/deletable.html [new file with mode: 0644]
dist/details.html
dist/handlebar_helpers.js
dist/polygons.hbs [new file with mode: 0644]
dist/polygons.html [new file with mode: 0644]
dist/reverse.html
dist/search.html
src/assets/js/deletable.js [new file with mode: 0644]
src/assets/js/polygons.js [new file with mode: 0644]
src/handlebar_helpers.js
src/templates/deletable.hbs [new file with mode: 0644]
src/templates/polygons.hbs [new file with mode: 0644]

index f77b8a3ae4c5f825213ebf7e0499b175bb394d8e..84d00505c967ad41a96ae53f83eaa28cf35aa995 100755 (executable)
--- a/build.sh
+++ b/build.sh
@@ -5,7 +5,7 @@ rsync --quiet --recursive src/assets/css/ dist/assets/css/
 rsync --quiet --recursive src/assets/images/ dist/assets/images/
 
 mkdir -p dist/assets/js/
-cat src/assets/js/base.js src/assets/js/detailpage.js src/assets/js/searchpage.js > dist/assets/js/nominatim-ui.js
+cat src/assets/js/base.js src/assets/js/detailpage.js src/assets/js/searchpage.js src/assets/js/deletable.js src/assets/js/polygons.js > dist/assets/js/nominatim-ui.js
 
 rsync --quiet node_modules/jquery/dist/jquery.min.js dist/assets/js/
 rsync --quiet node_modules/leaflet/dist/leaflet.js dist/assets/js/
@@ -55,4 +55,18 @@ echo '</script>' >> dist/details.html
 echo '</body>' >> dist/details.html
 echo '</html>' >> dist/details.html
 
+cat src/layout.html | grep -v '</body>' | grep -v '</html>' | sed -e 's/BODYID/deletable-page/' > dist/deletable.html
+echo '<script id="deletable-template" type="text/x-handlebars-template">' >> dist/deletable.html
+cat src/templates/deletable.hbs >> dist/deletable.html
+echo '</script>' >> dist/deletable.html
+echo '</body>' >> dist/deletable.html
+echo '</html>' >> dist/deletable.html
+
+cat src/layout.html | grep -v '</body>' | grep -v '</html>' | sed -e 's/BODYID/polygons-page/' > dist/polygons.html
+echo '<script id="polygons-template" type="text/x-handlebars-template">' >> dist/polygons.html
+cat src/templates/polygons.hbs >> dist/polygons.html
+echo '</script>' >> dist/polygons.html
+echo '</body>' >> dist/polygons.html
+echo '</html>' >> dist/polygons.html
+
 cp src/index.html dist/
index d2136267495d3dcaa4d2f7fe2c38c4239a82eb5b..56f731f943aa5d671d523a7a29067f54bec97e1f 100644 (file)
@@ -681,3 +681,43 @@ jQuery(document).ready(function () {
     }
   }
 });
+// *********************************************************
+// DELETABLE PAGE
+// *********************************************************
+
+jQuery(document).ready(function () {
+  if (!$('#deletable-page').length) { return; }
+
+  var api_request_params = {
+    format: 'json'
+  };
+
+  fetch_from_api('deletable', api_request_params, function (aPolygons) {
+    var context = { aPolygons: aPolygons };
+
+    render_template($('main'), 'deletable-template', context);
+    update_html_title('Deletable objects');
+
+    update_data_date();
+  });
+});
+// *********************************************************
+// BROKEN POLYGON PAGE
+// *********************************************************
+
+jQuery(document).ready(function () {
+  if (!$('#polygons-page').length) { return; }
+
+  var api_request_params = {
+    format: 'json'
+  };
+
+  fetch_from_api('polygons', api_request_params, function (aPolygons) {
+    var context = { aPolygons: aPolygons };
+
+    render_template($('main'), 'polygons-template', context);
+    update_html_title('Broken polygons');
+
+    update_data_date();
+  });
+});
diff --git a/dist/deletable.hbs b/dist/deletable.hbs
new file mode 100644 (file)
index 0000000..35ab9e0
--- /dev/null
@@ -0,0 +1,39 @@
+<div class="container">
+  <div class="row">
+    <div class="col-sm-12">
+      <h1>Deletable</h1>
+
+      <p>
+          {{aPolygons.length}} objects have been deleted in OSM but are still in the Nominatim database.
+      </p>
+
+      <table class="table table-striped table-hover">
+        <thead>
+          <th>Place id</th>
+          <th>Country Code</th>
+          <th>Name</th>
+          <th>OSM id</th>
+          <th>OSM type</th>
+          <th>Class</th>
+          <th>Type</th>
+        </thead>
+        <tbody>
+          {{#each aPolygons}}
+          <tr>
+            <td>{{detailsLink this place_id}}</td>
+            <td>{{country_code}}</td>
+            <td>{{name}}</td>
+            <td>{{osmLink this}}</td>
+            <td>{{osm_type}}</td>
+            <td>{{class}}</td>
+            <td>{{type}}</td>
+          </tr>
+          {{/each}}
+        </tbody>
+      </table>
+
+
+    </div>
+  </div>
+</div
+
diff --git a/dist/deletable.html b/dist/deletable.html
new file mode 100644 (file)
index 0000000..cfa721b
--- /dev/null
@@ -0,0 +1,161 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <title>OpenStreetMap Nominatim</title>
+  <meta name="viewport" content="width=device-width, initial-scale=1">
+
+  <link rel="icon" type="image/png" href="/assets/images/favicon-194x194.png" sizes="194x194" />
+  <link rel="icon" type="image/png" href="/assets/images/favicon-16x16.png" sizes="16x16" />
+
+  <link href="assets/css/leaflet.css" rel="stylesheet" />
+  <link href="assets/css/Control.MiniMap.min.css" rel="stylesheet" />
+  <link href="assets/css/bootstrap-theme.min.css" rel="stylesheet" />
+  <link href="assets/css/bootstrap.min.css" rel="stylesheet" />
+  <link href="assets/css/common.css" rel="stylesheet" />
+  <link href="assets/css/search.css" rel="stylesheet" type="text/css" />
+  <link href="assets/css/details.css" rel="stylesheet" type="text/css" />
+</head>
+<body id="deletable-page">
+
+  <div id="error-overlay">
+    You need Javascript enabled to view this page.
+  </div>
+
+  <header class="container-fluid">
+    <div class="row">
+      <div class="col-xs-4">
+        <div class="brand">
+          <a href="/">
+            <img alt="logo" src="assets/images/osm_logo.120px.png" width="30" height="30"/>
+            <h1>Nominatim</h1>
+          </a>
+        </div>
+      </div>
+      <div id="last-updated" class="col-xs-4 text-center">
+        Data from <a id="api-request-link" href="">API request</a>
+        <br>
+        Data last updated:
+        <span id="data-date"></span>
+      </div>
+      <div class="col-xs-4 text-right">
+        <div class="btn-group">
+          <button class="dropdown-toggle btn btn-sm btn-default" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
+            About &amp; Help <span class="caret"></span>
+          </button>
+          <ul class="dropdown-menu dropdown-menu-right">
+            <li><a href="https://nominatim.org/release-docs/develop/api/Overview/" target="_blank">API Reference</a></li>
+            <li><a href="https://nominatim.org/release-docs/develop/api/Faq/" target="_blank">FAQ</a></li>
+            <li><a href="https://help.openstreetmap.org/tags/nominatim/">OpenStreetMap Help</a></li>
+            <li><a href="https://github.com/osm-search/Nominatim">Nominatim on Github</a></li>
+            <li><a href="https://github.com/osm-search/nominatim-ui">This frontend on Github</a></li>
+            <li role="separator" class="divider"></li>
+            <li><a href="#" class="" data-toggle="modal" data-target="#report-modal">Report problem with results</a></li>
+          </ul>
+        </div>
+      </div>
+    </div>
+  </header>
+
+  <div class="modal fade" id="report-modal">
+    <div class="modal-dialog">
+      <div class="modal-content">
+        <div class="modal-header">
+          <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
+          <h4 class="modal-title">Report a problem</h4>
+        </div>
+        <div class="modal-body">
+          <p>
+            Before reporting problems please read the <a target="_blank" href="https://nominatim.org/release-docs/develop/api/Overview/">user documentation</a>
+            and
+            <a target="_blank" href="https://nominatim.org/release-docs/develop/api/Faq/">FAQ</a>.
+
+            If your problem relates to the address of a particular search result please use the 'details' link 
+            to check how the address was generated before reporting a problem.
+          </p>
+          <p>
+            Use <a target="_blank" href="https://github.com/osm-search/Nominatim/issues">Nominatim issues on github</a>
+            to report problems.
+          </p>
+          <p>
+            Please ensure that you include a full description of the problem, including the search
+            query that you used, the problem with the result and, if the problem relates to missing data,
+            the osm type (node, way, relation) and id of the item that is missing.
+          </p>
+          <p>
+            Problems that contain enough detail are likely to get looked at before ones that require
+            significant research.
+          </p>
+        </div>
+        <div class="modal-footer">
+          <button type="button" class="btn btn-default" data-dismiss="modal">OK</button>
+        </div>
+      </div>
+    </div>
+  </div>
+
+  <main>
+  </main>
+
+  <footer>
+    <p class="disclaimer">
+      Addresses and postcodes are approximate
+    </p>
+    <p class="copyright">
+      &copy; <a href="https://osm.org/copyright">OpenStreetMap</a> contributors
+    </p>
+  </footer>
+
+  <script src="assets/js/jquery.min.js"></script>
+  <script src="assets/js/bootstrap.min.js"></script>
+  <script src="assets/js/leaflet.js"></script>
+  <script src="assets/js/Control.MiniMap.min.js"></script>
+  <script src="assets/js/handlebars.min.js"></script>
+  <script src="assets/js/url-search-params.js"></script>
+
+  <script src="config.js"></script>
+  <script src="handlebar_helpers.js"></script>
+
+  <script src="assets/js/nominatim-ui.js"></script>
+<script id="deletable-template" type="text/x-handlebars-template">
+<div class="container">
+  <div class="row">
+    <div class="col-sm-12">
+      <h1>Deletable</h1>
+
+      <p>
+          {{aPolygons.length}} objects have been deleted in OSM but are still in the Nominatim database.
+      </p>
+
+      <table class="table table-striped table-hover">
+        <thead>
+          <th>Place id</th>
+          <th>Country Code</th>
+          <th>Name</th>
+          <th>OSM id</th>
+          <th>OSM type</th>
+          <th>Class</th>
+          <th>Type</th>
+        </thead>
+        <tbody>
+          {{#each aPolygons}}
+          <tr>
+            <td>{{detailsLink this place_id}}</td>
+            <td>{{country_code}}</td>
+            <td>{{name}}</td>
+            <td>{{osmLink this}}</td>
+            <td>{{osm_type}}</td>
+            <td>{{class}}</td>
+            <td>{{type}}</td>
+          </tr>
+          {{/each}}
+        </tbody>
+      </table>
+
+
+    </div>
+  </div>
+</div
+
+</script>
+</body>
+</html>
index 0267b5f5d0a03929d3ca280943787fe8ccd0b8c4..3ca103a90cdc00059e3f15eae91d391bc59c82f3 100644 (file)
@@ -46,7 +46,8 @@
             <li><a href="https://nominatim.org/release-docs/develop/api/Overview/" target="_blank">API Reference</a></li>
             <li><a href="https://nominatim.org/release-docs/develop/api/Faq/" target="_blank">FAQ</a></li>
             <li><a href="https://help.openstreetmap.org/tags/nominatim/">OpenStreetMap Help</a></li>
-            <li><a href="https://github.com/openstreetmap/Nominatim">Nominatim on Github</a></li>
+            <li><a href="https://github.com/osm-search/Nominatim">Nominatim on Github</a></li>
+            <li><a href="https://github.com/osm-search/nominatim-ui">This frontend on Github</a></li>
             <li role="separator" class="divider"></li>
             <li><a href="#" class="" data-toggle="modal" data-target="#report-modal">Report problem with results</a></li>
           </ul>
@@ -72,7 +73,7 @@
             to check how the address was generated before reporting a problem.
           </p>
           <p>
-            Use <a target="_blank" href="https://github.com/openstreetmap/Nominatim/issues">Nominatim issues on github</a>
+            Use <a target="_blank" href="https://github.com/osm-search/Nominatim/issues">Nominatim issues on github</a>
             to report problems.
           </p>
           <p>
index 7af3384df441c4818086e8d270bf6c2555ef7aa4..de8778b4784d87e4f4713ac10cc59ff5e9836963 100644 (file)
@@ -14,6 +14,9 @@ function formatOSMType(sType, bExcludeExternal) {
 }
 
 Handlebars.registerHelper({
+  formatOSMType: function (sType, bExcludeExternal) {
+    return formatOSMType(sType, bExcludeExternal);
+  },
   shortOSMType: function (sType) {
     if (sType === 'node') return 'N';
     if (sType === 'way') return 'W';
@@ -131,7 +134,7 @@ Handlebars.registerHelper({
   },
   formatSearchRank: function (iRank) {
     // same as
-    // https://github.com/openstreetmap/Nominatim/blob/master/sql/functions.sql
+    // https://github.com/osm-search/Nominatim/blob/master/sql/functions.sql
     // get_searchrank_label()
 
     if (iRank < 2) return 'continent';
diff --git a/dist/polygons.hbs b/dist/polygons.hbs
new file mode 100644 (file)
index 0000000..9e74ef6
--- /dev/null
@@ -0,0 +1,45 @@
+<div class="container">
+  <div class="row">
+    <div class="col-sm-12">
+      <h1>Broken polygons</h1>
+
+      <p>
+          Total number of broken polygons: {{aPolygons.length}}.
+      </p>
+
+      <table class="table table-striped table-hover">
+        <thead>
+          <th>OSM type</th>
+          <th>OSM id</th>
+          <th>Class</th>
+          <th>Type</th>
+          <th>Name</th>
+          <th>Country Code</th>
+          <th>Error message</th>
+          <th>Updated</th>
+          <th>&nbsp;</th>
+        </thead>
+        <tbody>
+          {{#each aPolygons}}
+          <tr>
+            <td>{{osm_type}}</td>
+            <td>{{osmLink this}}</td>
+            <td>{{class}}</td>
+            <td>{{type}}</td>
+            <td>{{name}}</td>
+            <td>{{country_code}}</td>
+            <td>{{errormessage}}</td>
+            <td>{{updated}}</td>
+            <td>
+              <a href="http://localhost:8111/import?url=https://www.openstreetmap.org/api/0.6/{{formatOSMType osm_type}}/{{osm_id}}/full" target="josm">josm</a>
+            </td>
+          </tr>
+          {{/each}}
+        </tbody>
+      </table>
+
+
+    </div>
+  </div>
+</div
+
diff --git a/dist/polygons.html b/dist/polygons.html
new file mode 100644 (file)
index 0000000..d14cff8
--- /dev/null
@@ -0,0 +1,167 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <title>OpenStreetMap Nominatim</title>
+  <meta name="viewport" content="width=device-width, initial-scale=1">
+
+  <link rel="icon" type="image/png" href="/assets/images/favicon-194x194.png" sizes="194x194" />
+  <link rel="icon" type="image/png" href="/assets/images/favicon-16x16.png" sizes="16x16" />
+
+  <link href="assets/css/leaflet.css" rel="stylesheet" />
+  <link href="assets/css/Control.MiniMap.min.css" rel="stylesheet" />
+  <link href="assets/css/bootstrap-theme.min.css" rel="stylesheet" />
+  <link href="assets/css/bootstrap.min.css" rel="stylesheet" />
+  <link href="assets/css/common.css" rel="stylesheet" />
+  <link href="assets/css/search.css" rel="stylesheet" type="text/css" />
+  <link href="assets/css/details.css" rel="stylesheet" type="text/css" />
+</head>
+<body id="polygons-page">
+
+  <div id="error-overlay">
+    You need Javascript enabled to view this page.
+  </div>
+
+  <header class="container-fluid">
+    <div class="row">
+      <div class="col-xs-4">
+        <div class="brand">
+          <a href="/">
+            <img alt="logo" src="assets/images/osm_logo.120px.png" width="30" height="30"/>
+            <h1>Nominatim</h1>
+          </a>
+        </div>
+      </div>
+      <div id="last-updated" class="col-xs-4 text-center">
+        Data from <a id="api-request-link" href="">API request</a>
+        <br>
+        Data last updated:
+        <span id="data-date"></span>
+      </div>
+      <div class="col-xs-4 text-right">
+        <div class="btn-group">
+          <button class="dropdown-toggle btn btn-sm btn-default" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
+            About &amp; Help <span class="caret"></span>
+          </button>
+          <ul class="dropdown-menu dropdown-menu-right">
+            <li><a href="https://nominatim.org/release-docs/develop/api/Overview/" target="_blank">API Reference</a></li>
+            <li><a href="https://nominatim.org/release-docs/develop/api/Faq/" target="_blank">FAQ</a></li>
+            <li><a href="https://help.openstreetmap.org/tags/nominatim/">OpenStreetMap Help</a></li>
+            <li><a href="https://github.com/osm-search/Nominatim">Nominatim on Github</a></li>
+            <li><a href="https://github.com/osm-search/nominatim-ui">This frontend on Github</a></li>
+            <li role="separator" class="divider"></li>
+            <li><a href="#" class="" data-toggle="modal" data-target="#report-modal">Report problem with results</a></li>
+          </ul>
+        </div>
+      </div>
+    </div>
+  </header>
+
+  <div class="modal fade" id="report-modal">
+    <div class="modal-dialog">
+      <div class="modal-content">
+        <div class="modal-header">
+          <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
+          <h4 class="modal-title">Report a problem</h4>
+        </div>
+        <div class="modal-body">
+          <p>
+            Before reporting problems please read the <a target="_blank" href="https://nominatim.org/release-docs/develop/api/Overview/">user documentation</a>
+            and
+            <a target="_blank" href="https://nominatim.org/release-docs/develop/api/Faq/">FAQ</a>.
+
+            If your problem relates to the address of a particular search result please use the 'details' link 
+            to check how the address was generated before reporting a problem.
+          </p>
+          <p>
+            Use <a target="_blank" href="https://github.com/osm-search/Nominatim/issues">Nominatim issues on github</a>
+            to report problems.
+          </p>
+          <p>
+            Please ensure that you include a full description of the problem, including the search
+            query that you used, the problem with the result and, if the problem relates to missing data,
+            the osm type (node, way, relation) and id of the item that is missing.
+          </p>
+          <p>
+            Problems that contain enough detail are likely to get looked at before ones that require
+            significant research.
+          </p>
+        </div>
+        <div class="modal-footer">
+          <button type="button" class="btn btn-default" data-dismiss="modal">OK</button>
+        </div>
+      </div>
+    </div>
+  </div>
+
+  <main>
+  </main>
+
+  <footer>
+    <p class="disclaimer">
+      Addresses and postcodes are approximate
+    </p>
+    <p class="copyright">
+      &copy; <a href="https://osm.org/copyright">OpenStreetMap</a> contributors
+    </p>
+  </footer>
+
+  <script src="assets/js/jquery.min.js"></script>
+  <script src="assets/js/bootstrap.min.js"></script>
+  <script src="assets/js/leaflet.js"></script>
+  <script src="assets/js/Control.MiniMap.min.js"></script>
+  <script src="assets/js/handlebars.min.js"></script>
+  <script src="assets/js/url-search-params.js"></script>
+
+  <script src="config.js"></script>
+  <script src="handlebar_helpers.js"></script>
+
+  <script src="assets/js/nominatim-ui.js"></script>
+<script id="polygons-template" type="text/x-handlebars-template">
+<div class="container">
+  <div class="row">
+    <div class="col-sm-12">
+      <h1>Broken polygons</h1>
+
+      <p>
+          Total number of broken polygons: {{aPolygons.length}}.
+      </p>
+
+      <table class="table table-striped table-hover">
+        <thead>
+          <th>OSM type</th>
+          <th>OSM id</th>
+          <th>Class</th>
+          <th>Type</th>
+          <th>Name</th>
+          <th>Country Code</th>
+          <th>Error message</th>
+          <th>Updated</th>
+          <th>&nbsp;</th>
+        </thead>
+        <tbody>
+          {{#each aPolygons}}
+          <tr>
+            <td>{{osm_type}}</td>
+            <td>{{osmLink this}}</td>
+            <td>{{class}}</td>
+            <td>{{type}}</td>
+            <td>{{name}}</td>
+            <td>{{country_code}}</td>
+            <td>{{errormessage}}</td>
+            <td>{{updated}}</td>
+            <td>
+              <a href="http://localhost:8111/import?url=https://www.openstreetmap.org/api/0.6/{{formatOSMType osm_type}}/{{osm_id}}/full" target="josm">josm</a>
+            </td>
+          </tr>
+          {{/each}}
+        </tbody>
+      </table>
+
+
+    </div>
+  </div>
+</div
+
+</script>
+</body>
+</html>
index 390a812a9154548fd5184d2c602753e4dded0d29..f19e0514e64c29cd67ca1f55bd46e226c54396a8 100644 (file)
@@ -46,7 +46,8 @@
             <li><a href="https://nominatim.org/release-docs/develop/api/Overview/" target="_blank">API Reference</a></li>
             <li><a href="https://nominatim.org/release-docs/develop/api/Faq/" target="_blank">FAQ</a></li>
             <li><a href="https://help.openstreetmap.org/tags/nominatim/">OpenStreetMap Help</a></li>
-            <li><a href="https://github.com/openstreetmap/Nominatim">Nominatim on Github</a></li>
+            <li><a href="https://github.com/osm-search/Nominatim">Nominatim on Github</a></li>
+            <li><a href="https://github.com/osm-search/nominatim-ui">This frontend on Github</a></li>
             <li role="separator" class="divider"></li>
             <li><a href="#" class="" data-toggle="modal" data-target="#report-modal">Report problem with results</a></li>
           </ul>
@@ -72,7 +73,7 @@
             to check how the address was generated before reporting a problem.
           </p>
           <p>
-            Use <a target="_blank" href="https://github.com/openstreetmap/Nominatim/issues">Nominatim issues on github</a>
+            Use <a target="_blank" href="https://github.com/osm-search/Nominatim/issues">Nominatim issues on github</a>
             to report problems.
           </p>
           <p>
index 1e2fab82b003c97f3f474a1ce80816ddb4da305b..f0282d05f5324218d18bf836c3de2d499a7683a9 100644 (file)
@@ -46,7 +46,8 @@
             <li><a href="https://nominatim.org/release-docs/develop/api/Overview/" target="_blank">API Reference</a></li>
             <li><a href="https://nominatim.org/release-docs/develop/api/Faq/" target="_blank">FAQ</a></li>
             <li><a href="https://help.openstreetmap.org/tags/nominatim/">OpenStreetMap Help</a></li>
-            <li><a href="https://github.com/openstreetmap/Nominatim">Nominatim on Github</a></li>
+            <li><a href="https://github.com/osm-search/Nominatim">Nominatim on Github</a></li>
+            <li><a href="https://github.com/osm-search/nominatim-ui">This frontend on Github</a></li>
             <li role="separator" class="divider"></li>
             <li><a href="#" class="" data-toggle="modal" data-target="#report-modal">Report problem with results</a></li>
           </ul>
@@ -72,7 +73,7 @@
             to check how the address was generated before reporting a problem.
           </p>
           <p>
-            Use <a target="_blank" href="https://github.com/openstreetmap/Nominatim/issues">Nominatim issues on github</a>
+            Use <a target="_blank" href="https://github.com/osm-search/Nominatim/issues">Nominatim issues on github</a>
             to report problems.
           </p>
           <p>
diff --git a/src/assets/js/deletable.js b/src/assets/js/deletable.js
new file mode 100644 (file)
index 0000000..308b70c
--- /dev/null
@@ -0,0 +1,20 @@
+// *********************************************************
+// DELETABLE PAGE
+// *********************************************************
+
+jQuery(document).ready(function () {
+  if (!$('#deletable-page').length) { return; }
+
+  var api_request_params = {
+    format: 'json'
+  };
+
+  fetch_from_api('deletable', api_request_params, function (aPolygons) {
+    var context = { aPolygons: aPolygons };
+
+    render_template($('main'), 'deletable-template', context);
+    update_html_title('Deletable objects');
+
+    update_data_date();
+  });
+});
diff --git a/src/assets/js/polygons.js b/src/assets/js/polygons.js
new file mode 100644 (file)
index 0000000..3ccaf11
--- /dev/null
@@ -0,0 +1,20 @@
+// *********************************************************
+// BROKEN POLYGON PAGE
+// *********************************************************
+
+jQuery(document).ready(function () {
+  if (!$('#polygons-page').length) { return; }
+
+  var api_request_params = {
+    format: 'json'
+  };
+
+  fetch_from_api('polygons', api_request_params, function (aPolygons) {
+    var context = { aPolygons: aPolygons };
+
+    render_template($('main'), 'polygons-template', context);
+    update_html_title('Broken polygons');
+
+    update_data_date();
+  });
+});
index c7dca541ede8d196945b21d517b854cc84bf39c8..de8778b4784d87e4f4713ac10cc59ff5e9836963 100644 (file)
@@ -14,6 +14,9 @@ function formatOSMType(sType, bExcludeExternal) {
 }
 
 Handlebars.registerHelper({
+  formatOSMType: function (sType, bExcludeExternal) {
+    return formatOSMType(sType, bExcludeExternal);
+  },
   shortOSMType: function (sType) {
     if (sType === 'node') return 'N';
     if (sType === 'way') return 'W';
diff --git a/src/templates/deletable.hbs b/src/templates/deletable.hbs
new file mode 100644 (file)
index 0000000..35ab9e0
--- /dev/null
@@ -0,0 +1,39 @@
+<div class="container">
+  <div class="row">
+    <div class="col-sm-12">
+      <h1>Deletable</h1>
+
+      <p>
+          {{aPolygons.length}} objects have been deleted in OSM but are still in the Nominatim database.
+      </p>
+
+      <table class="table table-striped table-hover">
+        <thead>
+          <th>Place id</th>
+          <th>Country Code</th>
+          <th>Name</th>
+          <th>OSM id</th>
+          <th>OSM type</th>
+          <th>Class</th>
+          <th>Type</th>
+        </thead>
+        <tbody>
+          {{#each aPolygons}}
+          <tr>
+            <td>{{detailsLink this place_id}}</td>
+            <td>{{country_code}}</td>
+            <td>{{name}}</td>
+            <td>{{osmLink this}}</td>
+            <td>{{osm_type}}</td>
+            <td>{{class}}</td>
+            <td>{{type}}</td>
+          </tr>
+          {{/each}}
+        </tbody>
+      </table>
+
+
+    </div>
+  </div>
+</div
+
diff --git a/src/templates/polygons.hbs b/src/templates/polygons.hbs
new file mode 100644 (file)
index 0000000..9e74ef6
--- /dev/null
@@ -0,0 +1,45 @@
+<div class="container">
+  <div class="row">
+    <div class="col-sm-12">
+      <h1>Broken polygons</h1>
+
+      <p>
+          Total number of broken polygons: {{aPolygons.length}}.
+      </p>
+
+      <table class="table table-striped table-hover">
+        <thead>
+          <th>OSM type</th>
+          <th>OSM id</th>
+          <th>Class</th>
+          <th>Type</th>
+          <th>Name</th>
+          <th>Country Code</th>
+          <th>Error message</th>
+          <th>Updated</th>
+          <th>&nbsp;</th>
+        </thead>
+        <tbody>
+          {{#each aPolygons}}
+          <tr>
+            <td>{{osm_type}}</td>
+            <td>{{osmLink this}}</td>
+            <td>{{class}}</td>
+            <td>{{type}}</td>
+            <td>{{name}}</td>
+            <td>{{country_code}}</td>
+            <td>{{errormessage}}</td>
+            <td>{{updated}}</td>
+            <td>
+              <a href="http://localhost:8111/import?url=https://www.openstreetmap.org/api/0.6/{{formatOSMType osm_type}}/{{osm_id}}/full" target="josm">josm</a>
+            </td>
+          </tr>
+          {{/each}}
+        </tbody>
+      </table>
+
+
+    </div>
+  </div>
+</div
+