Add initial date based heuristics
[contractdashboard.git] / heuristics / heuristics.inc.php
blob:a/heuristics/heuristics.inc.php -> blob:b/heuristics/heuristics.inc.php
--- a/heuristics/heuristics.inc.php
+++ b/heuristics/heuristics.inc.php
@@ -1,1 +1,33 @@
-
+<?php
+  include_once("../lib/common.inc.php");
+$heuristics = Array();
+//each heuristic adds self to description array
+include ("dateHeuristics.php");
+//include("historyHeuristics.php");
+//include("metadataHeuristics.php");
+//include("valueHeuristics.php");
+// method signature heuristic($contractNoticeAsArray);
+function runHeuristic($heuristicName, $cn)
+{
+	$hresults = call_user_func($heuristicName, $cn);
+	if (!isset($hresults["heuristic_value"]) || !isset($hresults["raw_value"]) || !isset($hresults["mean"]) || !isset($hresults["stddev"])) {
+		print_r($hresults);
+		die("Missing field in heurtistic $heuristicName result");
+	}
+	$query = "insert into heuristic_results values('$heuristicName',
+    '{$hresults["heuristic_value"]}',
+     '{$hresults["raw_value"]}',
+      '{$hresults["mean"]}',
+       '{$hresults["stddev"]}',
+           '{$cn["CNID"]}',
+           NOW(),
+           '{$cn["publishDate"]}',
+           '{$cn["agencyABN"]}',
+           '{$cn["supplierID"]}'
+    )";
+	// save value and cn data via sql
+	$result = mysql_query($query);
+	if ($result) echo "Saved $heuristicName for {$cn["CNID"]} <br>\n";
+	elseif (strpos(mysql_error() , "Duplicate entry") === false) echo $hresults . " failed insert.<br>" . mysql_error() . " <br>  $query <br><br>\n";
+}
+?>