<?php | <?php |
function include_header($pageTitle, $pageType, $opendiv = true, $geolocate = false) | function include_header($pageTitle, $pageType, $opendiv = true, $geolocate = false, $datepicker = false) |
{ | { |
echo ' | echo ' |
<!DOCTYPE html> | <!DOCTYPE html> |
<html> | <html> |
<head> | <head> |
<title>' . $pageTitle . '</title>'; | <title>' . $pageTitle . '</title>'; |
echo '<link rel="stylesheet" href="css/jquery.ui.datepicker.mobile.css" />'; | if ($datepicker) echo '<link rel="stylesheet" href="css/jquery.ui.datepicker.mobile.css" />'; |
if (isDebugServer()) echo '<link rel="stylesheet" href="css/jquery-mobile-1.0a3.css" /> | if (isDebugServer()) echo '<link rel="stylesheet" href="css/jquery-mobile-1.0a3.css" /> |
<script type="text/javascript" src="js/jquery-1.5.js"></script> | <script type="text/javascript" src="js/jquery-1.5.js"></script> |
<script type="text/javascript" src="js/jquery-mobile-1.0a3.js"></script>'; | <script type="text/javascript" src="js/jquery-mobile-1.0a3.js"></script>'; |
else echo '<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.css" /> | else echo '<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.css" /> |
<script type="text/javascript" src="http://code.jquery.com/jquery-1.5.1.min.js"></script> | <script type="text/javascript" src="http://code.jquery.com/jquery-1.5.1.min.js"></script> |
<script type="text/javascript" src="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.js"></script>'; | <script type="text/javascript" src="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.js"></script>'; |
echo '<script> | if ($datepicker) echo '<script> |
//reset type=date inputs to text | //reset type=date inputs to text |
$( document ).bind( "mobileinit", function(){ | $( document ).bind( "mobileinit", function(){ |
$.mobile.page.prototype.options.degradeInputs.date = true; | $.mobile.page.prototype.options.degradeInputs.date = true; |
}); | }); |
</script> | </script> |
<script src="js/jQuery.ui.datepicker.js"></script> | <script src="js/jQuery.ui.datepicker.js"></script>'; |
<script src="js/jquery.ui.datepicker.mobile.js"></script> | echo '<style type="text/css"> |
<style type="text/css"> | |
.ui-navbar { | .ui-navbar { |
width: 100%; | width: 100%; |
} | } |
.ui-btn-inner { | .ui-btn-inner { |
white-space: normal !important; | white-space: normal !important; |
} | } |
.ui-li-heading { | .ui-li-heading { |
white-space: normal !important; | white-space: normal !important; |
} | } |
.ui-listview-filter { | .ui-listview-filter { |
margin: 0 !important; | margin: 0 !important; |
} | } |
.ui-icon-navigation { | .ui-icon-navigation { |
background-image: url(css/images/113-navigation.png); | background-image: url(css/images/113-navigation.png); |
background-position: 1px 0; | background-position: 1px 0; |
} | } |
#footer { | #footer { |
text-size: 0.75em; | text-size: 0.75em; |
text-align: center; | text-align: center; |
} | } |
body { | body { |
background-color: #F0F0F0; | background-color: #F0F0F0; |
} | } |
</style> | </style> |
<meta name="apple-mobile-web-app-capable" content="yes" /> | <meta name="apple-mobile-web-app-capable" content="yes" /> |
<meta name="apple-mobile-web-app-status-bar-style" content="black" /> | <meta name="apple-mobile-web-app-status-bar-style" content="black" /> |
<link rel="apple-touch-startup-image" href="startup.png" /> | <link rel="apple-touch-startup-image" href="startup.png" /> |
<link rel="apple-touch-icon" href="apple-touch-icon.png" />'; | <link rel="apple-touch-icon" href="apple-touch-icon.png" />'; |
if ($geolocate) { | if ($geolocate) { |
echo "<script> | echo "<script> |
function success(position) { | function success(position) { |
$('#geolocate').val(position.coords.latitude+','+position.coords.longitude); | $('#geolocate').val(position.coords.latitude+','+position.coords.longitude); |
$.ajax({ url: \"common.inc.php?geolocate=yes&lat=\"+position.coords.latitude+\"&lon=\"+position.coords.longitude }); | $.ajax({ url: \"common.inc.php?geolocate=yes&lat=\"+position.coords.latitude+\"&lon=\"+position.coords.longitude }); |
$('#here').click(function(event) { $('#geolocate').val(doAJAXrequestForGeolocSessionHere()); return false;}); | $('#here').click(function(event) { $('#geolocate').val(doAJAXrequestForGeolocSessionHere()); return false;}); |
$('#here').show(); | $('#here').show(); |
} | } |
function error(msg) { | function error(msg) { |
console.log(msg); | console.log(msg); |
} | } |
if (navigator.geolocation) { | if (navigator.geolocation) { |
navigator.geolocation.getCurrentPosition(success, error); | navigator.geolocation.getCurrentPosition(success, error); |
} | } |
</script> "; | </script> "; |
} | } |
echo '</head> | echo '</head> |
<body> | <body> |
'; | '; |
if (isMetricsOn()) { | if (isMetricsOn()) { |
require_once ('owa/owa_env.php'); | require_once ('owa/owa_env.php'); |
require_once (OWA_DIR . 'owa_php.php'); | require_once (OWA_DIR . 'owa_php.php'); |
$owa = new owa_php(); | $owa = new owa_php(); |
global $owaSiteID; | global $owaSiteID; |
$owa->setSiteId($owaSiteID); | $owa->setSiteId($owaSiteID); |
$owa->setPageTitle($pageTitle); | $owa->setPageTitle($pageTitle); |
$owa->setPageType($pageType); | $owa->setPageType($pageType); |
$owa->trackPageView(); | $owa->trackPageView(); |
$owa->placeHelperPageTags(); | $owa->placeHelperPageTags(); |
} | } |
if ($opendiv) { | if ($opendiv) { |
echo '<div data-role="page"> | echo '<div data-role="page"> |
<script> | <script> |
$(document).ready(function () | $(document).ready(function () |
{ | { |
document.title = "' . $pageTitle . '"; | document.title = "' . $pageTitle . '"; |
}); | }); |
</script> | </script> |
<div data-role="header"> | <div data-role="header"> |
<h1>' . $pageTitle . '</h1> | <h1>' . $pageTitle . '</h1> |
</div><!-- /header --> | </div><!-- /header --> |
<div data-role="content"> '; | <div data-role="content"> '; |
} | } |
} | } |
function include_footer() | function include_footer() |
{ | { |
if ($geolocate && isset($_SESSION['lat'])) { | if ($geolocate && isset($_SESSION['lat'])) { |
echo "<script> | echo "<script> |
$('#here').click(function(event) { $('#geolocate').val(doAJAXrequestForGeolocSessionHere()); return false;}); | $('#here').click(function(event) { $('#geolocate').val(doAJAXrequestForGeolocSessionHere()); return false;}); |
$('#here').show(); | $('#here').show(); |
</script>"; | </script>"; |
} | } |
echo '<div id="footer"><a href="about.php">About/Contact Us</a> <a href="feedback.php">Feedback/Bug Report</a></a>'; | echo '<div id="footer"><a href="about.php">About/Contact Us</a> <a href="feedback.php">Feedback/Bug Report</a></a>'; |
echo '</div>'; | echo '</div>'; |
} | } |
function timePlaceSettings($geolocate = false) | function timePlaceSettings($geolocate = false) |
{ | { |
global $service_periods; | global $service_periods; |
$geoerror = false; | $geoerror = false; |
if ($geolocate == true) { | if ($geolocate == true) { |
$geoerror = !isset($_SESSION['lat']) || !isset($_SESSION['lat']) || $_SESSION['lat'] == "" || $_SESSION['lon'] == ""; | $geoerror = !isset($_SESSION['lat']) || !isset($_SESSION['lat']) || $_SESSION['lat'] == "" || $_SESSION['lon'] == ""; |
} | } |
if ($geoerror) { | if ($geoerror) { |
echo '<div class="error">Sorry, but your location could not currently be detected. | echo '<div class="error">Sorry, but your location could not currently be detected. |
Please allow location permission, wait for your location to be detected, | Please allow location permission, wait for your location to be detected, |
or enter an address/co-ordinates in the box below.</div>'; | or enter an address/co-ordinates in the box below.</div>'; |
} | } |
echo '<div data-role="collapsible" data-collapsed="' . !$geoerror . '"> | echo '<div data-role="collapsible" data-collapsed="' . !$geoerror . '"> |
<h3>Change Time/Place (' . (isset($_SESSION['time']) ? $_SESSION['time'] : "Current Time,") . ' '.ucwords(service_period()).')...</h3> | <h3>Change Time/Place (' . (isset($_SESSION['time']) ? $_SESSION['time'] : "Current Time,") . ' '.ucwords(service_period()).')...</h3> |
<form action="" method="post"> | <form action="" method="post"> |
<div class="ui-body"> | <div class="ui-body"> |
<div data-role="fieldcontain"> | <div data-role="fieldcontain"> |
<label for="geolocate"> Current Location: </label> | <label for="geolocate"> Current Location: </label> |
<input type="text" id="geolocate" name="geolocate" value="' . (isset($_SESSION['lat']) && isset($_SESSION['lon']) ? $_SESSION['lat'] . "," . $_SESSION['lon'] : "Enter co-ordinates or address here") . '"/> <a href="#" style="display:none" name="here" id="here"/>Here?</a> | <input type="text" id="geolocate" name="geolocate" value="' . (isset($_SESSION['lat']) && isset($_SESSION['lon']) ? $_SESSION['lat'] . "," . $_SESSION['lon'] : "Enter co-ordinates or address here") . '"/> <a href="#" style="display:none" name="here" id="here"/>Here?</a> |
</div> | </div> |
<div data-role="fieldcontain"> | <div data-role="fieldcontain"> |
<label for="time"> Time: </label> | <label for="time"> Time: </label> |
<input type="time" name="time" id="time" value="' . (isset($_SESSION['time']) ? $_SESSION['time'] : date("H:i")) . '"/> <a href="#" name="currentTime" id="currentTime"/>Current Time?</a> | <input type="time" name="time" id="time" value="' . (isset($_SESSION['time']) ? $_SESSION['time'] : date("H:i")) . '"/> <a href="#" name="currentTime" id="currentTime"/>Current Time?</a> |
</div> | </div> |
<div data-role="fieldcontain"> | <div data-role="fieldcontain"> |
<label for="service_period"> Service Period: </label> | <label for="service_period"> Service Period: </label> |
<select name="service_period">'; | <select name="service_period">'; |
foreach ($service_periods as $service_period) { | foreach ($service_periods as $service_period) { |
echo "<option value=\"$service_period\"" . (service_period() === $service_period ? "SELECTED" : "") . '>' . ucwords($service_period) . '</option>'; | echo "<option value=\"$service_period\"" . (service_period() === $service_period ? "SELECTED" : "") . '>' . ucwords($service_period) . '</option>'; |
} | } |
echo '</select> | echo '</select> |
<a href="#" style="display:none" name="currentPeriod" id="currentPeriod"/>Current Period?</a> | <a href="#" style="display:none" name="currentPeriod" id="currentPeriod"/>Current Period?</a> |
</div> | </div> |
<input type="submit" value="Update"/> | <input type="submit" value="Update"/> |
</form> | </form> |
</div></div>'; | </div></div>'; |
} | } |
?> | ?> |
<?php | <?php |
include ('common.inc.php'); | include ('common.inc.php'); |
include_header("MyWay Balance", "mywayBalance"); | include_header("MyWay Balance", "mywayBalance", true, false, true); |
$return = Array(); | $return = Array(); |
function printBalance($cardNumber, $date, $pwrd) | function printBalance($cardNumber, $date, $pwrd) |
{ | { |
global $return; | global $return; |
$return = json_decode(getPage(curPageURL() . "/myway_api.json.php?card_number=$cardNumber&DOBday={$date[0]}&DOBmonth={$date[1]}&DOByear={$date[2]}&secret_answer=$pwrd"), true); | $return = json_decode(getPage(curPageURL() . "/myway_api.json.php?card_number=$cardNumber&DOBday={$date[0]}&DOBmonth={$date[1]}&DOByear={$date[2]}&secret_answer=$pwrd"), true); |
if (isset($return['error'])) { | if (isset($return['error'])) { |
echo "<font color=red>" . var_dump($return['error']) . "</font>"; | echo "<font color=red>" . var_dump($return['error']) . "</font>"; |
} else { | } else { |
echo "<h2>Balance: " . $return['myway_carddetails']['Card Balance'] . "</h2>"; | echo "<h2>Balance: " . $return['myway_carddetails']['Card Balance'] . "</h2>"; |
echo '<ul data-role="listview" data-inset="true"><li data-role="list-divider"> Recent Transactions </li>'; | echo '<ul data-role="listview" data-inset="true"><li data-role="list-divider"> Recent Transactions </li>'; |
foreach ($return['myway_transactions'] as $transaction) { | foreach ($return['myway_transactions'] as $transaction) { |
echo "<li><b>" . $transaction["Date / Time"] . "</b>"; | echo "<li><b>" . $transaction["Date / Time"] . "</b>"; |
echo "<br><small>" . $transaction["TX Reference No / Type"]. "</small>"; | echo "<br><small>" . $transaction["TX Reference No / Type"]. "</small>"; |
echo '<p class="ui-li-aside">'.$transaction["TX Amount"].'</p>'; | echo '<p class="ui-li-aside">'.$transaction["TX Amount"].'</p>'; |
echo "</li>"; | echo "</li>"; |
} | } |
echo "</ul>"; | echo "</ul>"; |
} | } |
} | } |
if (isset($_REQUEST['card_number']) && isset($_REQUEST['date']) && isset($_REQUEST['secret_answer'])) { | if (isset($_REQUEST['card_number']) && isset($_REQUEST['date']) && isset($_REQUEST['secret_answer'])) { |
$cardNumber = $_REQUEST['card_number']; | $cardNumber = $_REQUEST['card_number']; |
$date = explode("/", $_REQUEST['date']); | $date = explode("/", $_REQUEST['date']); |
$pwrd = $_REQUEST['secret_answer']; | $pwrd = $_REQUEST['secret_answer']; |
if ($_REQUEST['remember'] == true) { | if ($_REQUEST['remember'] == true) { |
$_COOKIE['card_number'] = $cardNumber; | $_COOKIE['card_number'] = $cardNumber; |
$_COOKIE['date'] = $date; | $_COOKIE['date'] = $date; |
$_COOKIE['secret_answer'] = $pwrd; | $_COOKIE['secret_answer'] = $pwrd; |
} | } |
printBalance($cardNumber, $date, $pwrd); | printBalance($cardNumber, $date, $pwrd); |
} | } |
else if (isset($_COOKIE['card_number']) && isset($_COOKIE['date']) && isset($_COOKIE['secret_answer'])) { | else if (isset($_COOKIE['card_number']) && isset($_COOKIE['date']) && isset($_COOKIE['secret_answer'])) { |
$cardNumber = $_COOKIE['card_number']; | $cardNumber = $_COOKIE['card_number']; |
$date = explode("/", $_COOKIE['date']); | $date = explode("/", $_COOKIE['date']); |
$pwrd = $_COOKIE['secret_answer']; | $pwrd = $_COOKIE['secret_answer']; |
printBalance($cardNumber, $date, $pwrd); | printBalance($cardNumber, $date, $pwrd); |
} | } |
else { | else { |
$date = (isset($_REQUEST['date']) ? filter_var($_REQUEST['date'], FILTER_SANITIZE_STRING) : date("m/d/Y")); | $date = (isset($_REQUEST['date']) ? filter_var($_REQUEST['date'], FILTER_SANITIZE_STRING) : date("m/d/Y")); |
echo '<form action="" method="post"> | echo '<form action="" method="post"> |
<div data-role="fieldcontain"> | <div data-role="fieldcontain"> |
<label for="card_number">Card number</label> | <label for="card_number">Card number</label> |
<input type="text" name="card_number" id="card_number" value="' . $card_number . '" /> | <input type="text" name="card_number" id="card_number" value="' . $card_number . '" /> |
</div> | </div> |
<div data-role="fieldcontain"> | <div data-role="fieldcontain"> |
<label for="date"> Date of birth </label> | <label for="date"> Date of birth </label> |
<input type="text" name="date" id="date" value="' . $date . '" /> | <input type="text" name="date" id="date" value="' . $date . '" /> |
</div> | </div> |
<div data-role="fieldcontain"> | <div data-role="fieldcontain"> |
<label for="secret_answer"> Secret question answer </label> | <label for="secret_answer"> Secret question answer </label> |
<input type="text" name="secret_answer" id="secret_answer" value="' . $secret_answer . '" /> | <input type="text" name="secret_answer" id="secret_answer" value="' . $secret_answer . '" /> |
</div> | </div> |
<div data-role="fieldcontain"> | <div data-role="fieldcontain"> |
<label for="remember"> Remember these details? </label> | <label for="remember"> Remember these details? </label> |
<input type="checkbox" name="remember" id="remember" checked="yes" /> | <input type="checkbox" name="remember" id="remember" checked="yes" /> |
</div> | </div> |
<input type="submit" value="Go!"></form>'; | <input type="submit" value="Go!"></form>'; |
} | } |
include_footer(); | include_footer(); |
?> | ?> |
<?php | <?php |
include ('common.inc.php'); | include ('common.inc.php'); |
include_header("Trip Planner", "tripPlanner", true, true); | include_header("Trip Planner", "tripPlanner", true, true, true); |
$from = (isset($_REQUEST['from']) ? filter_var($_REQUEST['from'], FILTER_SANITIZE_STRING) : "Brigalow"); | $from = (isset($_REQUEST['from']) ? filter_var($_REQUEST['from'], FILTER_SANITIZE_STRING) : "Brigalow"); |
$to = (isset($_REQUEST['to']) ? filter_var($_REQUEST['to'], FILTER_SANITIZE_STRING) : "Barry"); | $to = (isset($_REQUEST['to']) ? filter_var($_REQUEST['to'], FILTER_SANITIZE_STRING) : "Barry"); |
$date = (isset($_REQUEST['date']) ? filter_var($_REQUEST['date'], FILTER_SANITIZE_STRING) : date("m/d/Y")); | $date = (isset($_REQUEST['date']) ? filter_var($_REQUEST['date'], FILTER_SANITIZE_STRING) : date("m/d/Y")); |
$time = (isset($_REQUEST['time']) ? filter_var($_REQUEST['time'], FILTER_SANITIZE_STRING) : date("H:i")); | $time = (isset($_REQUEST['time']) ? filter_var($_REQUEST['time'], FILTER_SANITIZE_STRING) : date("H:i")); |
// todo: convert date from form to h:ia? | // todo: convert date from form to h:ia? |
function tripPlanForm($errorMessage = "") | function tripPlanForm($errorMessage = "") |
{ | { |
global $date, $time, $from, $to; | global $date, $time, $from, $to; |
echo "<font color=red>$errorMessage</font>"; | echo "<font color=red>$errorMessage</font>"; |
echo '<form action="tripPlanner.php" method="post"> | echo '<form action="tripPlanner.php" method="post"> |
<div data-role="fieldcontain"> | <div data-role="fieldcontain"> |
<label for="from">I would like to go from</label> | <label for="from">I would like to go from</label> |
<input type="text" name="from" id="from" value="' . $from . '" /> | <input type="text" name="from" id="from" value="' . $from . '" /> |
<a href="#" style="display:none" name="fromHere" id="fromHere"/>Here?</a> | <a href="#" style="display:none" name="fromHere" id="fromHere"/>Here?</a> |
</div> | </div> |
<div data-role="fieldcontain"> | <div data-role="fieldcontain"> |
<label for="to"> to </label> | <label for="to"> to </label> |
<input type="text" name="to" id="to" value="' . $to . '" /> | <input type="text" name="to" id="to" value="' . $to . '" /> |
<a href="#" style="display:none" name="toHere" id="toHere"/>Here?</a> | <a href="#" style="display:none" name="toHere" id="toHere"/>Here?</a> |
</div> | </div> |
<div data-role="fieldcontain"> | <div data-role="fieldcontain"> |
<label for="date"> on </label> | <label for="date"> on </label> |
<input type="text" name="date" id="date" value="' . $date . '" /> | <input type="text" name="date" id="date" value="' . $date . '" /> |
</div> | </div> |
<div data-role="fieldcontain"> | <div data-role="fieldcontain"> |
<label for="time"> at </label> | <label for="time"> at </label> |
<input type="time" name="time" id="time" value="' . $time . '" /> | <input type="time" name="time" id="time" value="' . $time . '" /> |
</div> | </div> |
<input type="submit" value="Go!"></form>'; | <input type="submit" value="Go!"></form>'; |
echo "<script> | echo "<script> |
$('#toHere').click(function(event) { $('#to').val(getCookie('geolocate')); return false;}); | $('#toHere').click(function(event) { $('#to').val(getCookie('geolocate')); return false;}); |
$('#toHere').show(); | $('#toHere').show(); |
$('#fromHere').click(function(event) { $('#from').val(getCookie('geolocate')); return false;}); | $('#fromHere').click(function(event) { $('#from').val(getCookie('geolocate')); return false;}); |
$('#fromHere').show(); | $('#fromHere').show(); |
</script>"; | </script>"; |
} | } |
function processItinerary($itineraryNumber, $itinerary) | function processItinerary($itineraryNumber, $itinerary) |
{ | { |
echo '<div data-role="collapsible" ' . ($itineraryNumber > 0 ? 'data-collapsed="true"' : "") . '> <h3> Option #' . ($itineraryNumber + 1) . ": " . floor($itinerary->duration / 60000) . " minutes ({$itinerary->startTime} to {$itinerary->endTime})</h3><p>"; | echo '<div data-role="collapsible" ' . ($itineraryNumber > 0 ? 'data-collapsed="true"' : "") . '> <h3> Option #' . ($itineraryNumber + 1) . ": " . floor($itinerary->duration / 60000) . " minutes ({$itinerary->startTime} to {$itinerary->endTime})</h3><p>"; |
echo "Walking time: " . floor($itinerary->walkTime / 60000) . " minutes (" . floor($itinerary->walkDistance) . " meters)<br>\n"; | echo "Walking time: " . floor($itinerary->walkTime / 60000) . " minutes (" . floor($itinerary->walkDistance) . " meters)<br>\n"; |
echo "Transit time: " . floor($itinerary->transitTime / 60000) . " minutes<br>\n"; | echo "Transit time: " . floor($itinerary->transitTime / 60000) . " minutes<br>\n"; |
echo "Waiting time: " . floor($itinerary->waitingTime / 60000) . " minutes<br>\n"; | echo "Waiting time: " . floor($itinerary->waitingTime / 60000) . " minutes<br>\n"; |
if (is_array($itinerary->legs->leg)) { | if (is_array($itinerary->legs->leg)) { |
$legMarkers = array(); | $legMarkers = array(); |
foreach ($itinerary->legs->leg as $legNumber => $leg) { | foreach ($itinerary->legs->leg as $legNumber => $leg) { |
$legMarkers[] = array( | $legMarkers[] = array( |
$leg->from->lat, | $leg->from->lat, |
$leg->from->lon | $leg->from->lon |
); | ); |
} | } |
echo '' . staticmap($legMarkers, 0, "iconb", false) . "<br>\n"; | echo '' . staticmap($legMarkers, 0, "iconb", false) . "<br>\n"; |
echo '<ul>'; | echo '<ul>'; |
foreach ($itinerary->legs->leg as $legNumber => $leg) { | foreach ($itinerary->legs->leg as $legNumber => $leg) { |
echo '<li>'; | echo '<li>'; |
processLeg($legNumber, $leg); | processLeg($legNumber, $leg); |
echo "</li>"; | echo "</li>"; |
} | } |
echo "</ul>"; | echo "</ul>"; |
} | } |
else { | else { |
echo '' . staticmap(array( | echo '' . staticmap(array( |
array( | array( |
$itinerary->legs->leg->from->lat, | $itinerary->legs->leg->from->lat, |
$itinerary->legs->leg->from->lon | $itinerary->legs->leg->from->lon |
) | ) |
) , 0, "iconb", false) . "<br>\n"; | ) , 0, "iconb", false) . "<br>\n"; |
processLeg(0, $itinerary->legs->leg); | processLeg(0, $itinerary->legs->leg); |
} | } |
echo "</p></div>"; | echo "</p></div>"; |