Data update
[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,17 +4,31 @@
 error_reporting(E_ALL ^ E_NOTICE);
 
 
-$conn = new PDO("pgsql:dbname=contractDashboard;user=postgres;password=snmc;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/")) {
     $basePath = "../";
 }
-require ROOT . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'openid.php';
+/*require ROOT . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'openid.php';
+require(ROOT.'/solarium/vendor/autoload.php');
+require(ROOT.'/solarium/library/Solarium/Autoloader.php');
+Solarium\Autoloader::register();
+// check solarium version available
+//echo 'Solarium library version: ' . Solarium\Client::VERSION . ' - ';
+$config = array(
+    'endpoint' => array(
+        'localhost' => array(
+            'host' => '127.0.0.1',
+            'port' => 8983,
+            'path' => '/solr/contracts/',
+        )
+    )
+);
+// create a client instance
+$solr_client = new Solarium\Client($config);
+
+
 $openid = new LightOpenID($_SERVER['HTTP_HOST']);
 // you have to open the session to be able to modify or remove it
 session_start();
@@ -43,7 +57,7 @@
     } else {
         login();
     }
-}
+}*/
 
 //   $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
 function databaseError($errMsg) {
@@ -57,9 +71,10 @@
 function ucsmart($str) {
     $shortWords = Array("The", "Pty", "Ltd", "Inc", "Red", "Oil", "A", "An", "And", "At", "For", "In"
         , "Of", "On", "Or", "The", "To", "With");
-    $strArray = explode(" ", preg_replace("/(?<=(?<!:|’s)\W)
+    $strArray = explode(" ",  preg_replace_callback("/(?<=(?<!:|’s)\W)
             (A|An|And|At|For|In|Of|On|Or|The|To|With)
-            (?=\W)/e", 'strtolower("$1")', ucwords(strtolower($str))));
+            (?=\W)/",
+function($matches) { return strtolower($matches[1]); } , ucwords(strtolower($str))));
     foreach ($strArray as &$word) {
         if (strlen($word) <= 4 && !in_array($word, $shortWords))
             $word = strtoupper($word);
@@ -77,9 +92,41 @@
 function array_sum_all($a) {
     if (!is_array($a))
         return $a;
+    $totale = 0;
     foreach ($a as $key => $value)
         $totale += array_sum_all($value);
     return $totale;
+}
+
+function show_stats($stats) {
+  echo "<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
@@ -137,6 +184,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 -->
@@ -232,11 +280,9 @@
                         <ul class="nav">
                             <li><a href="displayAgency.php">agencies</a></li>
                             <li><a href="displaySupplier.php">suppliers</a></li>
+                            <li><a href="displaySON.php">standing offers</a></li>
                             <li><a href="displayCategory.php">categories</a></li>
-                            <li><a href="displayCalendar.php">time periods</a></li>
-                            <!--  <li class="dropdown">
-                                  <a href="#" class="dropdown-toggle">metrics</a>
-                                  <ul class="dropdown-menu">-->
+                            <li><a href="displayCalendar.php">dates</a></li>
                             <li><a href="displayProcurementMethod.php">tenderm</a></li>
                             <li><a href="displayConfidentialities.php">confidentiality</a></li>
                             <li><a href="displayConsultancies.php">consultancies</a></li>
@@ -245,7 +291,7 @@
                         </ul>  
 
 
-                        <form method="post" action="search.php" class="pull-right">
+                        <form method="get" action="search.php" class="pull-right">
                             <input type="text" id="searchKeyword" name="searchKeyword"  value="" placeholder="Search" />
                             <input type="hidden" id="searchID" name="searchID" value=""/>
                         </form>
@@ -270,7 +316,7 @@
                 	<div class="well sidebar-nav">
                     		<li class="nav-header">Year</li>
 <?php
-foreach (range(2008,2015) as $year) {
+foreach (range(2007,2017) as $year) {
 $get = $_GET;
 $get['year'] = $year;
 $query = http_build_query($get);
@@ -316,4 +362,3 @@
 
             include ("graphs.inc.php");
 
-