Exemple #1
0
 function __construct()
 {
     $method = isset($_GET['method']) ? $_GET['method'] : false;
     if (!$method) {
         $this->error("No method given");
     } else {
         switch ($method) {
             case "tweets":
                 $call = new Tweets();
                 break;
             case "reverse.geocode":
                 $call = new ReverseGeocode();
                 break;
             default:
                 $this->error("Invalid method name");
         }
         if ($call->getResponse()) {
             $this->output($call->getResponse());
         } else {
             $this->error("Error while doing the call");
         }
     }
 }
Exemple #2
0
}
$oDB =& getDB();
ini_set('memory_limit', '200M');
// Format for output
$sOutputFormat = 'xml';
if (isset($_GET['format']) && ($_GET['format'] == 'html' || $_GET['format'] == 'xml' || $_GET['format'] == 'json' || $_GET['format'] == 'jsonv2')) {
    $sOutputFormat = $_GET['format'];
}
// Preferred language
$aLangPrefOrder = getPreferredLanguages();
$hLog = logStart($oDB, 'reverse', $_SERVER['QUERY_STRING'], $aLangPrefOrder);
if (isset($_GET['osm_type']) && isset($_GET['osm_id']) && (int) $_GET['osm_id'] && ($_GET['osm_type'] == 'N' || $_GET['osm_type'] == 'W' || $_GET['osm_type'] == 'R')) {
    $aLookup = array('osm_type' => $_GET['osm_type'], 'osm_id' => $_GET['osm_id']);
} else {
    if (isset($_GET['lat']) && isset($_GET['lon']) && preg_match('/^[+-]?[0-9]*\\.?[0-9]+$/', $_GET['lat']) && preg_match('/^[+-]?[0-9]*\\.?[0-9]+$/', $_GET['lon'])) {
        $oReverseGeocode = new ReverseGeocode($oDB);
        $oReverseGeocode->setLanguagePreference($aLangPrefOrder);
        $oReverseGeocode->setLatLon($_GET['lat'], $_GET['lon']);
        $oReverseGeocode->setZoom(@$_GET['zoom']);
        $aLookup = $oReverseGeocode->lookup();
        if (CONST_Debug) {
            var_dump($aLookup);
        }
    } else {
        $aLookup = null;
    }
}
if ($aLookup) {
    $oPlaceLookup = new PlaceLookup($oDB);
    $oPlaceLookup->setLanguagePreference($aLangPrefOrder);
    $oPlaceLookup->setIncludeAddressDetails(getParamBool('addressdetails', true));
Exemple #3
0
}
// Show address breakdown
$bShowAddressDetails = true;
if (isset($_GET['addressdetails'])) {
    $bShowAddressDetails = (bool) $_GET['addressdetails'];
}
// Preferred language
$aLangPrefOrder = getPreferredLanguages();
$hLog = logStart($oDB, 'reverse', $_SERVER['QUERY_STRING'], $aLangPrefOrder);
if (isset($_GET['osm_type']) && isset($_GET['osm_id']) && (int) $_GET['osm_id'] && ($_GET['osm_type'] == 'N' || $_GET['osm_type'] == 'W' || $_GET['osm_type'] == 'R')) {
    $oPlaceLookup = new PlaceLookup($oDB);
    $oPlaceLookup->setLanguagePreference($aLangPrefOrder);
    $oPlaceLookup->setIncludeAddressDetails($bShowAddressDetails);
    $oPlaceLookup->setOSMID($_GET['osm_type'], $_GET['osm_id']);
    $aPlace = $oPlaceLookup->lookup();
} else {
    if (isset($_GET['lat']) && isset($_GET['lon']) && preg_match('/^[+-]?[0-9]*\\.?[0-9]+$/', $_GET['lat']) && preg_match('/^[+-]?[0-9]*\\.?[0-9]+$/', $_GET['lon'])) {
        $oReverseGeocode = new ReverseGeocode($oDB);
        $oReverseGeocode->setLanguagePreference($aLangPrefOrder);
        $oReverseGeocode->setIncludeAddressDetails($bShowAddressDetails);
        $oReverseGeocode->setLatLon($_GET['lat'], $_GET['lon']);
        $oReverseGeocode->setZoom(@$_GET['zoom']);
        $aPlace = $oReverseGeocode->lookup();
    } else {
        $aPlace = null;
    }
}
if (CONST_Debug) {
    exit;
}
include CONST_BasePath . '/lib/template/address-' . $sOutputFormat . '.php';
Exemple #4
0
#!/usr/bin/php -Cq
<?php 
require_once dirname(dirname(__FILE__)) . '/lib/init-cmd.php';
ini_set('memory_limit', '800M');
$aCMDOptions = array("Tools to warm nominatim db", array('help', 'h', 0, 1, 0, 0, false, 'Show Help'), array('quiet', 'q', 0, 1, 0, 0, 'bool', 'Quiet output'), array('verbose', 'v', 0, 1, 0, 0, 'bool', 'Verbose output'), array('reverse-only', '', 0, 1, 0, 0, 'bool', 'Warm reverse only'), array('search-only', '', 0, 1, 0, 0, 'bool', 'Warm reverse only'));
getCmdOpt($_SERVER['argv'], $aCMDOptions, $aResult, true, true);
require_once CONST_BasePath . '/lib/log.php';
require_once CONST_BasePath . '/lib/Geocode.php';
require_once CONST_BasePath . '/lib/PlaceLookup.php';
require_once CONST_BasePath . '/lib/ReverseGeocode.php';
$oDB =& getDB();
$bVerbose = $aResult['verbose'];
if (!$aResult['search-only']) {
    $oReverseGeocode = new ReverseGeocode($oDB);
    $oReverseGeocode->setIncludeAddressDetails(true);
    echo "Warm reverse: ";
    if ($bVerbose) {
        echo "\n";
    }
    for ($i = 0; $i < 1000; $i++) {
        $fLat = rand(-9000, 9000) / 100;
        $fLon = rand(-18000, 18000) / 100;
        if ($bVerbose) {
            echo "{$fLat}, {$fLon} = ";
        }
        $oReverseGeocode->setLanguagePreference(array('en'));
        $oReverseGeocode->setLatLon($fLat, $fLon);
        $oReverseGeocode->setZoom(20);
        $aDetails = $oReverseGeocode->lookup();
        if ($bVerbose) {
            echo $aDetails['langaddress'] . "\n";