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

+
+
+ +
+
+
+
+ + + + +
+
+ +
+
+
+ +
+
+
+ +

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 ($aPlaceSearchNameKeywords) + { + headline('Name Keywords'); + foreach($aPlaceSearchNameKeywords as $aRow) + { + _one_keyword_row($aRow['word_token'], $aRow['word_id']); + } + } + + if ($aPlaceSearchAddressKeywords) + { + headline('Address Keywords'); + foreach($aPlaceSearchAddressKeywords as $aRow) + { + _one_keyword_row($aRow['word_token'], $aRow['word_id']); + } + } + + if (!empty($aParentOfLines)) + { + headline('Parent Of'); + + $aGroupedAddressLines = array(); + foreach($aParentOfLines 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 => $aParentOfLines) + { + $sGroupHeading = ucwords($sGroupHeading); + headline3($sGroupHeading); + + foreach($aParentOfLines as $aAddressLine) + { + _one_row($aAddressLine); + } + } + if (count($aParentOfLines) >= 500) { + echo '

There are more child objects which are not shown.

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