forked from hans/Nominatim
Keep matches without house number
Now that we have result ranking, we can keep the street results for housenumber searches and reuse them in the next group round if required. Also fixes an issue where postcode and housenumber are in the query and one of them is wrong. Fixes #1200.
This commit is contained in:
@@ -448,13 +448,17 @@ class SearchDescription
|
||||
|
||||
//now search for housenumber, if housenumber provided
|
||||
if ($this->sHouseNumber && !empty($aResults)) {
|
||||
$aNamedPlaceIDs = $aResults;
|
||||
$aResults = $this->queryHouseNumber($oDB, $aNamedPlaceIDs);
|
||||
// Downgrade the rank of the street results, they are missing
|
||||
// the housenumber.
|
||||
foreach ($aResults as $oRes) {
|
||||
$oRes->iResultRank++;
|
||||
}
|
||||
|
||||
if (empty($aResults) && $this->looksLikeFullAddress()) {
|
||||
$aResults = $aNamedPlaceIDs;
|
||||
foreach ($aResults as $oRes) {
|
||||
$oRes->iResultRank++;
|
||||
$aHnResults = $this->queryHouseNumber($oDB, $aResults);
|
||||
|
||||
if (!empty($aHnResults)) {
|
||||
foreach ($aHnResults as $oRes) {
|
||||
$aResults[$oRes->iId] = $oRes;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user