Merge pull request #532 from mtmail/PSR2-namespaces

add namespaces, method visibility according to PSR2 standard
This commit is contained in:
Sarah Hoffmann
2016-09-16 21:55:44 +02:00
committed by GitHub
12 changed files with 86 additions and 77 deletions

View File

@@ -1,4 +1,7 @@
<?php
namespace Nominatim;
require_once(CONST_BasePath.'/lib/PlaceLookup.php');
require_once(CONST_BasePath.'/lib/ReverseGeocode.php');
@@ -49,67 +52,67 @@ class Geocode
protected $aStructuredQuery = false;
function Geocode(&$oDB)
public function __construct(&$oDB)
{
$this->oDB =& $oDB;
}
function setReverseInPlan($bReverse)
public function setReverseInPlan($bReverse)
{
$this->bReverseInPlan = $bReverse;
}
function setLanguagePreference($aLangPref)
public function setLanguagePreference($aLangPref)
{
$this->aLangPrefOrder = $aLangPref;
}
function getIncludeAddressDetails()
public function getIncludeAddressDetails()
{
return $this->bIncludeAddressDetails;
}
function getIncludeExtraTags()
public function getIncludeExtraTags()
{
return $this->bIncludeExtraTags;
}
function getIncludeNameDetails()
public function getIncludeNameDetails()
{
return $this->bIncludeNameDetails;
}
function setIncludePolygonAsPoints($b = true)
public function setIncludePolygonAsPoints($b = true)
{
$this->bIncludePolygonAsPoints = $b;
}
function setIncludePolygonAsText($b = true)
public function setIncludePolygonAsText($b = true)
{
$this->bIncludePolygonAsText = $b;
}
function setIncludePolygonAsGeoJSON($b = true)
public function setIncludePolygonAsGeoJSON($b = true)
{
$this->bIncludePolygonAsGeoJSON = $b;
}
function setIncludePolygonAsKML($b = true)
public function setIncludePolygonAsKML($b = true)
{
$this->bIncludePolygonAsKML = $b;
}
function setIncludePolygonAsSVG($b = true)
public function setIncludePolygonAsSVG($b = true)
{
$this->bIncludePolygonAsSVG = $b;
}
function setPolygonSimplificationThreshold($f)
public function setPolygonSimplificationThreshold($f)
{
$this->fPolygonSimplificationThreshold = $f;
}
function setLimit($iLimit = 10)
public function setLimit($iLimit = 10)
{
if ($iLimit > 50) $iLimit = 50;
if ($iLimit < 1) $iLimit = 1;
@@ -118,18 +121,18 @@ class Geocode
$this->iLimit = $iLimit + min($iLimit, 10);
}
function getExcludedPlaceIDs()
public function getExcludedPlaceIDs()
{
return $this->aExcludePlaceIDs;
}
function getViewBoxString()
public function getViewBoxString()
{
if (!$this->aViewBox) return null;
return $this->aViewBox[0].','.$this->aViewBox[3].','.$this->aViewBox[2].','.$this->aViewBox[1];
}
function setFeatureType($sFeatureType)
public function setFeatureType($sFeatureType)
{
switch ($sFeatureType) {
case 'country':
@@ -147,13 +150,13 @@ class Geocode
}
}
function setRankRange($iMin, $iMax)
public function setRankRange($iMin, $iMax)
{
$this->iMinAddressRank = $iMin;
$this->iMaxAddressRank = $iMax;
}
function setRoute($aRoutePoints, $fRouteWidth)
public function setRoute($aRoutePoints, $fRouteWidth)
{
$this->aViewBox = false;
@@ -173,7 +176,7 @@ class Geocode
$this->sViewboxLargeSQL .= ','.($fRouteWidth/30).')';
}
function setViewbox($aViewbox)
public function setViewbox($aViewbox)
{
$this->aViewBox = array_map('floatval', $aViewbox);
@@ -189,24 +192,24 @@ class Geocode
$this->sViewboxLargeSQL = "ST_SetSRID(ST_MakeBox2D(ST_Point(".$aBigViewBox[0].",".$aBigViewBox[1]."),ST_Point(".$aBigViewBox[2].",".$aBigViewBox[3].")),4326)";
}
function setNearPoint($aNearPoint, $fRadiusDeg = 0.1)
public function setNearPoint($aNearPoint, $fRadiusDeg = 0.1)
{
$this->aNearPoint = array((float)$aNearPoint[0], (float)$aNearPoint[1], (float)$fRadiusDeg);
}
function setQuery($sQueryString)
public function setQuery($sQueryString)
{
$this->sQuery = $sQueryString;
$this->aStructuredQuery = false;
}
function getQueryString()
public function getQueryString()
{
return $this->sQuery;
}
function loadParamArray($oParams)
public function loadParamArray($oParams)
{
$this->bIncludeAddressDetails
= $oParams->getBool('addressdetails', $this->bIncludeAddressDetails);
@@ -275,7 +278,7 @@ class Geocode
}
}
function setQueryFromParams($oParams)
public function setQueryFromParams($oParams)
{
// Search query
$sQuery = $oParams->getString('q');
@@ -295,7 +298,7 @@ class Geocode
}
}
function loadStructuredAddressElement($sValue, $sKey, $iNewMinAddressRank, $iNewMaxAddressRank, $aItemListValues)
public function loadStructuredAddressElement($sValue, $sKey, $iNewMinAddressRank, $iNewMaxAddressRank, $aItemListValues)
{
$sValue = trim($sValue);
if (!$sValue) return false;
@@ -308,7 +311,7 @@ class Geocode
return true;
}
function setStructuredQuery($sAmentiy = false, $sStreet = false, $sCity = false, $sCounty = false, $sState = false, $sCountry = false, $sPostalCode = false)
public function setStructuredQuery($sAmentiy = false, $sStreet = false, $sCity = false, $sCounty = false, $sState = false, $sCountry = false, $sPostalCode = false)
{
$this->sQuery = false;
@@ -336,7 +339,7 @@ class Geocode
}
}
function fallbackStructuredQuery()
public function fallbackStructuredQuery()
{
if (!$this->aStructuredQuery) return false;
@@ -357,7 +360,7 @@ class Geocode
return false;
}
function getDetails($aPlaceIDs)
public function getDetails($aPlaceIDs)
{
//$aPlaceIDs is an array with key: placeID and value: tiger-housenumber, if found, else -1
if (sizeof($aPlaceIDs) == 0) return array();
@@ -488,7 +491,7 @@ class Geocode
return $aSearchResults;
}
function getGroupedSearches($aSearches, $aPhraseTypes, $aPhrases, $aValidTokens, $aWordFrequencyScores, $bStructuredPhrases)
public function getGroupedSearches($aSearches, $aPhraseTypes, $aPhrases, $aValidTokens, $aWordFrequencyScores, $bStructuredPhrases)
{
/*
Calculate all searches using aValidTokens i.e.
@@ -742,7 +745,7 @@ class Geocode
*/
function lookup()
public function lookup()
{
if (!$this->sQuery && !$this->aStructuredQuery) return false;
@@ -1464,7 +1467,7 @@ class Geocode
}
} else {
// Just interpret as a reverse geocode
$oReverse = new ReverseGeocode($this->oDB);
$oReverse = new Nominatim\ReverseGeocode($this->oDB);
$oReverse->setZoom(18);
$aLookup = $oReverse->lookup(

View File

@@ -1,16 +1,18 @@
<?php
namespace Nominatim;
class ParameterParser
{
private $aParams;
function __construct($aParams = null)
public function __construct($aParams = null)
{
$this->aParams = ($aParams === null) ? $_GET : $aParams;
}
function getBool($sName, $bDefault = false)
public function getBool($sName, $bDefault = false)
{
if (!isset($this->aParams[$sName]) || strlen($this->aParams[$sName]) == 0) {
return $bDefault;
@@ -19,7 +21,7 @@ class ParameterParser
return (bool) $this->aParams[$sName];
}
function getInt($sName, $bDefault = false)
public function getInt($sName, $bDefault = false)
{
if (!isset($this->aParams[$sName]) || strlen($this->aParams[$sName]) == 0) {
return $bDefault;
@@ -32,7 +34,7 @@ class ParameterParser
return (int) $this->aParams[$sName];
}
function getFloat($sName, $bDefault = false)
public function getFloat($sName, $bDefault = false)
{
if (!isset($this->aParams[$sName]) || strlen($this->aParams[$sName]) == 0) {
return $bDefault;
@@ -45,7 +47,7 @@ class ParameterParser
return (float) $this->aParams[$sName];
}
function getString($sName, $bDefault = false)
public function getString($sName, $bDefault = false)
{
if (!isset($this->aParams[$sName]) || strlen($this->aParams[$sName]) == 0) {
return $bDefault;
@@ -54,7 +56,7 @@ class ParameterParser
return $this->aParams[$sName];
}
function getSet($sName, $aValues, $sDefault = false)
public function getSet($sName, $aValues, $sDefault = false)
{
if (!isset($this->aParams[$sName]) || strlen($this->aParams[$sName]) == 0) {
return $sDefault;
@@ -67,7 +69,7 @@ class ParameterParser
return $this->aParams[$sName];
}
function getStringList($sName, $aDefault = false)
public function getStringList($sName, $aDefault = false)
{
$sValue = $this->getString($sName);
@@ -78,7 +80,7 @@ class ParameterParser
return $aDefault;
}
function getPreferredLanguages($sFallback = null)
public function getPreferredLanguages($sFallback = null)
{
if ($sFallback === null && isset($_SERVER["HTTP_ACCEPT_LANGUAGE"])) {
$sFallback = $_SERVER["HTTP_ACCEPT_LANGUAGE"];

View File

@@ -1,5 +1,7 @@
<?php
namespace Nominatim;
class PlaceLookup
{
protected $oDB;
@@ -18,73 +20,73 @@ class PlaceLookup
protected $fPolygonSimplificationThreshold = 0.0;
function PlaceLookup(&$oDB)
public function __construct(&$oDB)
{
$this->oDB =& $oDB;
}
function setLanguagePreference($aLangPrefOrder)
public function setLanguagePreference($aLangPrefOrder)
{
$this->aLangPrefOrder = $aLangPrefOrder;
}
function setIncludeAddressDetails($bAddressDetails = true)
public function setIncludeAddressDetails($bAddressDetails = true)
{
$this->bAddressDetails = $bAddressDetails;
}
function setIncludeExtraTags($bExtraTags = false)
public function setIncludeExtraTags($bExtraTags = false)
{
$this->bExtraTags = $bExtraTags;
}
function setIncludeNameDetails($bNameDetails = false)
public function setIncludeNameDetails($bNameDetails = false)
{
$this->bNameDetails = $bNameDetails;
}
function setIncludePolygonAsPoints($b = true)
public function setIncludePolygonAsPoints($b = true)
{
$this->bIncludePolygonAsPoints = $b;
}
function getIncludePolygonAsPoints()
public function getIncludePolygonAsPoints()
{
return $this->bIncludePolygonAsPoints;
}
function setIncludePolygonAsText($b = true)
public function setIncludePolygonAsText($b = true)
{
$this->bIncludePolygonAsText = $b;
}
function getIncludePolygonAsText()
public function getIncludePolygonAsText()
{
return $this->bIncludePolygonAsText;
}
function setIncludePolygonAsGeoJSON($b = true)
public function setIncludePolygonAsGeoJSON($b = true)
{
$this->bIncludePolygonAsGeoJSON = $b;
}
function setIncludePolygonAsKML($b = true)
public function setIncludePolygonAsKML($b = true)
{
$this->bIncludePolygonAsKML = $b;
}
function setIncludePolygonAsSVG($b = true)
public function setIncludePolygonAsSVG($b = true)
{
$this->bIncludePolygonAsSVG = $b;
}
function setPolygonSimplificationThreshold($f)
public function setPolygonSimplificationThreshold($f)
{
$this->fPolygonSimplificationThreshold = $f;
}
function lookupOSMID($sType, $iID)
public function lookupOSMID($sType, $iID)
{
$sSQL = "select place_id from placex where osm_type = '".pg_escape_string($sType)."' and osm_id = ".(int)$iID." order by type = 'postcode' asc";
$iPlaceID = chksql($this->oDB->getOne($sSQL));
@@ -92,7 +94,7 @@ class PlaceLookup
return $this->lookup((int)$iPlaceID);
}
function lookup($iPlaceID, $sType = '', $fInterpolFraction = 0.0)
public function lookup($iPlaceID, $sType = '', $fInterpolFraction = 0.0)
{
if (!$iPlaceID) return null;
@@ -191,7 +193,7 @@ class PlaceLookup
return $aPlace;
}
function getAddressDetails($iPlaceID, $bAll = false, $housenumber = -1)
public function getAddressDetails($iPlaceID, $bAll = false, $housenumber = -1)
{
$sLanguagePrefArraySQL = "ARRAY[".join(',', array_map("getDBQuoted", $this->aLangPrefOrder))."]";
@@ -202,7 +204,7 @@ class PlaceLookup
return chksql($this->oDB->getAll($sSQL));
}
function getAddressNames($iPlaceID, $housenumber = -1)
public function getAddressNames($iPlaceID, $housenumber = -1)
{
$aAddressLines = $this->getAddressDetails($iPlaceID, false, $housenumber);
@@ -249,7 +251,7 @@ class PlaceLookup
*/
function getOutlines($iPlaceID, $fLon = null, $fLat = null, $fRadius = null)
public function getOutlines($iPlaceID, $fLon = null, $fLat = null, $fRadius = null)
{
$aOutlineResult = array();

View File

@@ -1,18 +1,20 @@
<?php
namespace Nominatim;
class ReverseGeocode
{
protected $oDB;
protected $iMaxRank = 28;
function ReverseGeocode(&$oDB)
public function __construct(&$oDB)
{
$this->oDB =& $oDB;
}
function setZoom($iZoom)
public function setZoom($iZoom)
{
// Zoom to rank, this could probably be calculated but a lookup gives fine control
$aZoomRank = array(
@@ -47,7 +49,7 @@ class ReverseGeocode
*/
function lookup($fLat, $fLon, $bDoInterpolation = true)
public function lookup($fLat, $fLon, $bDoInterpolation = true)
{
$sPointSQL = 'ST_SetSRID(ST_Point('.$fLon.','.$fLat.'),4326)';
$iMaxRank = $this->iMaxRank;

View File

@@ -28,12 +28,12 @@ $aCMDOptions
getCmdOpt($_SERVER['argv'], $aCMDOptions, $aCMDResult, true, true);
$oDB =& getDB();
$oParams = new ParameterParser($aCMDResult);
$oParams = new Nominatim\ParameterParser($aCMDResult);
if ($oParams->getBool('search')) {
if (isset($aCMDResult['nodedupe'])) $aCMDResult['dedupe'] = 'false';
$oGeocode = new Geocode($oDB);
$oGeocode = new Nominatim\Geocode($oDB);
$oGeocode->setLanguagePreference($oParams->getPreferredLanguages(false));
$oGeocode->loadParamArray($oParams);

View File

@@ -25,9 +25,9 @@ $oDB =& getDB();
$bVerbose = $aResult['verbose'];
if (!$aResult['search-only']) {
$oReverseGeocode = new ReverseGeocode($oDB);
$oReverseGeocode = new Nominatim\ReverseGeocode($oDB);
$oReverseGeocode->setZoom(20);
$oPlaceLookup = new PlaceLookup($oDB);
$oPlaceLookup = new Nominatim\PlaceLookup($oDB);
$oPlaceLookup->setIncludeAddressDetails(true);
$oPlaceLookup->setLanguagePreference(array('en'));
@@ -53,7 +53,7 @@ if (!$aResult['search-only']) {
}
if (!$aResult['reverse-only']) {
$oGeocode =& new Geocode($oDB);
$oGeocode =& new Nominatim\Geocode($oDB);
echo "Warm search: ";
if ($bVerbose) echo "\n";

View File

@@ -7,7 +7,7 @@ require_once(CONST_BasePath.'/lib/log.php');
require_once(CONST_BasePath.'/lib/output.php');
ini_set('memory_limit', '200M');
$oParams = new ParameterParser();
$oParams = new Nominatim\ParameterParser();
$sOutputFormat = 'html';
$aLangPrefOrder = $oParams->getPreferredLanguages();

View File

@@ -8,7 +8,7 @@ require_once(CONST_BasePath.'/lib/PlaceLookup.php');
require_once(CONST_BasePath.'/lib/output.php');
ini_set('memory_limit', '200M');
$oParams = new ParameterParser();
$oParams = new Nominatim\ParameterParser();
$sOutputFormat = $oParams->getSet('format', array('html', 'json'), 'html');
$aLangPrefOrder = $oParams->getPreferredLanguages();
@@ -51,7 +51,7 @@ if (CONST_Use_Aux_Location_data) {
if ($iParentPlaceID) $iPlaceID = $iParentPlaceID;
}
$oPlaceLookup = new PlaceLookup($oDB);
$oPlaceLookup = new Nominatim\PlaceLookup($oDB);
$oPlaceLookup->setLanguagePreference($aLangPrefOrder);
$oPlaceLookup->setIncludeAddressDetails(true);

View File

@@ -8,7 +8,7 @@ require_once(CONST_BasePath.'/lib/PlaceLookup.php');
require_once(CONST_BasePath.'/lib/output.php');
ini_set('memory_limit', '200M');
$oParams = new ParameterParser();
$oParams = new Nominatim\ParameterParser();
// Format for output
$sOutputFormat = $oParams->getSet('format', array('xml', 'json'), 'xml');
@@ -23,7 +23,7 @@ $hLog = logStart($oDB, 'place', $_SERVER['QUERY_STRING'], $aLangPrefOrder);
$aSearchResults = array();
$aCleanedQueryParts = array();
$oPlaceLookup = new PlaceLookup($oDB);
$oPlaceLookup = new Nominatim\PlaceLookup($oDB);
$oPlaceLookup->setLanguagePreference($aLangPrefOrder);
$oPlaceLookup->setIncludeAddressDetails($oParams->getBool('addressdetails', true));
$oPlaceLookup->setIncludeExtraTags($oParams->getBool('extratags', false));

View File

@@ -6,7 +6,7 @@ require_once(CONST_BasePath.'/lib/log.php');
require_once(CONST_BasePath.'/lib/output.php');
ini_set('memory_limit', '200M');
$oParams = new ParameterParser();
$oParams = new Nominatim\ParameterParser();
$sOutputFormat = 'html';
$iDays = $oParams->getInt('days', 1);

View File

@@ -9,7 +9,7 @@ require_once(CONST_BasePath.'/lib/ReverseGeocode.php');
require_once(CONST_BasePath.'/lib/output.php');
ini_set('memory_limit', '200M');
$oParams = new ParameterParser();
$oParams = new Nominatim\ParameterParser();
$bAsGeoJSON = $oParams->getBool('polygon_geojson');
$bAsKML = $oParams->getBool('polygon_kml');
@@ -39,7 +39,7 @@ $oDB =& getDB();
$hLog = logStart($oDB, 'reverse', $_SERVER['QUERY_STRING'], $aLangPrefOrder);
$oPlaceLookup = new PlaceLookup($oDB);
$oPlaceLookup = new Nominatim\PlaceLookup($oDB);
$oPlaceLookup->setLanguagePreference($aLangPrefOrder);
$oPlaceLookup->setIncludeAddressDetails($oParams->getBool('addressdetails', true));
$oPlaceLookup->setIncludeExtraTags($oParams->getBool('extratags', false));
@@ -52,7 +52,7 @@ $fLon = $oParams->getFloat('lon');
if ($sOsmType && $iOsmId > 0) {
$aPlace = $oPlaceLookup->lookupOSMID($sOsmType, $iOsmId);
} elseif ($fLat !== false && $fLon !== false) {
$oReverseGeocode = new ReverseGeocode($oDB);
$oReverseGeocode = new Nominatim\ReverseGeocode($oDB);
$oReverseGeocode->setZoom($oParams->getInt('zoom', 18));
$aLookup = $oReverseGeocode->lookup($fLat, $fLon);

View File

@@ -9,9 +9,9 @@ require_once(CONST_BasePath.'/lib/output.php');
ini_set('memory_limit', '200M');
$oDB =& getDB();
$oParams = new ParameterParser();
$oParams = new Nominatim\ParameterParser();
$oGeocode = new Geocode($oDB);
$oGeocode = new Nominatim\Geocode($oDB);
$aLangPrefOrder = $oParams->getPreferredLanguages();
$oGeocode->setLanguagePreference($aLangPrefOrder);
@@ -64,7 +64,7 @@ if (CONST_Search_BatchMode && isset($_GET['batch'])) {
$aBatchResults = array();
foreach ($aBatch as $aBatchParams) {
$oBatchGeocode = clone $oGeocode;
$oBatchParams = new ParameterParser($aBatchParams);
$oBatchParams = new Nominatim\ParameterParser($aBatchParams);
$oBatchGeocode->loadParamArray($oBatchParams);
$oBatchGeocode->setQueryFromParams($oBatchParams);
$aSearchResults = $oBatchGeocode->lookup();