Unifies the two implementations currently used for search and address.
return $aAddress;
}
+ public function addGeocodeJsonAddressParts(&$aJson)
+ {
+ $aFieldMappings = array(
+ 'house_number' => 'housenumber',
+ 'road' => 'street',
+ 'locality' => 'locality',
+ 'postcode' => 'postcode',
+ 'city' => 'city',
+ 'district' => 'district',
+ 'county' => 'county',
+ 'state' => 'state',
+ 'country' => 'country'
+ );
+
+ $aAddrNames = $this->getAddressNames();
+ foreach ($aFieldMappings as $sFrom => $sTo) {
+ if (isset($aAddrNames[$sFrom])) {
+ $aJson[$sTo] = $aAddrNames[$sFrom];
+ }
+ }
+ }
+
public function getAdminLevels()
{
$aAddress = array();
$aFilteredPlaces['properties']['geocoding']['name'] = $aPlace['placename'];
if (isset($aPlace['address'])) {
- $aFieldMappings = array(
- 'house_number' => 'housenumber',
- 'road' => 'street',
- 'locality' => 'locality',
- 'postcode' => 'postcode',
- 'city' => 'city',
- 'district' => 'district',
- 'county' => 'county',
- 'state' => 'state',
- 'country' => 'country'
- );
-
- $aAddressNames = $aPlace['address']->getAddressNames();
- foreach ($aFieldMappings as $sFrom => $sTo) {
- if (isset($aAddressNames[$sFrom])) {
- $aFilteredPlaces['properties']['geocoding'][$sTo] = $aAddressNames[$sFrom];
- }
- }
+ $aPlace['address']->addGeocodeJsonAddressParts(
+ $aFilteredPlaces['properties']['geocoding']
+ );
$aFilteredPlaces['properties']['geocoding']['admin']
= $aPlace['address']->getAdminLevels();
$aPlace['properties']['geocoding']['name'] = $aPointDetails['placename'];
if (isset($aPointDetails['address'])) {
- $aFieldMappings = array(
- 'house_number' => 'housenumber',
- 'road' => 'street',
- 'locality' => 'locality',
- 'postcode' => 'postcode',
- 'city' => 'city',
- 'district' => 'district',
- 'county' => 'county',
- 'state' => 'state',
- 'country' => 'country'
- );
-
- $aAddrNames = $aPointDetails['address']->getAddressNames();
- foreach ($aFieldMappings as $sFrom => $sTo) {
- if (isset($aAddrNames[$sFrom])) {
- $aPlace['properties']['geocoding'][$sTo] = $aAddrNames[$sFrom];
- }
- }
+ $aPointDetails['address']->addGeocodeJsonAddressParts(
+ $aPlace['properties']['geocoding']
+ );
$aPlace['properties']['geocoding']['admin']
= $aPointDetails['address']->getAdminLevels();