'; 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'].'
'; 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 (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:

'; ?>