From 1b23808772e1158603b93a24c5df241c46fae756 Mon Sep 17 00:00:00 2001 From: Carson Fleming Date: Wed, 19 Apr 2017 10:21:52 -0400 Subject: Changed response to account activation --- dash/dash_functions.php | 12 ++++++++++++ dash/profile.php | 3 +++ 2 files changed, 15 insertions(+) (limited to 'dash') diff --git a/dash/dash_functions.php b/dash/dash_functions.php index 6551e15..2f6c794 100644 --- a/dash/dash_functions.php +++ b/dash/dash_functions.php @@ -169,4 +169,16 @@ function hire_trigger ($rid) { ); bulletin_mail($rinfo['email'], 'You\'ve Been Hired for "'.$rinfo['title'].'"', tpl($options, 'hire_eml.tpl')); } +function geolocate ($addr, $zip) { + $apireturn = json_decode(file_get_contents('https://maps.google.com/maps/api/geocode/json?sensor=false&address='.urlencode($addr.' '.$zip)), true); + if ($apireturn['status'] != 'OK') return false; + $latlong = $apireturn['results']['geometry']['location']; + return array($latlong['lat'], $latlong['lng']); +} +function geodistance ($pt1, $pt2) { + + $a = pow(sin(deg2rad($pt2[0]-$pt1[0])), 2)+cos(deg2rad($pt1[0]))*cos($pt2[0])*pow(sin(deg2rad($pt2[1]-$pt1[1])/2), 2); + $b = 2*atan2(sqrt($a), sqrt(1-$a)); + return $b*3960; +} ?> diff --git a/dash/profile.php b/dash/profile.php index d8e4af3..d730dc9 100644 --- a/dash/profile.php +++ b/dash/profile.php @@ -74,6 +74,9 @@ $result->free(); escape_string($_POST['bio']).'\''; + if (!empty($_POST['address'])) { + if (!geolocate($_POST['address'], $b_user['zipcode'])) dash_fatal('The address provided is not valid.'); + } $addr = empty($_POST['address']) ? 'NULL' : '\''.$db->escape_string($_POST['address']).'\''; $patterns = array( 'email' => '/^.+@.+\..+$/', -- cgit v1.2.3