X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/bfe51197429c9436034bb4d25931ad4d687d09c8..d53af96aa49dfe74d4c54d375fbc6dce111faae1:/lib/template/details-html.php diff --git a/lib/template/details-html.php b/lib/template/details-html.php index c438659b..9b76efc1 100644 --- a/lib/template/details-html.php +++ b/lib/template/details-html.php @@ -1,236 +1,254 @@ - - - OpenStreetMap Nominatim: <?php echo $aPointDetails['localname'];?> - - - - - - -
+ + + + + +
+
+
+

+ + +

+
+
+ +
+
+
+
+ + + format(DateTime::RFC822) ); + kv('Admin Level' , $aPointDetails['admin_level'] ); + kv('Rank' , $aPointDetails['rank_search_label'] ); + if ($aPointDetails['calculated_importance']) { + kv('Importance' , $aPointDetails['calculated_importance'].($aPointDetails['importance']?'':' (estimated)') ); + } + kv('Coverage' , ($aPointDetails['isarea']?'Polygon':'Point') ); + kv('Centre Point' , $aPointDetails['lat'].','.$aPointDetails['lon'] ); + kv('OSM' , osmLink($aPointDetails) ); + if ($aPointDetails['wikipedia']) + { + kv('Wikipedia Calculated' , wikipediaLink($aPointDetails) ); + } + + kv('Computed Postcode', $aPointDetails['postcode']); + kv('Address Tags' , hash_to_subtable($aPointDetails['aAddressTags']) ); + kv('Extra Tags' , hash_to_subtable($aPointDetails['aExtraTags']) ); + + ?> + +
+
+ +
+
+
+ +
+
+
+ +

Address

+ + + + + + + + + + + + + + + + + + '; - if ($aPointDetails['icon']) - { - echo ''; - } - echo $aPointDetails['localname'].''; - echo '
'; - echo '
Name: '; - foreach($aPointDetails['aNames'] as $sKey => $sValue) - { - echo '
'.$sValue.' ('.$sKey.')
'; - } - echo '
'; - echo '
Type: '.$aPointDetails['class'].':'.$aPointDetails['type'].'
'; - echo '
Admin Level: '.$aPointDetails['admin_level'].'
'; - echo '
Rank: '.$aPointDetails['rank_search_label'].'
'; - if ($aPointDetails['importance']) echo '
Importance: '.$aPointDetails['importance'].'
'; - echo '
Coverage: '.($aPointDetails['isarea']=='t'?'Polygon':'Point').'
'; - $sOSMType = ($aPointDetails['osm_type'] == 'N'?'node':($aPointDetails['osm_type'] == 'W'?'way':($aPointDetails['osm_type'] == 'R'?'relation':''))); - if ($sOSMType) echo '
OSM: '.$sOSMType.' '.$aPointDetails['osm_id'].'
'; - echo '
Extra Tags: '; - foreach($aPointDetails['aExtraTags'] as $sKey => $sValue) - { - echo '
'.$sValue.' ('.$sKey.')
'; - } - echo '
'; - echo '
'; - - echo '

Address

'; - echo '
'; - $iPrevRank = 1000000; - $sPrevLocalName = ''; - foreach($aAddressLines as $aAddressLine) - { - $sOSMType = ($aAddressLine['osm_type'] == 'N'?'node':($aAddressLine['osm_type'] == 'W'?'way':($aAddressLine['osm_type'] == 'R'?'relation':''))); - - echo '
'; - if (!($iPrevRank<=$aAddressLine['rank_address'] || $sPrevLocalName == $aAddressLine['localname'])) - { - $iPrevRank = $aAddressLine['rank_address']; - $sPrevLocalName = $aAddressLine['localname']; - } - echo ''.(trim($aAddressLine['localname'])?$aAddressLine['localname']:'No Name').''; - echo ' ('; - echo 'Type: '.$aAddressLine['class'].':'.$aAddressLine['type'].''; - if ($sOSMType) echo ', '.$sOSMType.' '.$aAddressLine['osm_id'].''; - echo ', '.$aAddressLine['admin_level'].''; - echo ', '.$aAddressLine['rank_search_label'].''; -// echo ', '.($aAddressLine['fromarea']=='t'?'Polygon':'Point').''; - echo ', '.$aAddressLine['distance'].''; - echo ' GOTO'; - echo ')'; - echo '
'; - } - echo '
'; - - if ($aLinkedLines) - { - echo '

Linked Places

'; - echo '
'; - foreach($aLinkedLines as $aAddressLine) - { - $sOSMType = ($aAddressLine['osm_type'] == 'N'?'node':($aAddressLine['osm_type'] == 'W'?'way':($aAddressLine['osm_type'] == 'R'?'relation':''))); - - echo '
'; - echo ''.(trim($aAddressLine['localname'])?$aAddressLine['localname']:'No Name').''; - echo ' ('; - echo 'Type: '.$aAddressLine['class'].':'.$aAddressLine['type'].''; - if ($sOSMType) echo ', '.$sOSMType.' '.$aAddressLine['osm_id'].''; - echo ', '.$aAddressLine['admin_level'].''; - echo ', '.$aAddressLine['rank_search_label'].''; -// echo ', '.($aAddressLine['fromarea']=='t'?'Polygon':'Point').''; - echo ', '.$aAddressLine['distance'].''; - echo ' GOTO'; - echo ')'; - echo '
'; - } - echo '
'; - } - - if ($aPlaceSearchNameKeywords) - { - echo '

Name Keywords

'; - foreach($aPlaceSearchNameKeywords as $aRow) - { - echo '
'.$aRow['word_token'].'
'; - } - } - - if ($aPlaceSearchAddressKeywords) - { - echo '

Address Keywords

'; - foreach($aPlaceSearchAddressKeywords as $aRow) - { - echo '
'.($aRow['word_token'][0]==' '?'*':'').$aRow['word_token'].'('.$aRow['word_id'].')'.'
'; - } - } - - if (sizeof($aParentOfLines)) - { - echo '

Parent Of (named features only):

'; - - $aGroupedAddressLines = array(); - foreach($aParentOfLines as $aAddressLine) - { - if (!isset($aGroupedAddressLines[$aAddressLine['type']])) $aGroupedAddressLines[$aAddressLine['type']] = array(); - $aGroupedAddressLines[$aAddressLine['type']][] = $aAddressLine; - } - foreach($aGroupedAddressLines as $sGroupHeading => $aParentOfLines) - { - $sGroupHeading = ucwords($sGroupHeading); - echo "

$sGroupHeading

"; - foreach($aParentOfLines as $aAddressLine) - { - $aAddressLine['localname'] = $aAddressLine['localname']?$aAddressLine['localname']:$aAddressLine['housenumber']; - $sOSMType = ($aAddressLine['osm_type'] == 'N'?'node':($aAddressLine['osm_type'] == 'W'?'way':($aAddressLine['osm_type'] == 'R'?'relation':''))); - - echo '
'; - echo ''.(trim($aAddressLine['localname'])?$aAddressLine['localname']:'No Name').''; - echo ' ('; -// echo 'Type: '.$aAddressLine['class'].':'.$aAddressLine['type'].''; -// echo ', '.$aAddressLine['admin_level'].''; -// echo ', '.$aAddressLine['rank_address'].''; - echo ''.($aAddressLine['isarea']=='t'?'Polygon':'Point').''; - echo ', ~'.(round($aAddressLine['distance']*69,1)).' miles'; - if ($sOSMType) echo ', '.$sOSMType.' '.$aAddressLine['osm_id'].''; - echo ', GOTO'; - echo ')'; - echo '
'; - } - } - echo ''; - } - -// echo '

Other Parts:

'; -// echo '

Linked To:

'; + + if ($aLinkedLines) + { + headline('Linked Places'); + foreach ($aLinkedLines as $aAddressLine) { + _one_row($aAddressLine); + } + } + + if ($bIncludeKeywords) + { + headline('Name Keywords'); + if ($aPlaceSearchNameKeywords) { + foreach ($aPlaceSearchNameKeywords as $aRow) { + _one_keyword_row($aRow['word_token'], $aRow['word_id']); + } + } + + headline('Address Keywords'); + if ($aPlaceSearchAddressKeywords) { + foreach ($aPlaceSearchAddressKeywords as $aRow) { + _one_keyword_row($aRow['word_token'], $aRow['word_id']); + } + } + } + + if (!empty($aHierarchyLines)) + { + headline('Parent Of'); + + $aGroupedAddressLines = array(); + foreach ($aHierarchyLines as $aAddressLine) { + if ($aAddressLine['type'] == 'yes') $sType = $aAddressLine['class']; + else $sType = $aAddressLine['type']; + + if (!isset($aGroupedAddressLines[$sType])) + $aGroupedAddressLines[$sType] = array(); + $aGroupedAddressLines[$sType][] = $aAddressLine; + } + foreach ($aGroupedAddressLines as $sGroupHeading => $aHierarchyLines) { + $sGroupHeading = ucwords($sGroupHeading); + headline3($sGroupHeading); + + foreach ($aHierarchyLines as $aAddressLine) { + _one_row($aAddressLine); + } + } + if (count($aHierarchyLines) >= 500) { + echo '

There are more child objects which are not shown.

'; + } + } + + echo "
Local nameTypeOSMAddress rankAdmin levelDistance
\n"; ?> - +
+
+
+ + + + + + +