]> git.openstreetmap.org Git - nominatim.git/blobdiff - website/deletable.php
Add JSON output for /deletable.php and /polygons.php
[nominatim.git] / website / deletable.php
old mode 100755 (executable)
new mode 100644 (file)
index 6521e77..2d7ee7e
 <?php
-       require_once(dirname(dirname(__FILE__)).'/settings/settings.php');
-       require_once(CONST_BasePath.'/lib/init-website.php');
-       require_once(CONST_BasePath.'/lib/log.php');
-       require_once(CONST_BasePath.'/lib/output.php');
 
-       $sOutputFormat = 'html';
-       ini_set('memory_limit', '200M');
+require_once(CONST_BasePath.'/lib/init-website.php');
+require_once(CONST_BasePath.'/lib/log.php');
+require_once(CONST_BasePath.'/lib/output.php');
+ini_set('memory_limit', '200M');
 
-       $oDB =& getDB();
+$oParams = new Nominatim\ParameterParser();
+$sOutputFormat = $oParams->getSet('format', array('html', 'json'), 'html');
+set_exception_handler_by_format($sOutputFormat);
 
-       $sSQL = "select placex.place_id, calculated_country_code as country_code, name->'name' as name, i.* from placex, import_polygon_delete i where placex.osm_id = i.osm_id and placex.osm_type = i.osm_type and placex.class = i.class and placex.type = i.type";
-       $aPolygons = $oDB->getAll($sSQL);
-       if (PEAR::isError($aPolygons))
-       {
-               failInternalError("Could not get list of deleted OSM elements.", $sSQL, $aPolygons);
-       }
+$oDB = new Nominatim\DB();
+$oDB->connect();
 
-//var_dump($aPolygons);
-?>
-<!DOCTYPE html>
-<html>
-<head>
-       <meta charset="utf-8"/>
-       <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
-       
-       <title>Nominatim Deleted Data</title>
-       
-       <meta name="description" content="List of OSM data that has been deleted" lang="en-US" />
+$sSQL = 'select placex.place_id, country_code,';
+$sSQL .= " name->'name' as name, i.* from placex, import_polygon_delete i";
+$sSQL .= ' where placex.osm_id = i.osm_id and placex.osm_type = i.osm_type';
+$sSQL .= ' and placex.class = i.class and placex.type = i.type';
+$aPolygons = $oDB->getAll($sSQL, null, 'Could not get list of deleted OSM elements.');
 
-</head>
-
-<body>
-<style type="text/css">
-table {
-       border-width: 1px;
-       border-spacing: 0px;
-       border-style: solid;
-       border-color: gray;
-       border-collapse: collapse;
-       background-color: white;
-       margin: 10px;
-}
-table th {
-       border-width: 1px;
-       padding: 2px;
-       border-style: inset;
-       border-color: gray;
-       border-left-color: #ddd;
-       border-right-color: #ddd;
-       background-color: #eee;
-       -moz-border-radius: 0px 0px 0px 0px;
-}
-table td {
-       border-width: 1px;
-       padding: 2px;
-       border-style: inset;
-       border-color: gray;
-       border-left-color: #ddd;
-       border-right-color: #ddd;
-       background-color: white;
-       -moz-border-radius: 0px 0px 0px 0px;
+if (CONST_Debug) {
+    var_dump($aPolygons);
+    exit;
 }
-</style>
 
-<p>Objects in this table have been deleted in OSM but are still in the Nominatim database.</p>
-
-<table>
-<?php
-       if (!$aPolygons) exit;
-       echo "<tr>";
-//var_dump($aPolygons[0]);
-       foreach($aPolygons[0] as $sCol => $sVal)
-       {
-               echo "<th>".$sCol."</th>";
-       }
-       echo "</tr>";
-       foreach($aPolygons as $aRow)
-       {
-               echo "<tr>";
-               foreach($aRow as $sCol => $sVal)
-               {
-                       switch($sCol)
-                       {
-                               case 'osm_id':
-                                       echo '<td>'.osmLink($aRow).'</td>';
-                                       break;
-                               case 'place_id':
-                                       echo '<td>'.detailsLink($aRow).'</td>';
-                                       break;
-                               default:
-                                       echo "<td>".($sVal?$sVal:'&nbsp;')."</td>";
-                                       break;
-                       }
-               }
-               echo "</tr>";
-       }
-?>
-</table>
-
-
-
-</body>
-</html>
+if ($sOutputFormat == 'json') {
+    echo javascript_renderData($aPolygons);
+} else {
+    include(CONST_BasePath.'/lib/template/deletable-html.php');
+}