Ensure title changes between pages for bookmarking purposes
Ensure title changes between pages for bookmarking purposes

--- a/busui/common.inc.php
+++ b/busui/common.inc.php
@@ -30,10 +30,17 @@
     return $_SERVER['SERVER_NAME'] == "10.0.1.154" || $_SERVER['SERVER_NAME'] == "localhost" || $_SERVER['SERVER_NAME'] == "127.0.0.1" || !$_SERVER['SERVER_NAME'];
 }
 
+function isMetricsOn()
+{
+    return true;
+}
+
 function debug($msg) {
     if (isDebug()) echo "<!-- $msg -->";
 }
 function isFastDevice() {
+    $fastDevices = Array("Mozilla/5.0 (X11;", "Mozilla/5.0 (Windows;", "Mozilla/5.0 (iP", "Mozilla/5.0 (Linux; U; Android", "Mozilla/4.0 (compatible; MSIE");
+    $slowDevices = Array("J2ME","MIDP","Opera/","Mozilla/2.0 (compatible;","Mozilla/3.0 (compatible;");
     return true;
 }
 
@@ -42,8 +49,7 @@
 <!DOCTYPE html> 
 <html> 
 	<head> 
-	<title>busness time - '.$pageTitle.'</title> 
-	';
+	<title>'.$pageTitle.'</title>';
          if (isDebug()) echo '<link rel="stylesheet"  href="css/jquery-mobile-1.0a3.css" />
          <script type="text/javascript" src="js/jquery-1.5.js"></script>
         <script type="text/javascript" src="js/jquery-mobile-1.0a3.js"></script>';
@@ -104,12 +110,18 @@
 
 </script> ";
  }
-echo '</head> 
-<body> 
+echo '</head>
+<body>
+
  ';
 if ($opendiv)  {
     echo '<div data-role="page"> 
- 
+ <script>
+$(document).ready(function ()
+{
+    document.title = "'.$pageTitle.'";
+});
+</script>
 	<div data-role="header"> 
 		<h1>'.$pageTitle.'</h1>
 	</div><!-- /header -->

--- a/busui/layar_api.php
+++ b/busui/layar_api.php
@@ -4,32 +4,40 @@
 $output['hotspots'] = Array();
 $output['layer'] = "canberrabusstops";
 
-$url = $APIurl."/json/neareststops?lat={$_REQUEST['lat']}&lon={$_REQUEST['lon']}&limit=5";
+$max_page = 10;
+$max_results = 50;
+$page_start = 0+$_REQUEST['pageKey'];
+$page_end = $max_page+$_REQUEST['pageKey'];
+
+$url = $APIurl."/json/neareststops?lat={$_REQUEST['lat']}&lon={$_REQUEST['lon']}&limit=50";
 $contents = json_decode(getPage($url));
 debug(print_r($contents,true));
+$stopNum = 0;
 foreach ($contents as $row)
 {
-    $hotspot = Array();
-    $hotspot['id'] = $row[0];
-    $hotspot['title'] = $row[1];
-    $hotspot['type'] = 0;
-    $hotspot['lat'] = floor($row[2]*1000000);
-    $hotspot['lon'] = floor($row[3]*1000000);
-    $hotspot['distance'] = distance($row[2], $row[3], $_REQUEST['lat'], $_REQUEST['lon']);
-    if (!isset($_REQUEST['radius']) || $hotspot['distance'] < $_REQUEST['radius']) {
-        $hotspot['actions'] = Array(Array("label" => 'Visit Webpage', 'uri' => 'http://bus.lambdacomplex.org/'.'stop.php?stopid='.$row[0]));
-        $url = $APIurl."/json/stoptrips?stop=".$row[0]."&time=".midnight_seconds()."&service_period=".service_period();
-        $trips = json_decode(getPage($url));
-        debug(print_r($trips,true));
-        foreach ($trips as $key => $row)
-        {
-            if ($key > 3) {
-                $hotspot['line'.$key+2]= $row[1][1] .' @ ' .midnight_seconds_to_time($row[0]);
+    $stopNum++;
+    if ($stopNum > $page_start && $stopNum <= $page_end) {
+        $hotspot = Array();
+        $hotspot['id'] = $row[0];
+        $hotspot['title'] = $row[1];
+        $hotspot['type'] = 0;
+        $hotspot['lat'] = floor($row[2]*1000000);
+        $hotspot['lon'] = floor($row[3]*1000000);
+        $hotspot['distance'] = distance($row[2], $row[3], $_REQUEST['lat'], $_REQUEST['lon']);
+        if (!isset($_REQUEST['radius']) || $hotspot['distance'] < $_REQUEST['radius']) {
+            $hotspot['actions'] = Array(Array("label" => 'View more trips/information', 'uri' => 'http://bus.lambdacomplex.org/'.'stop.php?stopid='.$row[0]));
+            $url = $APIurl."/json/stoptrips?stop=".$row[0]."&time=".midnight_seconds()."&service_period=".service_period();
+            $trips = json_decode(getPage($url));
+            debug(print_r($trips,true));
+            foreach ($trips as $key => $row)
+            {
+                if ($key < 3) {
+                    $hotspot['line'.strval($key+2)]= $row[1][1] .' @ ' .midnight_seconds_to_time($row[0]);
+                }
             }
+            if (sizeof($trips) == 0) $hotspot['line2'] = 'No trips in the near future.';
+            $output['hotspots'][] = $hotspot;
         }
-        if (sizeof($trips) == 0) $hotspot['line2'] = 'No trips in the near future.';
-        $hotspot['imageURL'] = null;
-        $output['hotspots'][] = $hotspot;
     }
 }
 if (sizeof($hotspot) > 0) {
@@ -39,5 +47,12 @@
     $output['errorString'] = 'no results, try increasing range';
     $output['errorCode'] = 21;
 }
+if ($page_end >= $max_results || sizeof($hotspot) < $max_page) {
+ $output["morePages"] = false;
+ $output["nextPageKey"] = null;
+} else {
+ $output["morePages"] = true;
+ $output["nextPageKey"] = $page_end;    
+}
 echo json_encode($output);
 ?>