Beispiel #1
0
<?php

require_once "./../../../../../wp-load.php";
if (isset($_GET['ref'])) {
    switch ($_GET['ref']) {
        // Format data to be readable by jQuery UI
        case 'filter':
            $google_data = estetico_get_address_data_from_google($_GET['term']);
            $data = array();
            foreach ($google_data->results as $result) {
                $address_components = array();
                foreach ($result->address_components as $component) {
                    $address_components[] = $component->long_name;
                }
                $data[] = array('id' => join(', ', $address_components), 'value' => join(', ', $address_components), 'label' => join(', ', $address_components), 'geometry' => $result->geometry);
            }
            break;
    }
} else {
    $data = estetico_get_address_data_from_google($_GET['address']);
}
header("Content-Type: application/json; encoding=utf-8");
echo json_encode($data);
exit;
Beispiel #2
0
/**
 * Use Google Maps API to find location lat/lng
 *
 * @param $address string - An address to look for
 * @param $cache_result boolean - Cache results for next call
 */
function estetico_get_latlng_by_address($address, $cache_result = false)
{
    static $latlng = array();
    $address_md5 = md5($address);
    if (isset($latlng[$address_md5])) {
        return $latlng[$address_md5];
    }
    $data = estetico_get_address_data_from_google($address);
    if ($data === false) {
        return false;
    }
    $return = $data->results[0]->geometry->location;
    if ($cache_result) {
        $latlng[$address_md5] = $return;
    }
    return $return;
}