--- a/stop.php +++ b/stop.php @@ -1,42 +1,115 @@ setSiteId($owaSiteID); -// Create a new event object -$event = $owa->makeEvent(); -// Set the Event Type, in this case a "video_play" -$event->setEventType('view_stop'); -// Set a property -$event->set('stop_id',$stopid); -// Track the event -$owa->trackEvent($event); - } +include ('include/common.inc.php'); +$stopid = filter_var($_REQUEST['stopid'], FILTER_SANITIZE_NUMBER_INT); +$stopcode = filter_var($_REQUEST['stopcode'], FILTER_SANITIZE_STRING); +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($_REQUEST['stopids'])) { + $stopids = explode(",", filter_var($_REQUEST['stopids'], FILTER_SANITIZE_STRING)); + 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.= '' . $sub_stop["stop_name"] . ' '; + } + else { + $stopNames[$key] = '#' . ($key + 1); + $stopLinks.= '' . $sub_stop["stop_name"] . ' Stop #' . ($key + 1) . ' '; + } + $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 '

'.staticmap(Array(0 => Array($stop[2],$stop[3]))).'

'; +echo '
'; +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 '
'; include_footer(); ?>