<?php |
<?php |
date_default_timezone_set('Australia/ACT'); |
date_default_timezone_set('Australia/ACT'); |
$APIurl = "http://localhost:8765"; |
$APIurl = "http://localhost:8765"; |
$cloudmadeAPIkey = "daa03470bb8740298d4b10e3f03d63e6"; |
|
$googleMapsAPIkey = "ABQIAAAA95XYXN0cki3Yj_Sb71CFvBTPaLd08ONybQDjcH_VdYtHHLgZvRTw2INzI_m17_IoOUqH3RNNmlTk1Q"; |
|
$otpAPIurl = 'http://localhost:8080/opentripplanner-api-webapp/'; |
|
//$debugOkay = Array("session","json","phperror","other"); |
|
$debugOkay = Array( |
$debugOkay = Array( |
"session", |
"session", |
"json", |
"json", |
"phperror", |
"phperror", |
|
"awsgtfs", |
|
"awsotp", |
"other" |
"other" |
); |
); |
|
if (isDebug("awsgtfs")) { |
|
$APIurl = "http://bus-main.lambdacomplex.org:8765"; |
|
} |
|
$cloudmadeAPIkey = "daa03470bb8740298d4b10e3f03d63e6"; |
|
$googleMapsAPIkey = "ABQIAAAA95XYXN0cki3Yj_Sb71CFvBTPaLd08ONybQDjcH_VdYtHHLgZvRTw2INzI_m17_IoOUqH3RNNmlTk1Q"; |
|
$otpAPIurl = 'http://localhost:8080/opentripplanner-api-webapp/'; |
|
if (isDebug("awsotp") || php_uname('n') == "maxious.xen.prgmr.com") { |
|
'http://bus-main.lambdacomplex.org:8080/opentripplanner-api-webapp/'; |
|
} |
if (isDebug("phperror")) error_reporting(E_ALL ^ E_NOTICE); |
if (isDebug("phperror")) error_reporting(E_ALL ^ E_NOTICE); |
include_once ("common-geo.inc.php"); |
include_once ("common-geo.inc.php"); |
include_once ("common-net.inc.php"); |
include_once ("common-net.inc.php"); |
include_once ("common-template.inc.php"); |
include_once ("common-template.inc.php"); |
include_once ("common-transit.inc.php"); |
include_once ("common-transit.inc.php"); |
// 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); |
} |
} |
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); |
} |
} |
if (isset($_REQUEST['geolocate'])) { |
if (isset($_REQUEST['geolocate'])) { |
$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 { |
$geolocate = filter_var($_REQUEST['geolocate'], FILTER_SANITIZE_URL); |
$geolocate = filter_var($_REQUEST['geolocate'], FILTER_SANITIZE_URL); |
echo $_REQUEST['geolocate']; |
echo $_REQUEST['geolocate']; |
if (startsWith($geolocate, "-")) { |
if (startsWith($geolocate, "-")) { |
$locateparts = explode(",", $geolocate); |
$locateparts = explode(",", $geolocate); |
$_SESSION['lat'] = $locateparts[0]; |
$_SESSION['lat'] = $locateparts[0]; |
$_SESSION['lon'] = $locateparts[1]; |
$_SESSION['lon'] = $locateparts[1]; |
} |
} |
else { |
else { |
$contents = geocode($geolocate, true); |
$contents = geocode($geolocate, true); |
print_r($contents); |
print_r($contents); |
if (isset($contents[0]->centroid)) { |
if (isset($contents[0]->centroid)) { |
$geocoded = true; |
$geocoded = true; |
$_SESSION['lat'] = $contents[0]->centroid->coordinates[0]; |
$_SESSION['lat'] = $contents[0]->centroid->coordinates[0]; |
$_SESSION['lon'] = $contents[0]->centroid->coordinates[1]; |
$_SESSION['lon'] = $contents[0]->centroid->coordinates[1]; |
} |
} |
else { |
else { |
$_SESSION['lat'] = ""; |
$_SESSION['lat'] = ""; |
$_SESSION['lon'] = ""; |
$_SESSION['lon'] = ""; |
} |
} |
} |
} |
} |
} |
} |
} |
debug(print_r($_SESSION, true) , "session"); |
debug(print_r($_SESSION, true) , "session"); |
function isDebugServer() |
function isDebugServer() |
{ |
{ |
return $_SERVER['SERVER_NAME'] == "10.0.1.154" || $_SERVER['SERVER_NAME'] == "localhost" || $_SERVER['SERVER_NAME'] == "127.0.0.1" || !$_SERVER['SERVER_NAME']; |
return $_SERVER['SERVER_NAME'] == "10.0.1.154" || $_SERVER['SERVER_NAME'] == "localhost" || $_SERVER['SERVER_NAME'] == "127.0.0.1" || !$_SERVER['SERVER_NAME']; |
} |
} |
function isDebug($debugReason = "other") |
function isDebug($debugReason = "other") |
{ |
{ |
global $debugOkay; |
global $debugOkay; |
return in_array($debugReason, $debugOkay, false) && isDebugServer(); |
return in_array($debugReason, $debugOkay, false) && isDebugServer(); |
} |
} |
function debug($msg, $debugReason = "other") |
function debug($msg, $debugReason = "other") |
{ |
{ |
if (isDebug($debugReason)) echo "\n<!-- " . date(DATE_RFC822) . "\n $msg -->\n"; |
if (isDebug($debugReason)) echo "\n<!-- " . date(DATE_RFC822) . "\n $msg -->\n"; |
} |
} |
function isJQueryMobileDevice() |
function isJQueryMobileDevice() |
{ |
{ |
// http://forum.jquery.com/topic/what-is-the-best-way-to-detect-all-useragents-which-can-handle-jquery-mobile#14737000002087897 |
// http://forum.jquery.com/topic/what-is-the-best-way-to-detect-all-useragents-which-can-handle-jquery-mobile#14737000002087897 |
$user_agent = $_SERVER['HTTP_USER_AGENT']; |
$user_agent = $_SERVER['HTTP_USER_AGENT']; |
return preg_match('/iphone/i', $user_agent) |
return preg_match('/iphone/i', $user_agent) || preg_match('/android/i', $user_agent) || preg_match('/webos/i', $user_agent) || preg_match('/ios/i', $user_agent) || preg_match('/bada/i', $user_agent) || preg_match('/maemo/i', $user_agent) || preg_match('/meego/i', $user_agent) || preg_match('/fennec/i', $user_agent) || (preg_match('/symbian/i', $user_agent) && preg_match('/s60/i', $user_agent) && $browser['majorver'] >= 5) || (preg_match('/symbian/i', $user_agent) && preg_match('/platform/i', $user_agent) && $browser['majorver'] >= 3) || (preg_match('/blackberry/i', $user_agent) && $browser['majorver'] >= 5) || (preg_match('/opera mobile/i', $user_agent) && $browser['majorver'] >= 10) || (preg_match('/opera mini/i', $user_agent) && $browser['majorver'] >= 5); |
|| preg_match('/android/i', $user_agent) |
|
|| preg_match('/webos/i', $user_agent) |
|
|| preg_match('/ios/i', $user_agent) |
|
|| preg_match('/bada/i', $user_agent) |
|
|| preg_match('/maemo/i', $user_agent) |
|
|| preg_match('/meego/i', $user_agent) |
|
|| preg_match('/fennec/i', $user_agent) |
|
|| (preg_match('/symbian/i', $user_agent) |
|
&& preg_match('/s60/i', $user_agent) |
|
&& $browser['majorver'] >= 5) |
|
|| (preg_match('/symbian/i', $user_agent) |
|
&& preg_match('/platform/i', $user_agent) |
|
&& $browser['majorver'] >= 3) |
|
|| (preg_match('/blackberry/i', $user_agent) |
|
&& $browser['majorver'] >= 5) |
|
|| (preg_match('/opera mobile/i', $user_agent) |
|
&& $browser['majorver'] >= 10) |
|
|| (preg_match('/opera mini/i', $user_agent) |
|
&& $browser['majorver'] >= 5); |
|
} |
} |
function isFastDevice() |
function isFastDevice() |
{ |
{ |
$ua = $_SERVER['HTTP_USER_AGENT']; |
$ua = $_SERVER['HTTP_USER_AGENT']; |
$fastDevices = Array( |
$fastDevices = Array( |
"Mozilla/5.0 (X11;", |
"Mozilla/5.0 (X11;", |
"Mozilla/5.0 (Windows;", |
"Mozilla/5.0 (Windows;", |
"Mozilla/5.0 (iP", |
"Mozilla/5.0 (iP", |
"Mozilla/5.0 (Linux; U; Android", |
"Mozilla/5.0 (Linux; U; Android", |
"Mozilla/4.0 (compatible; MSIE" |
"Mozilla/4.0 (compatible; MSIE" |
); |
); |
$slowDevices = Array( |
$slowDevices = Array( |
"J2ME", |
"J2ME", |
"MIDP", |
"MIDP", |
"Opera/", |
"Opera/", |
"Mozilla/2.0 (compatible;", |
"Mozilla/2.0 (compatible;", |
"Mozilla/3.0 (compatible;" |
"Mozilla/3.0 (compatible;" |
); |
); |
return true; |
return true; |
} |
} |
function array_flatten($a, $f = array()) |
function array_flatten($a, $f = array()) |
{ |
{ |
if (!$a || !is_array($a)) return ''; |
if (!$a || !is_array($a)) return ''; |
foreach ($a as $k => $v) { |
foreach ($a as $k => $v) { |
if (is_array($v)) $f = array_flatten($v, $f); |
if (is_array($v)) $f = array_flatten($v, $f); |
else $f[$k] = $v; |
else $f[$k] = $v; |
} |
} |
return $f; |
return $f; |
} |
} |
function remove_spaces($string) |
function remove_spaces($string) |
{ |
{ |
return str_replace(' ', '', $string); |
return str_replace(' ', '', $string); |
} |
} |
function object2array($object) |
function object2array($object) |
{ |
{ |
if (is_object($object)) { |
if (is_object($object)) { |
foreach ($object as $key => $value) { |
foreach ($object as $key => $value) { |
$array[$key] = $value; |
$array[$key] = $value; |
} |
} |
} |
} |
else { |
else { |
$array = $object; |
$array = $object; |
} |
} |
return $array; |
return $array; |
} |
} |
function startsWith($haystack, $needle, $case = true) |
function startsWith($haystack, $needle, $case = true) |
{ |
{ |
if ($case) { |
if ($case) { |
return (strcmp(substr($haystack, 0, strlen($needle)) , $needle) === 0); |
return (strcmp(substr($haystack, 0, strlen($needle)) , $needle) === 0); |
} |
} |
return (strcasecmp(substr($haystack, 0, strlen($needle)) , $needle) === 0); |
return (strcasecmp(substr($haystack, 0, strlen($needle)) , $needle) === 0); |
} |
} |
|
|
function endsWith($haystack, $needle, $case = true) |
function endsWith($haystack, $needle, $case = true) |
{ |
{ |
if ($case) { |
if ($case) { |
return (strcmp(substr($haystack, strlen($haystack) - strlen($needle)) , $needle) === 0); |
return (strcmp(substr($haystack, strlen($haystack) - strlen($needle)) , $needle) === 0); |
} |
} |
return (strcasecmp(substr($haystack, strlen($haystack) - strlen($needle)) , $needle) === 0); |
return (strcasecmp(substr($haystack, strlen($haystack) - strlen($needle)) , $needle) === 0); |
} |
} |
function bracketsMeanNewLine($input) |
function bracketsMeanNewLine($input) |
{ |
{ |
return str_replace(")", "</small>", str_replace("(", "<br><small>", $input)); |
return str_replace(")", "</small>", str_replace("(", "<br><small>", $input)); |
} |
} |
function sksort(&$array, $subkey = "id", $sort_ascending = false) |
function sksort(&$array, $subkey = "id", $sort_ascending = false) |
{ |
{ |
if (count($array)) $temp_array[key($array) ] = array_shift($array); |
if (count($array)) $temp_array[key($array) ] = array_shift($array); |
foreach ($array as $key => $val) { |
foreach ($array as $key => $val) { |
$offset = 0; |
$offset = 0; |
$found = false; |
$found = false; |
foreach ($temp_array as $tmp_key => $tmp_val) { |
foreach ($temp_array as $tmp_key => $tmp_val) { |
if (!$found and strtolower($val[$subkey]) > strtolower($tmp_val[$subkey])) { |
if (!$found and strtolower($val[$subkey]) > strtolower($tmp_val[$subkey])) { |
$temp_array = array_merge((array)array_slice($temp_array, 0, $offset) , array( |
$temp_array = array_merge((array)array_slice($temp_array, 0, $offset) , array( |
$key => $val |
$key => $val |
) , array_slice($temp_array, $offset)); |
) , array_slice($temp_array, $offset)); |
$found = true; |
$found = true; |
} |
} |
$offset++; |
$offset++; |
} |
} |
if (!$found) $temp_array = array_merge($temp_array, array( |
if (!$found) $temp_array = array_merge($temp_array, array( |
$key => $val |
$key => $val |
)); |
)); |
} |
} |
if ($sort_ascending) $array = array_reverse($temp_array); |
if ($sort_ascending) $array = array_reverse($temp_array); |
else $array = $temp_array; |
else $array = $temp_array; |
} |
} |
?> |
?> |
|
|