--- a/lib/common.inc.php +++ b/lib/common.inc.php @@ -1,271 +1,546 @@ -mode) { - $openid->required = array('contact/email'); - $openid->identity = 'https://www.google.com/accounts/o8/id'; - header('Location: ' . $openid->authUrl()); - } -} - -function auth() { - global $openid; - if ($_SESSION['authed'] == true) { - return true; - } - - if ($openid->mode) { - $attr = $openid->getAttributes(); - if ($attr['contact/email'] != 'maxious@gmail.com') { - die('Access Denied'); - } else { - $_SESSION['authed'] = true; - } - } else { - login(); - } -} - -// $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); -function databaseError($errMsg) { - if ($errMsg[2] != "") { - echo '
'; - die(print_r($errMsg, true)); - echo "
"; - } -} - -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("/(?<=(? $value) - $totale += array_sum_all($value); - return $totale; -} - -// magic query modifiers -$agency = filter_var($_REQUEST['agency'], FILTER_SANITIZE_STRING); -if ($agency != "") - $agencyQ = "agencyName = '" . $agency . "' AND "; - -$supplier = filter_var($_REQUEST['supplier'], FILTER_SANITIZE_STRING); -if ($supplier != "") { - $supplierParts = explode("-", $supplier); - $supplierName = "%" . $supplierParts[1] . "%"; - $supplierABN = $supplierParts[0]; - if ($supplierParts[0] > 0) - $supplierQ = ' "supplierABN" = :supplierABN AND '; - else - $supplierQ = ' "supplierName" LIKE :supplierName AND '; -} - -$startYear = 2007; -$year = filter_var($_REQUEST['year'], FILTER_SANITIZE_NUMBER_INT); -if ($year != "") - $yearQ = "YEAR(publishDate) = " . $year . " AND "; - -$standardQ = ' "childCN" is null '; // AND YEAR(contractStart) >= 2007 AND YEAR(contractStart) <= 2010'; -$start = 0.0; -function local_url() { - return "http://" . $_SERVER['HTTP_HOST'] . rtrim(dirname($_SERVER['PHP_SELF']), '/\\') . "/"; -} -function include_header($title) { - global $start; - ?> - - - - Contract Dashboard - <?php echo $title; ?> - - - - - - - - - - - - - - - -
-
- -
-
- - -
- -
- ' . "Processing time: " . sprintf("%.4f", ($end - $start)) . " seconds" . '
'; - } - - include ("graphs.inc.php"); - ?> - + 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(); +function login() { + global $openid; + if (!$openid->mode) { + $openid->required = array('contact/email'); + $openid->identity = 'https://www.google.com/accounts/o8/id'; + header('Location: ' . $openid->authUrl()); + } +} + +function auth() { + global $openid; + if ($_SESSION['authed'] == true) { + return true; + } + + if ($openid->mode) { + $attr = $openid->getAttributes(); + if ($attr['contact/email'] != 'maxious@gmail.com') { + die('Access Denied'); + } else { + $_SESSION['authed'] = true; + } + } else { + login(); + } +}*/ + +// $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); +function databaseError($errMsg) { + if ($errMsg[2] != "") { + echo '
'; + die(print_r($errMsg, true)); + echo "
"; + } +} +function cleanseName($input) { + + return trim(join(" ",array_filter(explode(" ",strtolower($input)), function($v, $k) { + $cleanseNamesCorp = Array( + "ltd", + "limited", + "australia", + "australian", + "australasia", + "(aus)", + "(aust)", + "(australia)", + "the", + "pty", + "contractors", + "p/l", + "inc.", + "inc", + "incorporated" + ); + return !in_array($v,$cleanseNamesCorp) ; +}, ARRAY_FILTER_USE_BOTH))); +} +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_callback("/(?<=(? $value) + $totale += array_sum_all($value); + return $totale; +} + +function show_stats($stats) { + setlocale(LC_MONETARY, 'en_US'); + $value = number_format(doubleval($stats['total_value']) , 2); + echo "
{$stats['total']} contracts, total value $$value
"; + if ($stats['consultancy'] > 0) { + echo "Consultancies: {$stats['consultancy']} contracts, ".percent($stats['consultancy'],$stats['total']); + echo "%
"; + } + if ($stats['confidentialityContract']+$stats['confidentialityOutputs'] > 0) { + $confidentialities = $stats['confidentialityContract']+$stats['confidentialityOutputs']; + echo "Confidentialities: $confidentialities contracts, ".percent( $confidentialities,$stats['total'])."%"; + echo "( {$stats['confidentialityContract']} on the contract, {$stats['confidentialityOutputs']} on the outputs)"; + echo "
"; + } + echo "Procurement methods: "; + 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 != "") + $agencyQ = "agencyName = '" . $agency . "' AND "; + +$supplier = filter_var($_REQUEST['supplier'], FILTER_SANITIZE_STRING); +if ($supplier != "") { + if ($supplier[0] !== '-') { + $supplierParts = explode("-", $supplier); + + $supplierABN = array_shift($supplierParts); + $supplierName = "%" . implode('-',$supplierParts) . "%"; + + $supplierQ = ' "supplierABN" = :supplierABN AND '; + } else { + $supplierName = "%" . substr($supplier,1) . "%"; + $supplierQ = ' "supplierName" ILIKE :supplierName AND '; + } +} + +$startYear = 2007; +$year = filter_var($_REQUEST['year'], FILTER_SANITIZE_NUMBER_INT); +if ($year != "") { + $yearQ = 'extract(year from "contractStart") = ' . $year . " AND "; +} +$standardQ = ' "childCN" is null '; // AND YEAR(contractStart) >= 2007 AND YEAR(contractStart) <= 2010'; +$start = 0.0; + +function local_url() { + return "http://" . $_SERVER['HTTP_HOST'] . rtrim(dirname($_SERVER['PHP_SELF']), '/\\') . "/"; +} + +function include_header($title) { + global $start; + ?> + + + + <?php echo $title; ?> - Contract Dashboard + + + + + + + + + + + + + + + + + + + + +
+
+ +
+
'; + } + + include ("graphs.inc.php"); +