--- a/include/common-template.inc.php +++ b/include/common-template.inc.php @@ -1,4 +1,20 @@ <?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. + */ // Copyright 2009 Google Inc. All Rights Reserved. $GA_ACCOUNT = "MO-22173039-1"; @@ -11,7 +27,7 @@ $url.= $GA_PIXEL . "?"; $url.= "utmac=" . $GA_ACCOUNT; $url.= "&utmn=" . rand(0, 0x7fffffff); - $referer = $_SERVER["HTTP_REFERER"]; + $referer = (isset($_SERVER["HTTP_REFERER"]) ? $_SERVER["HTTP_REFERER"] : ""); $query = $_SERVER["QUERY_STRING"]; $path = $_SERVER["REQUEST_URI"]; if (empty($referer)) { @@ -26,7 +42,7 @@ } function include_header($pageTitle, $pageType, $opendiv = true, $geolocate = false, $datepicker = false) { - global $basePath, $serviceAlertsEnabled; + global $basePath, $GTFSREnabled; echo ' <!DOCTYPE html> <html lang="en"> @@ -38,15 +54,19 @@ <link rel="dns-prefetch" href="//code.jquery.com"> <link rel="dns-prefetch" href="//ajax.googleapis.com"> <link rel="stylesheet" href="' . $basePath . 'css/jquery-ui-1.8.12.custom.css" />'; + $jqmVersion = "1.0rc1"; if (isDebugServer()) { - $jqmcss = $basePath . 'css/jquery.mobile-1.0b2.css'; - $jqjs = $basePath . 'js/jquery-1.6.2.min.js'; - $jqmjs = $basePath . 'js/jquery.mobile-1.0b2.js'; + $jqmcss = $basePath . "css/jquery.mobile-$jqmVersion.css"; + $jqjs = $basePath . "js/jquery-1.6.2.min.js"; + $jqmjs = $basePath . "js/jquery.mobile-$jqmVersion.js"; } else { - $jqmcss = "//code.jquery.com/mobile/1.0b2/jquery.mobile-1.0b2.min.css"; - $jqjs = "//ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"; - $jqmjs = "//code.jquery.com/mobile/1.0b2/jquery.mobile-1.0b2.min.js"; - } + $jqmcss = "//code.jquery.com/mobile/$jqmVersion/jquery.mobile-$jqmVersion.min.css"; + $jqjs = "//ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"; + $jqmjs = "//code.jquery.com/mobile/$jqmVersion/jquery.mobile-$jqmVersion.min.js"; + + } + $jqmcss = $basePath . "css/jquery.mobile-b90eab4935.css"; + $jqmjs = $basePath . "js/jquery.mobile-b90eab4935.js"; echo '<link rel="stylesheet" href="' . $jqmcss . '" /> <script src="' . $jqjs . '"></script> <script>$(document).bind("mobileinit", function(){ @@ -87,7 +107,7 @@ }'; echo '</style>'; echo '<link rel="stylesheet" href="' . $basePath . 'css/local.css.php" />'; - if (strstr($_SERVER['HTTP_USER_AGENT'], 'iPhone') || strstr($_SERVER['HTTP_USER_AGENT'], 'iPod') || strstr($_SERVER['HTTP_USER_AGENT'], 'iPad')) { + if (isIOSDevice()){ echo '<meta name="apple-mobile-web-app-capable" content="yes" /> <meta name="apple-mobile-web-app-status-bar-style" content="black" /> <link rel="apple-touch-startup-image" href="startup.png" /> @@ -152,6 +172,7 @@ </div><!-- /header --> <a name="maincontent" id="maincontent"></a> <div data-role="content"> '; + if ($GTFSREnabled) { $overrides = getServiceOverride(); if ($overrides['service_id']) { if ($overrides['service_id'] == "noservice") { @@ -161,11 +182,12 @@ echo '<div id="servicewarning">Buses are running on an altered timetable today due to industrial action/public holiday. See <a href="http://www.action.act.gov.au">http://www.action.act.gov.au</a> for details.</div>'; } } - if ($GTFSREnabled) { $serviceAlerts = getServiceAlertsAsArray("agency", "0"); - foreach ($serviceAlerts['entity'] as $entity) { - echo "<div id='servicewarning'>" . date("F j, g:i a", strtotime($entity['alert']['active_period'][0]['start'])) . " to " . date("F j, g:i a", strtotime($entity['alert']['active_period'][0]['end'])) . "{$entity['alert']['header_text']['translation'][0]['text']}<br>Warning: {$entity['alert']['description_text']['translation'][0]['text']} - <br><a href='{$entity['alert']['url']['translation'][0]['text']}'>Source</a> </div>"; + if (isset($serviceAlerts['entity']) && sizeof($serviceAlerts['entity']) > 0) { + foreach ($serviceAlerts['entity'] as $entity) { + echo "<div id='servicewarning'>" . date("F j, g:i a", strtotime($entity['alert']['active_period'][0]['start'])) . " to " . date("F j, g:i a", strtotime($entity['alert']['active_period'][0]['end'])) . "{$entity['alert']['header_text']['translation'][0]['text']}<br>Warning: {$entity['alert']['description_text']['translation'][0]['text']} + <br><a href='{$entity['alert']['url']['translation'][0]['text']}'>Source</a> </div>"; + } } } } @@ -222,5 +244,36 @@ } } +//stop list collapsing +function stopCompare($stopName) { + return substr(trim(preg_replace("/\(Platform.*/", "", $stopName)),0,9); +} +function stopGroupTitle($stopName,$stopdesc) { + if (preg_match("/Dr |Cct |Cir |Av |St |Cr |Parade |Way |Bank /",$stopName)) { + $descParts = explode("<br>",$stopdesc); + return trim(str_replace("Street: ","",$descParts[0])); + } else { + return trim(preg_replace("/\(Platform.*/", "",$stopName)); + } +} + +function viaPointNames($tripid, $stop_sequence = "") { + $viaPointNames = Array(); + foreach (viaPoints($tripid, $stop_sequence) as $point) { + if (strstr($point['stop_name'], "Station") + || strstr($point['stop_name'], "Shops") + || strstr($point['stop_name'], "CIT") + || strstr($point['stop_name'], "School") + || strstr($point['stop_name'], "University") + ) { + $viaPointNames[] = $point['stop_name']; + } + } + if (sizeof($viaPointNames) > 0) { + return r_implode(", ", $viaPointNames); + } else { + return ""; + } +} ?>