X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/866b702e0e1807b17180af79943ce02ea0890a7c..dc769b0c6b160015c25d433968ea589fd7ddd0e1:/website/search.php diff --git a/website/search.php b/website/search.php index a3a926fd..b107e120 100755 --- a/website/search.php +++ b/website/search.php @@ -20,12 +20,14 @@ $aLangPrefOrder = getPreferredLanguages(); $oGeocode->setLanguagePreference($aLangPrefOrder); - /* - if (isset($aLangPrefOrder['name:de'])) $oGeocode->setReverseInPlan(true); - if (isset($aLangPrefOrder['name:ru'])) $oGeocode->setReverseInPlan(true); - if (isset($aLangPrefOrder['name:ja'])) $oGeocode->setReverseInPlan(true); - if (isset($aLangPrefOrder['name:pl'])) $oGeocode->setReverseInPlan(true); - */ + if (CONST_Search_ReversePlanForAll + || isset($aLangPrefOrder['name:de']) + || isset($aLangPrefOrder['name:ru']) + || isset($aLangPrefOrder['name:ja']) + || isset($aLangPrefOrder['name:pl'])) + { + $oGeocode->setReverseInPlan(true); + } // Format for output $sOutputFormat = 'html'; @@ -70,6 +72,11 @@ $oGeocode->setIncludePolygonAsSVG($bAsSVG); } + // Polygon simplification threshold (optional) + $fThreshold = 0.0; + if (isset($_GET['polygon_threshold'])) $fThreshold = (float)$_GET['polygon_threshold']; + $oGeocode->setPolygonSimplificationThreshold($fThreshold); + $oGeocode->loadParamArray($_GET); if (CONST_Search_BatchMode && isset($_GET['batch'])) @@ -89,7 +96,7 @@ } else { if (!(isset($_GET['q']) && $_GET['q']) && isset($_SERVER['PATH_INFO']) && $_SERVER['PATH_INFO'][0] == '/') { - $sQuery = substr($_SERVER['PATH_INFO'], 1); + $sQuery = substr(rawurldecode($_SERVER['PATH_INFO']), 1); // reverse order of '/' separated string $aPhrases = explode('/', $sQuery); @@ -119,10 +126,12 @@ $bShowPolygons = (isset($_GET['polygon']) && $_GET['polygon']); $aExcludePlaceIDs = $oGeocode->getExcludedPlaceIDs(); - $sMoreURL = CONST_Website_BaseURL.'search?format='.urlencode($sOutputFormat).'&exclude_place_ids='.join(',',$oGeocode->getExcludedPlaceIDs()); + $sMoreURL = CONST_Website_BaseURL.'search.php?format='.urlencode($sOutputFormat).'&exclude_place_ids='.join(',',$oGeocode->getExcludedPlaceIDs()); if (isset($_SERVER["HTTP_ACCEPT_LANGUAGE"])) $sMoreURL .= '&accept-language='.$_SERVER["HTTP_ACCEPT_LANGUAGE"]; if ($bShowPolygons) $sMoreURL .= '&polygon=1'; if ($oGeocode->getIncludeAddressDetails()) $sMoreURL .= '&addressdetails=1'; + if ($oGeocode->getIncludeExtraTags()) $sMoreURL .= '&extratags=1'; + if ($oGeocode->getIncludeNameDetails()) $sMoreURL .= '&namedetails=1'; if ($sViewBox) $sMoreURL .= '&viewbox='.urlencode($sViewBox); if (isset($_GET['nearlat']) && isset($_GET['nearlon'])) $sMoreURL .= '&nearlat='.(float)$_GET['nearlat'].'&nearlon='.(float)$_GET['nearlon']; $sMoreURL .= '&q='.urlencode($sQuery);