1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 | <?php include ('include/common.inc.php'); if ($stopid) $stop = getStop($stopid); /*if ($stopcode != "" && $stop[5] != $stopcode) { $url = $APIurl . "/json/stopcodesearch?q=" . $stopcode; $stopsearch = json_decode(getPage($url)); $stopid = $stopsearch[0][0]; $url = $APIurl . "/json/stop?stop_id=" . $stopid; $stop = json_decode(getPage($url)); } if (!startsWith($stop[5], "Wj") && strpos($stop[1], "Platform") === false) { // expand out to all platforms }*/ $stops = Array(); $stopPositions = Array(); $stopNames = Array(); $tripStopNumbers = Array(); $allStopsTrips = Array(); $fetchedTripSequences = Array(); $stopLinks = ""; if (isset($stopids)) { foreach ($stopids as $sub_stopid) { $stops[] = getStop($sub_stopid); } $stop = $stops[0]; $stopid = $stops[0]["stop_id"]; $stopLinks.= "Individual stop pages: "; foreach ($stops as $key => $sub_stop) { // $stopNames[$key] = $sub_stop[1] . ' Stop #' . ($key + 1); if (strpos($stop["stop_name"], "Station")) { $stopNames[$key] = 'Platform ' . ($key + 1); $stopLinks.= '<a href="stop.php?stopid=' . $sub_stop["stop_id"] . '&stopcode=' . $sub_stop["stop_code"] . '">' . $sub_stop["stop_name"] . '</a> '; } else { $stopNames[$key] = '#' . ($key + 1); $stopLinks.= '<a href="stop.php?stopid=' . $sub_stop["stop_id"] . '&stopcode=' . $sub_stop["stop_code"] . '">' . $sub_stop["stop_name"] . ' Stop #' . ($key + 1) . '</a> '; } $stopPositions[$key] = Array( $sub_stop["stop_lat"], $sub_stop["stop_lon"] ); $trips = getStopTrips($sub_stop["stop_id"]); $tripSequence = ""; foreach ($trips as $trip) { $tripSequence.= "{$trip['trip_id']},"; $tripStopNumbers[$trip['trip_id']][] = $key; } if (!in_array($tripSequence, $fetchedTripSequences)) { // only fetch new trip sequences $fetchedTripSequences[] = $tripSequence; $trips = getStopTripsWithTimes($sub_stop["stop_id"]); foreach ($trips as $trip) { if (!isset($allStopsTrips[$trip["trip_id"]])) $allStopsTrips[$trip["trip_id"]] = $trip; } } //else { // echo "skipped sequence $tripSequence"; //} } } include_header($stop['stop_name'], "stop"); timePlaceSettings(); echo $stopLinks; if (sizeof($stops) > 0) { trackEvent("View Stops", "View Combined Stops", $stop["stop_name"], $stop["stop_id"]); echo staticmap($stopPositions); } else { trackEvent("View Stops", "View Single Stop", $stop["stop_name"], $stop["stop_id"]); echo staticmap(Array( 0 => Array( $stop["stop_lat"], $stop["stop_lon"] ) )) ; } echo ' <ul data-role="listview" data-inset="true">'; if (sizeof($allStopsTrips) > 0) { sktimesort($allStopsTrips,"arrival_time", true); $trips = $allStopsTrips; } else { $trips = getStopTripsWithTimes($stopid); } if (sizeof($trips) == 0) { echo "<li style='text-align: center;'>No trips in the near future.</li>"; } else { foreach ($trips as $trip) { echo '<li>'; echo '<a href="trip.php?stopid=' . $stopid . '&tripid=' . $trip['trip_id'] . '"><h3>' . $trip['route_short_name'] . " " . $trip['route_long_name'] . "</h3><p>"; $viaPoints = viaPointNames($trip['trip_id'], $trip['stop_sequence']); if ($viaPoints != "") echo '<br><span class="viaPoints">Via: ' . $viaPoints . '</span>'; if (sizeof($tripStopNumbers) > 0) { echo '<br><small>Boarding At: '; foreach ($tripStopNumbers[$trip['trip_id']] as $key) { echo $stopNames[$key] . ' '; } echo '</small>'; } echo '</p>'; echo '<p class="ui-li-aside"><strong>' . $trip['arrival_time'] . '</strong></p>'; echo '</a></li>'; flush(); @ob_flush(); } } echo '</ul>'; include_footer(); ?> |