More MySQL purging
[contractdashboard.git] / heuristics / dateHeuristics.php
blob:a/heuristics/dateHeuristics.php -> blob:b/heuristics/dateHeuristics.php
--- a/heuristics/dateHeuristics.php
+++ b/heuristics/dateHeuristics.php
@@ -1,102 +1,106 @@
 <?php
+
 //long contract period (number of weeks/days?)
 $heuristics["DATE_LONG_CONTRACT_PERIOD"] = Array(
-	"description" => "long contract period (number of weeks/days?)"
+    "description" => "long contract period (number of weeks/days?)"
 );
-function DATE_LONG_CONTRACT_PERIOD($cn)
-{
-	$averageContractPeriod = getAverageContractPeriod();
-	$stddevContractPeriod = getstddevContractPeriod();
-	$diff = strtotime($cn['contractEnd']) - strtotime($cn['contractStart']);
-	$days = intval($diff / (60 * 60 * 24));
-	$value = abs($days - $averageContractPeriod) / $stddevContractPeriod;
-	return Array(
-		"heuristic_value" => $value,
-		"raw_value" => $days,
-		"mean" => $averageContractPeriod,
-		"stddev" => $stddevContractPeriod
-	);
-}
-$averageContractPeriod;
-function getAverageContractPeriod()
-{
-	global $averageContractPeriod, $stddevContractPeriod;
-	if (!$averageContractPeriod) {
-		getStddevAverageContractPeriod();
-	}
-	return $averageContractPeriod;
-}
-$stddevContractPeriod;
-function getstddevContractPeriod()
-{
-	global $averageContractPeriod, $stddevContractPeriod;
-	if (!$stddevContractPeriod) {
-		getStddevAverageContractPeriod();
-	}
-	return $stddevContractPeriod;
-}
-function getStddevAverageContractPeriod()
-{
-	global $averageContractPeriod, $stddevContractPeriod;
-	$query = "select AVG(dateDiff(contractEnd,contractStart)),stddev(dateDiff(contractEnd,contractStart)) from contractnotice";
-	$result = mysql_query($query);
-	$r = mysql_fetch_array($result, MYSQL_BOTH);
-	$averageContractPeriod = $r[0];
-	$stddevContractPeriod = $r[1];
+
+function DATE_LONG_CONTRACT_PERIOD($cn) {
+    $averageContractPeriod = getAverageContractPeriod();
+    $stddevContractPeriod = getstddevContractPeriod();
+    $diff = strtotime($cn['contractEnd']) - strtotime($cn['contractStart']);
+    $days = intval($diff / (60 * 60 * 24));
+    $value = abs($days - $averageContractPeriod) / $stddevContractPeriod;
+    return Array(
+        "heuristic_value" => $value,
+        "raw_value" => $days,
+        "mean" => $averageContractPeriod,
+        "stddev" => $stddevContractPeriod
+    );
 }
 
+$averageContractPeriod;
+
+function getAverageContractPeriod() {
+    global $averageContractPeriod, $stddevContractPeriod;
+    if (!$averageContractPeriod) {
+        getStddevAverageContractPeriod();
+    }
+    return $averageContractPeriod;
+}
+
+$stddevContractPeriod;
+
+function getstddevContractPeriod() {
+    global $averageContractPeriod, $stddevContractPeriod;
+    if (!$stddevContractPeriod) {
+        getStddevAverageContractPeriod();
+    }
+    return $stddevContractPeriod;
+}
+
+function getStddevAverageContractPeriod() {
+    global $averageContractPeriod, $stddevContractPeriod;
+    $query = "select AVG(dateDiff(contractEnd,contractStart)),stddev(dateDiff(contractEnd,contractStart)) from contractnotice";
+    $result = $conn->query($query);
+    $r = $result->fetch(PDO::FETCH_BOTH);
+    $averageContractPeriod = $r[0];
+    $stddevContractPeriod = $r[1];
+}
 
 //Reported late, 45 days? A late contract is a dodgy contract except maybe for variations?
 $heuristics["DATE_REPORTED_LATE"] = Array(
-	"description" => "Reported late, 45 days?"
+    "description" => "Reported late, 45 days?"
 );
-function DATE_REPORTED_LATE($cn)
-{
-	$averageDaysLate = getAverageDaysLate();
-	$stddevDaysLate = getStddevDaysLate();
-	$diff = strtotime($cn['publishDate']) - strtotime($cn['contractStart']);
-	$days = intval($diff / (60 * 60 * 24));
-	if ($days <= 0) {
-		$value = 0;
-	}
-	else {
-		// +1 demerit for exceeding 45 day requirement
-		$value = (abs($days - $averageDaysLate) / $stddevDaysLate) + ($days < 45 ? 0 : 1);
-	}
-	return Array(
-		"heuristic_value" => $value,
-		"raw_value" => $days,
-		"mean" => $averageDaysLate,
-		"stddev" => $stddevDaysLate
-	);
+
+function DATE_REPORTED_LATE($cn) {
+    $averageDaysLate = getAverageDaysLate();
+    $stddevDaysLate = getStddevDaysLate();
+    $diff = strtotime($cn['publishDate']) - strtotime($cn['contractStart']);
+    $days = intval($diff / (60 * 60 * 24));
+    if ($days <= 0) {
+        $value = 0;
+    } else {
+        // +1 demerit for exceeding 45 day requirement
+        $value = (abs($days - $averageDaysLate) / $stddevDaysLate) + ($days < 45 ? 0 : 1);
+    }
+    return Array(
+        "heuristic_value" => $value,
+        "raw_value" => $days,
+        "mean" => $averageDaysLate,
+        "stddev" => $stddevDaysLate
+    );
 }
+
 $averageDaysLate;
-function getAverageDaysLate()
-{
-	global $averageDaysLate;
-	if (!$averageDaysLate) {
-            getDaysLate();
-	}
-	return $averageDaysLate;
+
+function getAverageDaysLate() {
+    global $averageDaysLate;
+    if (!$averageDaysLate) {
+        getDaysLate();
+    }
+    return $averageDaysLate;
 }
+
 $stddevDaysLate;
-function getStddevDaysLate()
-{
-	global $stddevDaysLate;
-	if (!$stddevDaysLate) {
-	getDaysLate();
-	}
-	return $stddevDaysLate;
+
+function getStddevDaysLate() {
+    global $stddevDaysLate;
+    if (!$stddevDaysLate) {
+        getDaysLate();
+    }
+    return $stddevDaysLate;
 }
+
 function getDaysLate() {
-    
-	global $averageDaysLate,$stddevDaysLate;
-    
-    		$query = "select AVG(dateDiff(publishDate,contractStart)), STDDEV(dateDiff(publishDate,contractStart)) from contractnotice";
-		$result = mysql_query($query);
-		$r = mysql_fetch_array($result, MYSQL_BOTH);
-		$averageDaysLate = $r[0];
-                	$stddevDaysLate = $r[1];
 
+    global $averageDaysLate, $stddevDaysLate;
+
+    $query = "select AVG(dateDiff(publishDate,contractStart)), STDDEV(dateDiff(publishDate,contractStart)) from contractnotice";
+    $result = $conn->query($query);
+    $r = $result->fetch(PDO::FETCH_BOTH);
+    $averageDaysLate = $r[0];
+    $stddevDaysLate = $r[1];
 }
+
 ?>