]> git.openstreetmap.org Git - nominatim.git/blobdiff - lib/template/search-json.php
first draft
[nominatim.git] / lib / template / search-json.php
index b997f6d97b1fcb01f7ed12b74f8f3468b5d8377a..4b896d08a6de136207a8e878ff8c2ac73f7e711d 100644 (file)
@@ -1,11 +1,10 @@
 <?php
-header('content-type: application/json; charset=UTF-8');
 
 $aFilteredPlaces = array();
 foreach ($aSearchResults as $iResNum => $aPointDetails) {
     $aPlace = array(
                'place_id'=>$aPointDetails['place_id'],
-               'licence'=>'Data © OpenStreetMap contributors, ODbL 1.0. https://www.openstreetmap.org/copyright',
+               'licence'=>'Data © OpenStreetMap contributors, ODbL 1.0. https://osm.org/copyright',
               );
     
     $sOSMType = formatOSMType($aPointDetails['osm_type']);
@@ -16,10 +15,6 @@ foreach ($aSearchResults as $iResNum => $aPointDetails) {
 
     if (isset($aPointDetails['aBoundingBox'])) {
         $aPlace['boundingbox'] = $aPointDetails['aBoundingBox'];
-
-        if (isset($aPointDetails['aPolyPoints'])) {
-            $aPlace['polygonpoints'] = $aPointDetails['aPolyPoints'];
-        }
     }
 
     if (isset($aPointDetails['zoom'])) {
@@ -28,9 +23,15 @@ foreach ($aSearchResults as $iResNum => $aPointDetails) {
 
     $aPlace['lat'] = $aPointDetails['lat'];
     $aPlace['lon'] = $aPointDetails['lon'];
+
     $aPlace['display_name'] = $aPointDetails['name'];
 
-    $aPlace['class'] = $aPointDetails['class'];
+    if ($sOutputFormat == 'jsonv2' || $sOutputFormat == 'geojson') {
+        $aPlace['place_rank'] = $aPointDetails['rank_search'];
+        $aPlace['category'] = $aPointDetails['class'];
+    } else {
+        $aPlace['class'] = $aPointDetails['class'];
+    }
     $aPlace['type'] = $aPointDetails['type'];
 
     $aPlace['importance'] = $aPointDetails['importance'];
@@ -40,7 +41,7 @@ foreach ($aSearchResults as $iResNum => $aPointDetails) {
     }
 
     if (isset($aPointDetails['address'])) {
-        $aPlace['address'] = $aPointDetails['address'];
+        $aPlace['address'] = $aPointDetails['address']->getAddressNames();
     }
 
     if (isset($aPointDetails['asgeojson'])) {