Viewing of grouped stops
[busui.git] / stop.php
blob:a/stop.php -> blob:b/stop.php
<?php <?php
include ('common.inc.php'); include ('include/common.inc.php');
$stopid = filter_var($_REQUEST['stopid'], FILTER_SANITIZE_NUMBER_INT); $stopid = filter_var($_REQUEST['stopid'], FILTER_SANITIZE_NUMBER_INT);
$stopcode = filter_var($_REQUEST['stopcode'], FILTER_SANITIZE_STRING); $stopcode = filter_var($_REQUEST['stopcode'], FILTER_SANITIZE_STRING);
$url = $APIurl . "/json/stop?stop_id=" . $stopid; $url = $APIurl . "/json/stop?stop_id=" . $stopid;
$stop = json_decode(getPage($url)); $stop = json_decode(getPage($url));
if ($stopcode != "" && $stop[5] != $stopcode) { if ($stopcode != "" && $stop[5] != $stopcode) {
$url = $APIurl . "/json/stopcodesearch?q=" . $stopcode; $url = $APIurl . "/json/stopcodesearch?q=" . $stopcode;
$stopsearch = json_decode(getPage($url)); $stopsearch = json_decode(getPage($url));
$stopid = $stopsearch[0][0]; $stopid = $stopsearch[0][0];
$url = $APIurl . "/json/stop?stop_id=" . $stopid; $url = $APIurl . "/json/stop?stop_id=" . $stopid;
$stop = json_decode(getPage($url)); $stop = json_decode(getPage($url));
} }
if (!startsWith($stop[5], "Wj") && strpos($stop[1],"Platform") === false) { if (!startsWith($stop[5], "Wj") && strpos($stop[1], "Platform") === false) {
// expand out to all platforms // expand out to all platforms
   
} }
$stops = Array(); $stops = Array();
$stopPositions = Array(); $stopPositions = Array();
  $stopNames = Array();
$tripStopNumbers = Array(); $tripStopNumbers = Array();
$allStopsTrips = Array(); $allStopsTrips = Array();
$stopLinks = ""; $stopLinks = "";
if (isset($_REQUEST['stopids'])) { if (isset($_REQUEST['stopids'])) {
$stopids = explode(",",filter_var($_REQUEST['stopids'], FILTER_SANITIZE_STRING)); $stopids = explode(",", filter_var($_REQUEST['stopids'], FILTER_SANITIZE_STRING));
foreach ($stopids as $sub_stopid) { foreach ($stopids as $sub_stopid) {
$url = $APIurl . "/json/stop?stop_id=" . $sub_stopid; $url = $APIurl . "/json/stop?stop_id=" . $sub_stopid;
$stop = json_decode(getPage($url)); $stop = json_decode(getPage($url));
$stops[] = $stop; $stops[] = $stop;
} }
$stop = $stops[0]; $stop = $stops[0];
$stopid = $stops[0][0]; $stopid = $stops[0][0];
$stopLinks .= "Individual stop pages: "; $stopLinks.= "Individual stop pages: ";
foreach ($stops as $key => $sub_stop) { foreach ($stops as $key => $sub_stop) {
$stopLinks .= '<a href="stop.php?stopid='.$sub_stop[0].'&stopcode='.$sub_stop[5].'">'.$sub_stop[1].' Stop #'.($key+1).'</a> '; // $stopNames[$key] = $sub_stop[1] . ' Stop #' . ($key + 1);
$stopPositions[$key] = Array($sub_stop[2],$sub_stop[3]); if (strpos($stop[1],
$url = $APIurl . "/json/stoptrips?stop=" . $sub_stop[0] . "&time=" . midnight_seconds() . "&service_period=" . service_period(); "Station")) {
$trips = json_decode(getPage($url)); $stopNames[$key] = 'Platform ' . ($key + 1);
foreach ($trips as $trip) { $stopLinks.= '<a href="stop.php?stopid=' . $sub_stop[0] . '&stopcode=' . $sub_stop[5] . '">' . $sub_stop[1] . '</a> ';
if (!isset($allStopTrips[$row[1][0]])) $allStopTrips[$row[1][0]] = $trip; } else {
$tripStopNumbers[$row[1][0]][] = $key; $stopNames[$key] = '#' . ($key + 1);
  $stopLinks.= '<a href="stop.php?stopid=' . $sub_stop[0] . '&stopcode=' . $sub_stop[5] . '">' . $sub_stop[1] . ' Stop #' . ($key + 1) . '</a> ';
} }
} $stopPositions[$key] = Array(
  $sub_stop[2],
  $sub_stop[3]
  );
  $url = $APIurl . "/json/stoptrips?stop=" . $sub_stop[0] . "&time=" . midnight_seconds() . "&service_period=" . service_period();
  $trips = json_decode(getPage($url));
  foreach ($trips as $trip) {
  if (!isset($allStopsTrips[$trip[1][0]])) $allStopsTrips[$trip[1][0]] = $trip;
  $tripStopNumbers[$trip[1][0]][] = $key;
  }
  }
} }
   
include_header($stop[1], "stop"); include_header($stop[1], "stop");
   
if (isMetricsOn()) {  
// Create a new Instance of the tracker  
$owa = new owa_php();  
// Set the ID of the site being tracked  
$owa->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);  
}  
timePlaceSettings(); timePlaceSettings();
echo '<div data-role="content" class="ui-content" role="main">'; echo '<div data-role="content" class="ui-content" role="main"> <a name="maincontent" id="maincontent"></a>';
echo $stopLinks; echo $stopLinks;
if (sizeof($stops) > 0) { if (sizeof($stops) > 0) {
echo '<p>' . staticmap($stopPositions) . '</p>'; trackEvent("View Stops","View Combined Stops", $stop[1], $stop[0]);
} else {  
echo '<p>' . staticmap(Array( echo '<p>' . staticmap($stopPositions) . '</p>';
0 => Array( }
$stop[2], else {
$stop[3] trackEvent("View Stops","View Single Stop", $stop[1], $stop[0]);
) echo '<p>' . staticmap(Array(
)) . '</p>'; 0 => Array(
  $stop[2],
  $stop[3]
  )
  )) . '</p>';
} }
echo ' <ul data-role="listview" data-inset="true">'; echo ' <ul data-role="listview" data-inset="true">';
$url = $APIurl . "/json/stoptrips?stop=" . $stopid . "&time=" . midnight_seconds() . "&service_period=" . service_period(); if (sizeof($allStopsTrips) > 0) {
$trips = json_decode(getPage($url)); sksort($allStopsTrips,0, $true);
  $trips = $allStopsTrips;
  }
  else {
  $url = $APIurl . "/json/stoptrips?stop=" . $stopid . "&time=" . midnight_seconds() . "&service_period=" . service_period();
  $trips = json_decode(getPage($url));
  }
foreach ($trips as $row) { foreach ($trips as $row) {
echo '<li>'; echo '<li>';
echo '<h3><a href="trip.php?stopid=' . $stopid . '&tripid=' . $row[1][0] . '">' . $row[1][1]; echo '<a href="trip.php?stopid=' . $stopid . '&tripid=' . $row[1][0] . '"><h3>' . $row[1][1]."</h3><p>";
if (isFastDevice()) { $viaPoints = viaPointNames($row[1][0], $stopid);
$viaPoints = viaPointNames($row[1][0], $stopid); if ($viaPoints != "") echo '<br><span class="viaPoints">Via: ' . $viaPoints . '</span>';
if ($viaPoints != "") echo '<br><small>Via: ' . $viaPoints . '</small> </a></h3>'; if (sizeof($tripStopNumbers) > 0) {
} echo '<br><small>Boarding At: ';
  foreach ($tripStopNumbers[$row[1][0]] as $key) {
  echo $stopNames[$key] .' ';
  }
  echo '</small>';
  }
  echo '</p>';
echo '<p class="ui-li-aside"><strong>' . midnight_seconds_to_time($row[0]) . '</strong></p>'; echo '<p class="ui-li-aside"><strong>' . midnight_seconds_to_time($row[0]) . '</strong></p>';
echo '</li>'; echo '</a></li>';
  flush(); @ob_flush();
} }
if (sizeof($trips) == 0) echo "<li> <center>No trips in the near future.</center> </li>"; if (sizeof($trips) == 0) echo "<li> <center>No trips in the near future.</center> </li>";
echo '</ul></div>'; echo '</ul></div>';
include_footer(); include_footer();
?> ?>