more tables for categories
[contractdashboard.git] / lib / common.inc.php
blob:a/lib/common.inc.php -> blob:b/lib/common.inc.php
--- a/lib/common.inc.php
+++ b/lib/common.inc.php
@@ -4,11 +4,7 @@
 error_reporting(E_ALL ^ E_NOTICE);
 
 
-$conn = new PDO("pgsql:dbname=contractdashboard;user=alex;host=localhost");
-
-if (!$conn) {
-    die("A database error occurred.\n");
-}
+include('db.inc.php');
 
 define('ROOT', pathinfo(__FILE__, PATHINFO_DIRNAME));
 if (strstr($_SERVER['PHP_SELF'], "labs/") || strstr($_SERVER['PHP_SELF'], "admin/") || strstr($_SERVER['PHP_SELF'], "heuristics/")) {
@@ -102,6 +98,39 @@
     return $totale;
 }
 
+function show_stats($stats) {
+    setlocale(LC_MONETARY, 'en_US');
+  $value = number_format(doubleval($stats['total_value']) , 2);
+  echo "<br/> {$stats['total']} contracts, total value $$value <br/>";
+      if ($stats['consultancy'] > 0) {
+        echo "<b>Consultancies:</b> {$stats['consultancy']} contracts, ".percent($stats['consultancy'],$stats['total']);
+        echo "%<br/>";
+    }
+    if ($stats['confidentialityContract']+$stats['confidentialityOutputs'] > 0) {
+        $confidentialities = $stats['confidentialityContract']+$stats['confidentialityOutputs'];
+        echo "<b>Confidentialities:</b> $confidentialities contracts, ".percent( $confidentialities,$stats['total'])."%";
+        echo "( {$stats['confidentialityContract']} on the contract, {$stats['confidentialityOutputs']} on the outputs)";
+        echo "<br/>";
+    }
+    echo "<b>Procurement methods:</b> ";
+    if ($stats['open'] > 0) {
+        echo "Open {$stats['open']} contracts, ".percent($stats['open'],$stats['total']);
+        echo "%, ";
+    }
+    if ($stats['openSON'] > 0) {
+        echo "Open via SON {$stats['openSON']} contracts, ".percent($stats['openSON'],$stats['total']);
+        echo "%, ";
+    }
+    if ($stats['prequalified'] > 0) {
+        echo "Prequalified {$stats['prequalified']} contracts, ".percent($stats['prequalified'],$stats['total']);
+        echo "%, ";
+    }
+    if ($stats['limited'] > 0) {
+        echo "limited {$stats['limited']} contracts, ".percent($stats['limited'],$stats['total']);
+        echo "%, ";
+    }
+}
+
 // magic query modifiers
 $agency = filter_var($_REQUEST['agency'], FILTER_SANITIZE_STRING);
 if ($agency != "")
@@ -109,13 +138,17 @@
 
 $supplier = filter_var($_REQUEST['supplier'], FILTER_SANITIZE_STRING);
 if ($supplier != "") {
+  if ($supplier[0] !== '-') {
     $supplierParts = explode("-", $supplier);
-    $supplierName = "%" . $supplierParts[1] . "%";
-    $supplierABN = $supplierParts[0];
-    if ($supplierParts[0] > 0)
-        $supplierQ = ' "supplierABN" = :supplierABN AND ';
-    else
-        $supplierQ = ' "supplierName" ILIKE :supplierName AND ';
+
+    $supplierABN = array_shift($supplierParts);
+    $supplierName = "%" . implode('-',$supplierParts) . "%";
+
+    $supplierQ = ' "supplierABN" = :supplierABN AND ';
+   } else {
+    $supplierName = "%" . substr($supplier,1) . "%";
+    $supplierQ = ' "supplierName" ILIKE :supplierName AND ';
+  }
 }
 
 $startYear = 2007;
@@ -157,6 +190,7 @@
               pcdt: http://purl.org/procurement/public-contracts-datatypes#">
         <head>
             <title><?php echo $title; ?> - Contract Dashboard</title>
+            <meta name="viewport" content="width=device-width, initial-scale=1">
             <link rel="stylesheet" type="text/css" href="bootstrap.min.css"> 
             <link rel="stylesheet" type="text/css" href="bootstrap-responsive.css"> 
             <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
@@ -288,7 +322,7 @@
                 	<div class="well sidebar-nav">
                     		<li class="nav-header">Year</li>
 <?php
-foreach (range(2007,2016) as $year) {
+foreach (range(2007,2017) as $year) {
 $get = $_GET;
 $get['year'] = $year;
 $query = http_build_query($get);