Example #1
0
 public static function run()
 {
     // Jump ship if no key has been specified
     if (!Config::has('locate::options.maxmind_key')) {
         return false;
     }
     $options = array('l' => Config::get('locate::options.maxmind_key'), 'i' => Locate::ip());
     $response = @file_get_contents('http://geoip.maxmind.com/b?' . http_build_query($options));
     if ($response !== false) {
         $response = explode(',', $response);
         // Verify fields
         if (isset($response[5]) && $response[5] == 'IP_NOT_FOUND') {
             return false;
         }
         $required_fields = array(1, 2, 3, 4);
         foreach ($required_fields as $field) {
             if (!isset($response[$field]) || empty($response[$field])) {
                 return false;
             }
         }
         $states = Config::get('locate::abbrevs.states');
         return array('city' => $response[2], 'state' => isset($states[$response[1]]) ? $states[$response[1]] : null, 'state_code' => $response[1], 'country' => $response[0], 'country_code' => $response[0], 'zipcode' => null, 'lat' => $response[3], 'lng' => $response[4]);
     }
     return false;
 }
Example #2
0
 public static function run()
 {
     $response = @file_get_contents('http://freegeoip.net/json/' . Locate::ip());
     if ($response !== false) {
         $response = json_decode($response, true);
         // Verify fields
         $required_fields = array('city', 'region_name', 'latitude', 'longitude');
         foreach ($required_fields as $field) {
             if (!isset($response[$field]) || empty($response[$field])) {
                 return false;
             }
         }
         return array('city' => ucwords(strtolower($response['city'])), 'state' => ucwords(strtolower($response['region_name'])), 'state_code' => strtoupper($response['region_code']), 'country' => ucwords(strtolower($response['country_name'])), 'country_code' => strtoupper($response['country_code']), 'zipcode' => $response['zipcode'], 'lat' => $response['latitude'], 'lng' => $response['longitude']);
     }
     return false;
 }
Example #3
0
 public static function run()
 {
     // Jump ship if no key has been specified
     if (!Config::has('locate::options.ipinfodb_key')) {
         return false;
     }
     $options = array('key' => Config::get('locate::options.ipinfodb_key'), 'ip' => Locate::ip(), 'format' => 'json');
     $response = @file_get_contents('http://api.ipinfodb.com/v3/ip-city/?' . http_build_query($options));
     if ($response !== false) {
         $response = json_decode($response, true);
         // Verify fields
         if (!isset($response['statusCode']) || $response['statusCode'] != 'OK') {
             return false;
         }
         $required_fields = array('cityName', 'regionName', 'latitude', 'longitude');
         foreach ($required_fields as $field) {
             if (!isset($response[$field]) || empty($response[$field])) {
                 return false;
             }
         }
         return array('city' => ucwords(strtolower($response['cityName'])), 'state' => ucwords(strtolower($response['regionName'])), 'state_code' => array_search(ucwords(strtolower($response['regionName'])), Config::get('locate::abbrevs.states')), 'country' => ucwords(strtolower($response['countryName'])), 'country_code' => strtoupper($response['countryCode']), 'zipcode' => $response['zipCode'], 'lat' => $response['latitude'], 'lng' => $response['longitude']);
     }
     return false;
 }
if (isset($_POST["password"])) {
    $password = $_POST["password"];
}
if (isset($_POST["endpoint"])) {
    $endpoint = $_POST["endpoint"];
}
$endpoints = new ServiceEndpoints();
if (!isset($submit)) {
    $address = "tel:+16035558278";
    $requestedAccuracy = 1000;
    $username = "******";
    $password = "******";
    $endpoint = $endpoints->getLocationEndpoint();
} else {
    $endpoints->setLocationEndpoint($endpoint);
    $locator = new Locate($endpoints, $username, $password);
    $locationResponse = $locator->locateTerminal($address, $requestedAccuracy);
}
?>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
  <head>    
    <title>
      GSM World | OneAPI Toolkit
    </title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="keywords" content="GSM, GSMA, GSM Association, Mobile, Mobile World Congress, Mobile Asia Congress, Mobile Awards, Global Mobile Awards, 3GSM, Mobile Broadband, Spectrum, Development Fund, Mobile Money, Mobile Innovation, Pathfinder, Open Connectivity, Fraud" />
    <meta name="description" content="The GSMA represents the interests of the worldwide mobile communications industry. Spanning 219 countries, the GSMA unites more than 750 of the world&rsquo;s mobile operators, as well as 200 companies in the broader mobile ecosystem." />
    <link rel="stylesheet" href="screen.css" type="text/css" media="screen" />
    <link rel="stylesheet" href="toolkit.css" type="text/css" media="screen" />

    <link rel="shortcut icon" href="#" />
Example #5
0
        return Response::error('500');
    }
});
Route::filter('auth', function () {
    if (Auth::guest()) {
        return Redirect::to('/');
    }
});
Route::filter('Sentry_auth', function () {
    if (Sentry::guest()) {
        return Redirect::to('/');
    }
});
Route::filter('ip', function () {
    // Create the Eloquent object Visit
    $visit = new Track();
    $browser = new Browser();
    $visit->location = Locate::get('city') . ', ' . Locate::get('state') . ', ' . Locate::get('country');
    $visit->ip_address = Request::ip();
    $visit->request = URI::current();
    if (Auth::check()) {
        $visit->user_id = Auth::user()->id;
    }
    // Browser stats
    $visit->browser = $browser->getBrowser();
    $visit->browser_version = $browser->getVersion();
    $visit->platform = $browser->getPlatform();
    $visit->mobile = $browser->isMobile();
    $visit->robot = $browser->isRobot();
    $visit->save();
});
Example #6
0
<?php

error_log('');
error_log('');
error_log('');
error_log('');
error_log('');
error_log('including OneAPIConfig.php');
require_once 'OneAPIConfig.php';
error_log('Common directory is ' . $ONEAPICOMMON);
error_log('including endpoints');
require_once $ONEAPICOMMON . 'endpoints/ServiceEndpoints.php';
error_log('including Locate.php');
require_once $ONEAPICOMMON . 'location/Locate.php';
$endpoints = new ServiceEndpoints();
error_log('Creating a locate object');
$locator = new Locate(&$endpoints, 'fred.bloggs', '1234');
$locationResponse = $locator->locateTerminal('tel:12345', 500);
error_log(print_r($locator, true));
?>

Testing Locate Call