<?php |
<?php |
|
|
|
/* |
|
* Copyright 2010,2011 Alexander Sadleir |
|
|
|
Licensed under the Apache License, Version 2.0 (the "License"); |
|
you may not use this file except in compliance with the License. |
|
You may obtain a copy of the License at |
|
|
|
http://www.apache.org/licenses/LICENSE-2.0 |
|
|
|
Unless required by applicable law or agreed to in writing, software |
|
distributed under the License is distributed on an "AS IS" BASIS, |
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|
See the License for the specific language governing permissions and |
|
limitations under the License. |
|
*/ |
// you have to open the session to be able to modify or remove it |
// you have to open the session to be able to modify or remove it |
session_start(); |
session_start(); |
if (isset($_REQUEST['service_period'])) { |
if (isset($_REQUEST['service_period'])) { |
$_SESSION['service_period'] = filter_var($_REQUEST['service_period'], FILTER_SANITIZE_STRING); |
$_SESSION['service_period'] = filter_var($_REQUEST['service_period'], FILTER_SANITIZE_STRING); |
sessionUpdated(); |
sessionUpdated(); |
} |
} |
if (isset($_REQUEST['time'])) { |
if (isset($_REQUEST['time'])) { |
$_SESSION['time'] = filter_var($_REQUEST['time'], FILTER_SANITIZE_STRING); |
$_SESSION['time'] = filter_var($_REQUEST['time'], FILTER_SANITIZE_STRING); |
sessionUpdated(); |
sessionUpdated(); |
} |
} |
if (isset($_REQUEST['geolocate']) && $_REQUEST['geolocate'] != "Enter co-ordinates or address here") { |
if (isset($_REQUEST['geolocate']) && $_REQUEST['geolocate'] != "Enter co-ordinates or address here") { |
$geocoded = false; |
$geocoded = false; |
if (isset($_REQUEST['lat']) && isset($_REQUEST['lon'])) { |
if (isset($_REQUEST['lat']) && isset($_REQUEST['lon'])) { |
$_SESSION['lat'] = trim(filter_var($_REQUEST['lat'], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION)); |
$_SESSION['lat'] = trim(filter_var($_REQUEST['lat'], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION)); |
$_SESSION['lon'] = trim(filter_var($_REQUEST['lon'], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION)); |
$_SESSION['lon'] = trim(filter_var($_REQUEST['lon'], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION)); |
} |
} else { |
else { |
if (startsWith($geolocate, "-")) { |
$geolocate = filter_var($_REQUEST['geolocate'], FILTER_SANITIZE_URL); |
$locateparts = explode(",", $geolocate); |
if (startsWith($geolocate, "-")) { |
$_SESSION['lat'] = $locateparts[0]; |
$locateparts = explode(",", $geolocate); |
$_SESSION['lon'] = $locateparts[1]; |
$_SESSION['lat'] = $locateparts[0]; |
} else if (strpos($geolocate, "(") !== false) { |
$_SESSION['lon'] = $locateparts[1]; |
$geoParts = explode("(", $geolocate); |
} |
$locateparts = explode(",", str_replace(")", "", $geoParts[1])); |
else { |
$_SESSION['lat'] = $locateparts[0]; |
$contents = geocode($geolocate, true); |
$_SESSION['lon'] = $locateparts[1]; |
print_r($contents); |
} else { |
if (isset($contents[0]->centroid)) { |
$contents = geocode($geolocate, true); |
$geocoded = true; |
print_r($contents); |
$_SESSION['lat'] = $contents[0]->centroid->coordinates[0]; |
if (isset($contents[0]->centroid)) { |
$_SESSION['lon'] = $contents[0]->centroid->coordinates[1]; |
$geocoded = true; |
} |
$_SESSION['lat'] = $contents[0]->centroid->coordinates[0]; |
else { |
$_SESSION['lon'] = $contents[0]->centroid->coordinates[1]; |
$_SESSION['lat'] = ""; |
} else { |
$_SESSION['lon'] = ""; |
$_SESSION['lat'] = ""; |
} |
$_SESSION['lon'] = ""; |
} |
} |
} |
} |
if ($_SESSION['lat'] != "" && isAnalyticsOn()) { |
} |
trackEvent("Geolocation","Updated Location", "Geocoded - ".($geocoded ? "Yes" : "No")); |
sessionUpdated(); |
} |
|
sessionUpdated(); |
|
} |
} |
|
|
function sessionUpdated() { |
function sessionUpdated() { |
$_SESSION['lastUpdated'] = time(); |
$_SESSION['lastUpdated'] = time(); |
} |
} |
|
|
// timeoutSession |
// timeoutSession |
$TIMEOUT_LIMIT = 60*5; // 5 minutes |
$TIMEOUT_LIMIT = 60 * 5; // 5 minutes |
if (isset($_SESSION['lastUpdated']) && $_SESSION['lastUpdated']+$TIMEOUT_LIMIT < time()) { |
if (isset($_SESSION['lastUpdated']) && $_SESSION['lastUpdated'] + $TIMEOUT_LIMIT < time()) { |
debug ("Session timeout ".($_SESSION['lastUpdated']+$TIMEOUT_LIMIT).">".time(),"session"); |
debug("Session timeout " . ($_SESSION['lastUpdated'] + $TIMEOUT_LIMIT) . ">" . time(), "session"); |
session_destroy(); |
session_destroy(); |
session_start(); |
session_start(); |
} |
} |
|
|
//debug(print_r($_SESSION, true) , "session"); |
//debug(print_r($_SESSION, true) , "session"); |
|
function current_time() { |
|
return ($_SESSION['time'] ? $_SESSION['time'] : date("H:i:s")); |
|
} |
|
|
function current_time() { |
|
return ($_SESSION['time']? $_SESSION['time'] : date("H:i:s")); |
|
} |
|
?> |
?> |
|
|