Update myway balance API
[busui.git] / labs / myway_api.json.php
blob:a/labs/myway_api.json.php -> blob:b/labs/myway_api.json.php
--- a/labs/myway_api.json.php
+++ b/labs/myway_api.json.php
@@ -17,6 +17,7 @@
 }*/
 //set POST variables
 $url = 'https://www.action.act.gov.au/ARTS/use_Funcs.asp';
+//$url = 'http://localhost/myway.htm';
 $field_mapping = Array(
 	"card_number" => "SRNO",
 	"DOBmonth" => "month",
@@ -75,7 +76,7 @@
 }
 
 if (!isset($return['error'])) {
-	include_once ('lib/simple_html_dom.php');
+	include_once ('../lib/simple_html_dom.php');
 	//print_r($pageHTML);
 	$page = str_get_html($pageHTML);
 	$pageAlerts = $page->find(".smartCardAlert");
@@ -101,8 +102,19 @@
 			foreach ($table->find("tr") as $tr) {
 				$tableColumnNum = 0;
 				foreach ($tr->find("td") as $td) {
-					if ($tableNum == 1) $return[$tableName[$tableNum]][$tableColumns[$tableColumnNum]] = cleanString($td->plaintext);
-					else $return[$tableName[$tableNum]][$tableRowNum][$tableColumns[$tableColumnNum]] = cleanString($td->plaintext);
+					if ($tableNum == 1) {
+						// first table has card/cardholder details
+						$return[$tableName[$tableNum]][$tableColumns[$tableColumnNum]] = cleanString($td->plaintext);
+					} else {
+						// second table has transactions
+						
+						if ($tableColumns[$tableColumnNum] == "TX Reference No / Type") {
+							$return[$tableName[$tableNum]][$tableRowNum]["TX Reference No"] = substr(cleanString($td->plaintext), 0,6);
+							$return[$tableName[$tableNum]][$tableRowNum]["TX Type"] = substr(cleanString($td->plaintext), 7);
+						} else {
+							$return[$tableName[$tableNum]][$tableRowNum][$tableColumns[$tableColumnNum]] = cleanString($td->plaintext);
+						}
+					}
 					//print_r($return);
 					$tableColumnNum++;
 				}
@@ -114,7 +126,7 @@
 if (sizeof($return) == 0) {
 $return['error'][] = "No data extracted from MyWay website - API may be out of date";
 }
-
+if (basename(__FILE__) == "myway_api.json.php") {
 header('Content-Type: text/javascript; charset=utf8');
 // header('Access-Control-Allow-Origin: http://bus.lambdacomplex.org/');
 header('Access-Control-Max-Age: 3628800');
@@ -125,5 +137,6 @@
 	
 }
 else echo json_encode($return);
+}
 ?>