Nearby routes and routes by suburb
[busui.git] / routeList.php
blob:a/routeList.php -> blob:b/routeList.php
--- a/routeList.php
+++ b/routeList.php
@@ -1,5 +1,5 @@
 <?php
-include ('common.inc.php');
+include ('include/common.inc.php');
 function navbar()
 {
 	echo '
@@ -17,14 +17,16 @@
 	include_header("Routes by Suburb", "routeList");
 	navbar();
 	echo '  <ul data-role="listview" data-filter="true" data-inset="true" >';
-	foreach ($suburbs as $suburb) {
-		if (!isset($_REQUEST['firstLetter'])) {
-			foreach (range('A', 'Z') as $letter) {
-				echo "<li><a href=\"routeList.php?firstLetter=$letter&bysuburb=yes\">$letter...</a></li>\n";
+	if (!isset($_REQUEST['firstLetter'])) {
+		foreach (range('A', 'Z') as $letter) {
+			echo "<li><a href=\"routeList.php?firstLetter=$letter&bysuburb=yes\">$letter...</a></li>\n";
+		}
+	}
+	else {
+		foreach ($suburbs as $suburb) {
+			if (startsWith($suburb, $_REQUEST['firstLetter'])) {
+				echo '<li><a href="routeList.php?suburb=' . urlencode($suburb) . '">' . $suburb . '</a></li>';
 			}
-		}
-		else if (startsWith($suburb, $_REQUEST['firstLetter'])) {
-			echo '<li><a href="routeList.php?suburb=' . urlencode($suburb) . '">' . $suburb . '</a></li>';
 		}
 	}
 	echo '</ul>';
@@ -34,10 +36,16 @@
 		$suburb = filter_var($_REQUEST['suburb'], FILTER_SANITIZE_STRING);
 		$url = $APIurl . "/json/stopzonesearch?q=" . $suburb;
 		include_header("Routes by Suburb", "routeList");
+		trackEvent("Route Lists", "Routes By Suburb", $suburb);
 	}
 	if ($_REQUEST['nearby']) {
 		$url = $APIurl . "/json/neareststops?lat={$_SESSION['lat']}&lon={$_SESSION['lon']}&limit=15";
-		include_header("Routes Nearby", "routeList");
+		include_header("Routes Nearby", "routeList", true, true);
+		timePlaceSettings(true);
+		if (!isset($_SESSION['lat']) || !isset($_SESSION['lat']) || $_SESSION['lat'] == "" || $_SESSION['lon'] == "") {
+			include_footer();
+			die();
+		}
 	}
 	$stops = json_decode(getPage($url));
 	$routes = Array();
@@ -52,10 +60,10 @@
 	echo '  <ul data-role="listview" data-filter="true" data-inset="true" >';
 	sksort($routes, 1, true);
 	foreach ($routes as $row) {
-		echo '<li>' . $row[1] . ' <a href="trip.php?routeid=' . $row[0] . '">' . $row[2] . " (" . ucwords($row[4]) . ")</a></li>\n";
+		echo '<li><a href="trip.php?routeid=' . $row[0] . '"><h3>'. $row[1] . "</h3><p>". $row[2] . " (" . ucwords($row[4]) . ")</p></a></li>\n";
 	}
 }
-else if ($_REQUEST['bynumber']) {
+else if ($_REQUEST['bynumber'] || $_REQUEST['numberSeries']) {
 	include_header("Routes by Number", "routeList");
 	navbar();
 	echo ' <ul data-role="listview"  data-inset="true">';
@@ -79,25 +87,20 @@
 			$routeSeries[$seriesNum][$seriesNum . "-" . $row[1] . "-" . $row[0]] = $row;
 		}
 	}
-	ksort($routeSeries);
-	ksort($seriesRange);
-	echo '<div class="noscriptnav"> Go to route numbers: ';
-	foreach ($seriesRange as $series => $range) {
-		if ($range['min'] == $range['max']) echo "<a href=\"#$series\">$series</a>&nbsp;";
-		else echo "<a href=\"#$series\">{$range['min']}-{$range['max']}</a>&nbsp;";
+	if ($_REQUEST['bynumber']) {
+		ksort($routeSeries);
+		ksort($seriesRange);
+		foreach ($routeSeries as $series => $routes) {
+			echo '<li><a href="' . curPageURL() . '/routeList.php?numberSeries=' . $series . '">';
+			if ($series <= 9) echo $series;
+			else echo "{$seriesRange[$series]['min']}-{$seriesRange[$series]['max']}";
+			echo "</a></li>\n";
+		}
 	}
-	echo "</div>
-			<script>
-		$('.noscriptnav').hide();
-			</script>";
-	foreach ($routeSeries as $series => $routes) {
-		echo '<a name="' . $series . '"></a>';
-		if ($series <= 9) echo '<li>' . $series . "<ul>\n";
-		else echo "<li>{$seriesRange[$series]['min']}-{$seriesRange[$series]['max']}<ul>\n";
-		foreach ($routes as $row) {
-			echo '<li>' . $row[1] . ' <a href="trip.php?routeid=' . $row[0] . '">' . $row[2] . " (" . ucwords($row[3]) . ")</a></li>\n";
+	else if ($_REQUEST['numberSeries']) {
+		foreach ($routeSeries[$_REQUEST['numberSeries']] as $row) {
+			echo '<li> <a href="trip.php?routeid=' . $row[0] . '"><h3>' . $row[1] . "</h3><p>".  $row[2] . " (" . ucwords($row[3]) . ")</p></a></li>\n";
 		}
-		echo "</ul></li>\n";
 	}
 }
 else {
@@ -107,24 +110,18 @@
 	$url = $APIurl . "/json/routes";
 	$contents = json_decode(getPage($url));
 	// by destination!
-	foreach ($contents as $key => $row) {
+	foreach ($contents as $row) {
 		$routeDestinations[$row[2]][] = $row;
 	}
-	echo '<div class="noscriptnav"> Go to Destination: ';
-	foreach (ksort($routeDestinations) as $destination => $routes) {
-		echo "<a href=\"#$destination\">$destination</a>&nbsp;";
+	if ($_REQUEST['routeDestination']) {
+		foreach ($routeDestinations[urldecode($_REQUEST['routeDestination'])] as $row) {
+			echo '<li><a href="trip.php?routeid=' . $row[0] . '"><h3>' . $row[1] . '</h3><p>'  . $row[2] . " (" . ucwords($row[3]) . ")</p></a></li>\n";
+		}
 	}
-	echo "</div>
-			<script>
-		$('.noscriptnav').hide();
-			</script>";
-	foreach ($routeDestinations as $destination => $routes) {
-		echo '<a name="' . $destination . '"></a>';
-		echo '<li>' . $destination . "... <ul>\n";
-		foreach ($routes as $row) {
-			echo '<li>' . $row[1] . ' <a href="trip.php?routeid=' . $row[0] . '">' . $row[2] . " (" . ucwords($row[3]) . ")</a></li>\n";
+	else {
+		foreach ($routeDestinations as $destination => $routes) {
+			echo '<li><a href="' . curPageURL() . '/routeList.php?routeDestination=' . urlencode($destination) . '">' . $destination . "... </a></li>\n";
 		}
-		echo "</ul></li>\n";
 	}
 }
 echo "</ul>\n";