From: Maxious Date: Thu, 09 Feb 2012 10:03:29 +0000 Subject: Fix service alert display and include stop/route filters X-Git-Url: https://maxious.lambdacomplex.org/git/?p=busui.git&a=commitdiff&h=3413f1469b64b1ec8fe36aaf9ef35e5fe1b26fe9 --- Fix service alert display and include stop/route filters --- --- a/about.php +++ b/about.php @@ -34,9 +34,10 @@
Some icons by Joseph Wain / glyphish.com
Native clients also available for iPhone(cbrTimetable by Sandor Kolotenko - , ACT Buses by David Sullivan) - , Android (MyBus 2.0 by Imagine Team) - and Windows Phone 7 (TransHub Canberra by Soul Solutions) + , ACT Buses by David Sullivan, Bus Trips ACT by Molson Chengalath) + , Android (MyBus 2.0 by Imagine Team, GetMe2 Canberra by +Colin Thompson ) + and Windows Phone 7 (TransHub Canberra by Soul Solutions) Other web clients include iTranzit.
GTFS-realtime API: Alerts and Trip Updates (but only Cancelled or Stop Skipped) --- a/aws/busuidb.sh +++ b/aws/busuidb.sh @@ -7,8 +7,13 @@ psql -d transitdata -f /var/www/transitdata.cbrfeed.sql #createuser transitdata -SDRP #password transitdata -#psql -d transitdata -c "GRANT SELECT ON TABLE agency,calendar,calendar_dates,routes,stop_times,stops,trips TO transitdata;" +#psql -d transitdata -c "GRANT SELECT ON TABLE agency,calendar,calendar_dates,routes,stop_times,stops,trips\ +#,servicealerts_alerts,servicealerts_informed TO transitdata;" #psql -d transitdata -c "GRANT SELECT,INSERT ON TABLE myway_observations,myway_routes,myway_stops,myway_timingdeltas TO transitdata;" #psql -d transitdata -c "GRANT SELECT,INSERT,UPDATE ON TABLE myway_routes,myway_stops TO transitdata;" ##psql -d transitdata -c "GRANT SELECT ON ALL TABLES IN SCHEMA public TO transitdata;" +## INSERT INTO geometry_columns(f_table_catalog, f_table_schema, f_table_name, f_geometry_column, coord_dimension, srid, "type") +##SELECT '', 'public', 'shapes', 'shape_pt', ST_CoordDim(shape_pt), ST_SRID(shape_pt), GeometryType(shape_pt) +##FROM shapes LIMIT 1; php /var/www/updatedb.php + --- a/aws/transitdata.sql +++ b/aws/transitdata.sql @@ -13382,7 +13382,8 @@ shape_pt_lat double precision, shape_pt_lon double precision, shape_pt_sequence integer NOT NULL, - shape_dist_traveled integer + shape_dist_traveled integer, + shape_pt geography, ); --- a/geo/route.kml.php +++ b/geo/route.kml.php @@ -1,30 +1,105 @@ '; echo ' - + + + '; + + + '; $route = getRoute($routeid); - echo "\n\n"; - $link = curPageURL()."/../trip.php?routeid=".htmlspecialchars ($route["route_id"]); - echo "".$route['route_short_name'].""; - echo ''; - echo ''.$route['route_short_name']." ".$route['route_long_name']."]]> "; -echo "#yellowLineGreenPoly"; +echo "\n\n"; +$_REQUEST['time'] = "12:00"; +$trip = getRouteNextTrip($routeid, 0); +$link = curPageURL() . "/../trip.php?routeid=" . htmlspecialchars($route["route_id"]. "&directionid=0&tripid=".$trip['trip_id']) ; +echo "" . $route['route_short_name'] . " Direction 0 "; +echo ''; +echo '' . $route['route_short_name'] . " Direction 0]]> "; +echo "#yellowLineYellowPoly"; - $trips = getRouteTrips($routeid); - echo getTripShape($trips[0]['trip_id']); +echo getTripShape($trip['trip_id']); + echo "\n"; +$stops = Array(); +foreach (getTripStops($trip['trip_id']) as $stop) { + $stop['style'] = "#ylw-pushpin"; + $stops[$stop['stop_id']] = $stop; +} -echo "\n\n"; + +echo "\n\n"; +$trip = getRouteNextTrip($routeid, 1); +$link = curPageURL() . "/../trip.php?routeid=" . htmlspecialchars($route["route_id"]. "&directionid=1&tripid=".$trip['trip_id']) ; +echo "" . $route['route_short_name'] . " Direction 1 "; +echo ''; +echo '' . $route['route_short_name'] . " Direction 1]]> "; +echo "#blueLineBluePoly"; + +echo getTripShape($trip['trip_id']); + echo "\n"; +foreach (getTripStops($trip['trip_id']) as $stop) { + if (isset($stops[$stop['stop_id']])) { + $stop['style'] = "#grn-pushpin"; + } else { + $stop['style'] = "#blue-pushpin"; + } + $stops[$stop['stop_id']] = $stop; +} +foreach ($stops as $stop) { + echo "\n\n"; + $link = curPageURL() . '/../stop.php?stopid=' . htmlspecialchars($stop['stop_id']); + echo "" . htmlspecialchars($stop['stop_name']) . ""; + echo ''; + echo '' . htmlspecialchars($stop['stop_name']) . "]]> "; + echo "" . $stop['style'] . ""; + echo $stop['positionkml']; + echo "\n"; +} + +echo "\n"; ?> --- a/geo/stops.kml.php +++ b/geo/stops.kml.php @@ -1,11 +1,13 @@ createElementNS('http://earth.google.com/kml/2.1', 'kml'); +$node = $dom->createElementNS('http://www.opengis.net/kml/2.2', 'kml'); $parNode = $dom->appendChild($node); // Creates a KML Document element and append it to the KML element. $dnode = $dom->createElement('Document'); @@ -13,7 +15,7 @@ if ($suburb != "") $result_stops = getStopsBySuburb($suburb); else $result_stops = getStops(); foreach ($result_stops as $stop) { - $description = 'http://bus.lambdacomplex.org/' . 'stop.php?stopid=' . $stop['stop_id'] . "
"; + $description = 'View stop page
'; // Creates a Placemark and append it to the Document. $node = $dom->createElement('Placemark'); $placeNode = $docNode->appendChild($node); --- /dev/null +++ b/geo/trip.kml.php @@ -1,1 +1,70 @@ + +'; +echo ' + + + + '; +$trip = getTrip($tripid); +echo "\n\n"; +$link = curPageURL() . "/../trip.php?tripid=" . htmlspecialchars($$tripid); +echo "" . $tripid . ""; +echo ''; +echo '' . $tripid . "]]> "; +echo "#yellowLineGreenPoly"; + +echo getTripShape($tripid); + +echo "\n"; +foreach (getTripStopTimes($tripid) as $stop) { + echo "\n\n"; + $link = curPageURL() . '/../trip.php?tripid=' . htmlspecialchars($tripid); + echo "" . $stop['arrival_time'] . " @ " . htmlspecialchars($stop['stop_name']) . ""; + echo ''; + echo '' . htmlspecialchars($stop['stop_name']) . "]]> "; + echo "#blue-pushpin"; + echo "" . $stop['stop_lon'] . "," . $stop['stop_lat'] . ""; + + echo "\n"; +} +echo "\n"; +?> + + --- a/include/common-auth.inc.php +++ b/include/common-auth.inc.php @@ -30,4 +30,4 @@ login(); } } -?> + --- a/include/common-db.inc.php +++ b/include/common-db.inc.php @@ -27,12 +27,13 @@ } function databaseError($errMsg) { - die($errMsg); + if ($errMsg[1] != "") { + die(print_r($errMsg,true)); + } } include ('db/route-dao.inc.php'); include ('db/trip-dao.inc.php'); include ('db/stop-dao.inc.php'); include ('db/servicealert-dao.inc.php'); -?> --- a/include/common-geo.inc.php +++ b/include/common-geo.inc.php @@ -168,5 +168,3 @@ return $contents->features[0]->properties->name; } -?> - --- a/include/common-net.inc.php +++ b/include/common-net.inc.php @@ -35,7 +35,6 @@ debug(print_r($page, true), "json"); return $page; } - function curPageURL() { $isHTTPS = (isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] == "on"); $port = (isset($_SERVER["SERVER_PORT"]) && ((!$isHTTPS && $_SERVER["SERVER_PORT"] != "80") || ($isHTTPS && $_SERVER["SERVER_PORT"] != "443"))); @@ -44,5 +43,4 @@ return $url; } -?> --- a/include/common-request.inc.php +++ b/include/common-request.inc.php @@ -57,16 +57,25 @@ if (isset($_REQUEST['stopids'])) { $stopids = explode(",", filter_var($_REQUEST['stopids'], FILTER_SANITIZE_STRING)); } +if (isset($_REQUEST['filterIncludeRoutes'])) { + $filterIncludeRoutes = explode(",", filter_var($_REQUEST['filterIncludeRoutes'], FILTER_SANITIZE_STRING)); +} +if (isset($_REQUEST['filterHasStop'])) { + $filterHasStop = filter_var($_REQUEST['filterHasStop'], FILTER_SANITIZE_STRING); +} if (isset($_REQUEST['tripid'])) { $tripid = filter_var($_REQUEST['tripid'], FILTER_SANITIZE_STRING); +} +if (isset($_REQUEST['routeid'])) { + $routeid = filter_var($_REQUEST['routeid'], FILTER_SANITIZE_STRING); +} +if (isset($_REQUEST['directionid'])) { + $directionid = filter_var($_REQUEST['directionid'], FILTER_SANITIZE_STRING); } if (isset($_REQUEST['stopid'])) { $stopid = filter_var($_REQUEST['stopid'], FILTER_SANITIZE_NUMBER_INT); } -if (isset($_REQUEST['routeid'])) { - $routeid = filter_var($_REQUEST['routeid'], FILTER_SANITIZE_NUMBER_INT); -} if (isset($_REQUEST['geolocate'])) { $geolocate = filter_var($_REQUEST['geolocate'], FILTER_SANITIZE_URL); } -?> + --- a/include/common-session.inc.php +++ b/include/common-session.inc.php @@ -17,14 +17,6 @@ */ // you have to open the session to be able to modify or remove it session_start(); -if (isset($_REQUEST['service_period'])) { - $_SESSION['service_period'] = filter_var($_REQUEST['service_period'], FILTER_SANITIZE_STRING); - sessionUpdated(); -} -if (isset($_REQUEST['time'])) { - $_SESSION['time'] = filter_var($_REQUEST['time'], FILTER_SANITIZE_STRING); - sessionUpdated(); -} if (isset($_REQUEST['geolocate']) && $_REQUEST['geolocate'] != "Enter co-ordinates or address here") { $geocoded = false; if (isset($_REQUEST['lat']) && isset($_REQUEST['lon'])) { @@ -69,9 +61,10 @@ } //debug(print_r($_SESSION, true) , "session"); -function current_time() { - return ($_SESSION['time'] ? $_SESSION['time'] : date("H:i:s")); +function current_time($time = "") { + if (isset($_REQUEST['time'])) return $_REQUEST['time']; + else if ($time != "") date("H:i:s",$time); + else return date("H:i:s"); } -?> --- a/include/common-template.inc.php +++ b/include/common-template.inc.php @@ -42,7 +42,7 @@ } function include_header($pageTitle, $pageType, $opendiv = true, $geolocate = false, $datepicker = false) { - global $basePath, $GTFSREnabled; + global $basePath, $GTFSREnabled, $stopid, $routeid; echo ' @@ -54,19 +54,19 @@ '; - $jqmVersion = "1.0rc1"; + $jqmVersion = "1.0.1"; if (isDebugServer()) { $jqmcss = $basePath . "css/jquery.mobile-$jqmVersion.css"; - $jqjs = $basePath . "js/jquery-1.6.2.min.js"; + $jqjs = $basePath . "js/jquery-1.6.4.min.js"; $jqmjs = $basePath . "js/jquery.mobile-$jqmVersion.js"; + + $jqmcss = $basePath . "css/jquery.mobile-b90eab4935.css"; + $jqmjs = $basePath . "js/jquery.mobile-b90eab4935.js"; } else { $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 '