mirror of
https://github.com/osm-search/Nominatim.git
synced 2024-11-30 12:22:10 +03:00
traverse address list backwards when computing admin levels
By starting with the lowest address level, when collecting administrative boundaries by level, there is a better chance to actually get the boundary when the capital of the administrative boundary is tagged with the level of the boundary as well. This is just a heuristics adaption to make the best out of the imprecise admin_level definition for place nodes. Fixes #1261.
This commit is contained in:
parent
e080bdff0f
commit
411f361fcb
@ -103,7 +103,7 @@ class AddressDetails
|
|||||||
public function getAdminLevels()
|
public function getAdminLevels()
|
||||||
{
|
{
|
||||||
$aAddress = array();
|
$aAddress = array();
|
||||||
foreach ($this->aAddressLines as $aLine) {
|
foreach (array_reverse($this->aAddressLines) as $aLine) {
|
||||||
if (self::isAddress($aLine)
|
if (self::isAddress($aLine)
|
||||||
&& isset($aLine['admin_level'])
|
&& isset($aLine['admin_level'])
|
||||||
&& $aLine['admin_level'] < 15
|
&& $aLine['admin_level'] < 15
|
||||||
|
Loading…
Reference in New Issue
Block a user