mirror of
https://github.com/osm-search/Nominatim.git
synced 2026-02-16 15:47:58 +00:00
Merge branch 'geojson-output' of https://github.com/mtmail/Nominatim into mtmail-geojson-output
This commit is contained in:
@@ -11,7 +11,7 @@ ini_set('memory_limit', '200M');
|
||||
$oParams = new Nominatim\ParameterParser();
|
||||
|
||||
// Format for output
|
||||
$sOutputFormat = $oParams->getSet('format', array('xml', 'json'), 'xml');
|
||||
$sOutputFormat = $oParams->getSet('format', array('xml', 'json', 'geojson'), 'xml');
|
||||
|
||||
// Preferred language
|
||||
$aLangPrefOrder = $oParams->getPreferredLanguages();
|
||||
@@ -66,4 +66,5 @@ $bShowPolygons = '';
|
||||
$aExcludePlaceIDs = array();
|
||||
$sMoreURL = '';
|
||||
|
||||
include(CONST_BasePath.'/lib/template/search-'.$sOutputFormat.'.php');
|
||||
$sOutputTemplate = ($sOutputFormat == 'jsonv2') ? 'json' : $sOutputFormat;
|
||||
include(CONST_BasePath.'/lib/template/search-'.$sOutputTemplate.'.php');
|
||||
|
||||
@@ -12,7 +12,7 @@ ini_set('memory_limit', '200M');
|
||||
$oParams = new Nominatim\ParameterParser();
|
||||
|
||||
// Format for output
|
||||
$sOutputFormat = $oParams->getSet('format', array('html', 'xml', 'json', 'jsonv2'), 'xml');
|
||||
$sOutputFormat = $oParams->getSet('format', array('html', 'xml', 'json', 'jsonv2', 'geojson', 'geocodejson'), 'xml');
|
||||
|
||||
// Preferred language
|
||||
$aLangPrefOrder = $oParams->getPreferredLanguages();
|
||||
@@ -23,6 +23,10 @@ $hLog = logStart($oDB, 'reverse', $_SERVER['QUERY_STRING'], $aLangPrefOrder);
|
||||
|
||||
$oPlaceLookup = new Nominatim\PlaceLookup($oDB);
|
||||
$oPlaceLookup->loadParamArray($oParams);
|
||||
if ($sOutputFormat == 'geocodejson') {
|
||||
$oPlaceLookup->setAddressDetails(true);
|
||||
$oPlaceLookup->setAddressAdminLevels(true);
|
||||
}
|
||||
|
||||
$sOsmType = $oParams->getSet('osm_type', array('N', 'W', 'R'));
|
||||
$iOsmId = $oParams->getInt('osm_id', -1);
|
||||
@@ -77,7 +81,12 @@ if ($sOutputFormat == 'html') {
|
||||
$sDataDate = chksql($oDB->getOne("select TO_CHAR(lastimportdate,'YYYY/MM/DD HH24:MI')||' GMT' from import_status limit 1"));
|
||||
$sTileURL = CONST_Map_Tile_URL;
|
||||
$sTileAttribution = CONST_Map_Tile_Attribution;
|
||||
} elseif ($sOutputFormat == 'geocodejson') {
|
||||
$sQuery = $fLat.','.$fLon;
|
||||
if (isset($aPlace['place_id'])) {
|
||||
$fDistance = chksql($oDB->getOne('SELECT ST_Distance(ST_SetSRID(ST_Point('.$fLon.','.$fLat.'),4326), centroid) FROM placex where place_id='.$aPlace['place_id']));
|
||||
}
|
||||
}
|
||||
|
||||
$sOutputTemplate = ($sOutputFormat=='jsonv2' ? 'json' : $sOutputFormat);
|
||||
$sOutputTemplate = ($sOutputFormat == 'jsonv2') ? 'json' : $sOutputFormat;
|
||||
include(CONST_BasePath.'/lib/template/address-'.$sOutputTemplate.'.php');
|
||||
|
||||
@@ -26,7 +26,7 @@ if (CONST_Search_ReversePlanForAll
|
||||
}
|
||||
|
||||
// Format for output
|
||||
$sOutputFormat = $oParams->getSet('format', array('html', 'xml', 'json', 'jsonv2'), 'html');
|
||||
$sOutputFormat = $oParams->getSet('format', array('html', 'xml', 'json', 'jsonv2', 'geojson', 'geocodejson'), 'html');
|
||||
|
||||
$sForcedGeometry = ($sOutputFormat == 'html') ? 'geojson' : null;
|
||||
$oGeocode->loadParamArray($oParams, $sForcedGeometry);
|
||||
@@ -81,5 +81,5 @@ $sMoreURL = CONST_Website_BaseURL.'search.php?'.http_build_query($aMoreParams);
|
||||
|
||||
if (CONST_Debug) exit;
|
||||
|
||||
$sOutputTemplate = ($sOutputFormat=='jsonv2' ? 'json' : $sOutputFormat);
|
||||
$sOutputTemplate = ($sOutputFormat == 'jsonv2') ? 'json' : $sOutputFormat;
|
||||
include(CONST_BasePath.'/lib/template/search-'.$sOutputTemplate.'.php');
|
||||
|
||||
Reference in New Issue
Block a user