Add initial date based heuristics
[contractdashboard.git] / heuristics / heuristics.inc.php
blob:a/heuristics/heuristics.inc.php -> blob:b/heuristics/heuristics.inc.php
  <?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";
  }
  ?>