<?php |
<?php |
// Copyright 2009 Google Inc. All Rights Reserved. |
// Copyright 2009 Google Inc. All Rights Reserved. |
$GA_ACCOUNT = "MO-22173039-1"; |
$GA_ACCOUNT = "MO-22173039-1"; |
$GA_PIXEL = "/lib/ga.php"; |
$GA_PIXEL = "/lib/ga.php"; |
|
|
function googleAnalyticsGetImageUrl() { |
function googleAnalyticsGetImageUrl() { |
global $GA_ACCOUNT, $GA_PIXEL; |
global $GA_ACCOUNT, $GA_PIXEL; |
$url = ""; |
$url = ""; |
$url .= $GA_PIXEL . "?"; |
$url .= $GA_PIXEL . "?"; |
$url .= "utmac=" . $GA_ACCOUNT; |
$url .= "utmac=" . $GA_ACCOUNT; |
$url .= "&utmn=" . rand(0, 0x7fffffff); |
$url .= "&utmn=" . rand(0, 0x7fffffff); |
$referer = $_SERVER["HTTP_REFERER"]; |
$referer = $_SERVER["HTTP_REFERER"]; |
$query = $_SERVER["QUERY_STRING"]; |
$query = $_SERVER["QUERY_STRING"]; |
$path = $_SERVER["REQUEST_URI"]; |
$path = $_SERVER["REQUEST_URI"]; |
if (empty($referer)) { |
if (empty($referer)) { |
$referer = "-"; |
$referer = "-"; |
} |
} |
$url .= "&utmr=" . urlencode($referer); |
$url .= "&utmr=" . urlencode($referer); |
if (!empty($path)) { |
if (!empty($path)) { |
$url .= "&utmp=" . urlencode($path); |
$url .= "&utmp=" . urlencode($path); |
} |
} |
$url .= "&guid=ON"; |
$url .= "&guid=ON"; |
return str_replace("&", "&", $url); |
return str_replace("&", "&", $url); |
} |
} |
|
|
function include_header($pageTitle, $pageType, $opendiv = true, $geolocate = false, $datepicker = false) |
function include_header($pageTitle, $pageType, $opendiv = true, $geolocate = false, $datepicker = false) |
{ |
{ |
echo ' |
echo ' |
<!DOCTYPE html> |
<!DOCTYPE html> |
<html lang="en"> |
<html lang="en"> |
<head> |
<head> |
<meta charset="UTF-8"> |
<meta charset="UTF-8"> |
<title>' . $pageTitle . '</title> |
<title>' . $pageTitle . '</title> |
<meta name="google-site-verification" |
<meta name="google-site-verification" |
content="-53T5Qn4TB_de1NyfR_ZZkEVdUNcNFSaYKSFkWKx-sY" />'; |
content="-53T5Qn4TB_de1NyfR_ZZkEVdUNcNFSaYKSFkWKx-sY" />'; |
if ($datepicker) 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>$(document).bind("mobileinit", function(){ |
|
$.mobile.ajaxEnabled = false; |
|
}); |
|
</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>'; |
if ($datepicker) 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>'; |
echo '<style type="text/css"> |
echo '<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; |
} |
} |
#jqm-homeheader { |
#jqm-homeheader { |
text-align: center; |
text-align: center; |
} |
} |
.viaPoints { |
.viaPoints { |
display: none; |
display: none; |
text-size: 0.2em; |
text-size: 0.2em; |
} |
} |
.min-width-480px .viaPoints { |
.min-width-480px .viaPoints { |
display: block; |
display: block; |
} |
} |
// source http://webaim.org/techniques/skipnav/ |
// source http://webaim.org/techniques/skipnav/ |
#skip a, #skip a:hover, #skip a:visited |
#skip a, #skip a:hover, #skip a:visited |
{ |
{ |
position:absolute; |
position:absolute; |
left:0px; |
left:0px; |
top:-500px; |
top:-500px; |
width:1px; |
width:1px; |
height:1px; |
height:1px; |
overflow:hidden; |
overflow:hidden; |
} |
} |
|
|
#skip a:active, #skip a:focus |
#skip a:active, #skip a:focus |
{ |
{ |
position:static; |
position:static; |
width:auto; |
width:auto; |
height:auto; |
height:auto; |
} |
} |
</style>'; |
</style>'; |
if (strstr($_SERVER['HTTP_USER_AGENT'], 'iPhone') || strstr($_SERVER['HTTP_USER_AGENT'], 'iPod')) { |
if (strstr($_SERVER['HTTP_USER_AGENT'], 'iPhone') || strstr($_SERVER['HTTP_USER_AGENT'], 'iPod')) { |
echo '<meta name="apple-mobile-web-app-capable" content="yes" /> |
echo '<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;}); |
location.reload(true); |
$('#here').show(); |
|
} |
} |
function error(msg) { |
function error(msg) { |
console.log(msg); |
console.log(msg); |
} |
} |
|
|
|
function geolocate() { |
if (navigator.geolocation) { |
if (navigator.geolocation) { |
var options = { |
var options = { |
enableHighAccuracy: false, |
enableHighAccuracy: false, |
timeout: 60000, |
timeout: 60000, |
maximumAge: 10000 |
maximumAge: 10000 |
} |
} |
navigator.geolocation.getCurrentPosition(success, error, options); |
navigator.geolocation.getCurrentPosition(success, error, options); |
} |
} |
|
} |
</script> "; |
$(document).ready(function() { |
|
$('#here').click(function(event) { $('#geolocate').val(geolocate()); return false;}); |
|
$('#here').show(); |
|
}); |
|
"; |
|
if (!isset($_SESSION['lat']) || $_SESSION['lat'] == "") echo "geolocate();"; |
|
echo "</script> "; |
} |
} |
if (isAnalyticsOn()) echo ' |
if (isAnalyticsOn()) echo ' |
<script type="text/javascript">'." |
<script type="text/javascript">'." |
|
|
var _gaq = _gaq || []; |
var _gaq = _gaq || []; |
_gaq.push(['_setAccount', 'UA-22173039-1']); |
_gaq.push(['_setAccount', 'UA-22173039-1']); |
_gaq.push(['_trackPageview']); |
_gaq.push(['_trackPageview']); |
</script>"; |
</script>"; |
echo '</head> |
echo '</head> |
<body> |
<body> |
<div id="skip"> |
<div id="skip"> |
<a href="#maincontent">Skip to content</a> |
<a href="#maincontent">Skip to content</a> |
</div> |
</div> |
'; |
'; |
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 --> |
<a name="maincontent" id="maincontent"></a> |
<a name="maincontent" id="maincontent"></a> |
<div data-role="content"> '; |
<div data-role="content"> '; |
} |
} |
} |
} |
function include_footer() |
function include_footer() |
{ |
{ |
if ($geolocate && isset($_SESSION['lat'])) { |
|
echo "<script> |
|
$('#here').click(function(event) { $('#geolocate').val(doAJAXrequestForGeolocSessionHere()); return false;}); |
|
$('#here').show(); |
|
</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>'; |
if (isAnalyticsOn()) { |
if (isAnalyticsOn()) { |
echo "<script> (function() { |
echo "<script> (function() { |
var ga = document.createElement('script'); ga.type = |
var ga = document.createElement('script'); ga.type = |
'text/javascript'; ga.async = true; |
'text/javascript'; ga.async = true; |
ga.src = ('https:' == document.location.protocol ? |
ga.src = ('https:' == document.location.protocol ? |
'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; |
'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; |
var s = document.getElementsByTagName('script')[0]; |
var s = document.getElementsByTagName('script')[0]; |
s.parentNode.insertBefore(ga, s); |
s.parentNode.insertBefore(ga, s); |
})();"; |
})();"; |
$googleAnalyticsImageUrl = googleAnalyticsGetImageUrl(); |
$googleAnalyticsImageUrl = googleAnalyticsGetImageUrl(); |
echo '<img src="' . $googleAnalyticsImageUrl . '" />'; |
echo '<img src="' . $googleAnalyticsImageUrl . '" />'; |
} |
} |
} |
} |
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="'.basename($_SERVER['PHP_SELF']).'" method="post"> |
<form action="'.basename($_SERVER['PHP_SELF'])."?".$_SERVER['QUERY_STRING'].'" 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" onClick="var d = new Date();'. "$('#time').val(d.getHours() +':'+ d.getMinutes());".'">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" id="service_period">'; |
<select name="service_period" id="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>'; |
} |
} |
function trackEvent($category, $action, $label = "", $value = -1) { |
function trackEvent($category, $action, $label = "", $value = -1) { |
if (isAnalyticsOn()) { |
if (isAnalyticsOn()) { |
echo "<script> _gaq.push(['_trackEvent', $category, $action".($label != "" ? ", $label" : "").($value != -1 ? ", $value" : "")."]);"; |
echo "<script> _gaq.push(['_trackEvent', $category, $action".($label != "" ? ", $label" : "").($value != -1 ? ", $value" : "")."]);"; |
} |
} |
} |
} |
?> |
?> |
|
|