<?php |
<?php |
include('template.inc.php'); |
include('template.inc.php'); |
include_header_documents("Charts"); |
include_header_documents("Charts"); |
include_once('../include/common.inc.php'); |
include_once('../include/common.inc.php'); |
$agenciesdb = $server->get_db('disclosr-agencies'); |
$agenciesdb = $server->get_db('disclosr-agencies'); |
|
|
$idtoname = Array(); |
$idtoname = Array(); |
|
$idtofoirequestssuccessful = Array(); |
foreach ($agenciesdb->get_view("app", "byCanonicalName")->rows as $row) { |
foreach ($agenciesdb->get_view("app", "byCanonicalName")->rows as $row) { |
$idtoname[$row->id] = trim($row->value->name); |
$idtoname[$row->id] = trim($row->value->name); |
|
$foirequestssuccessful = 0; |
|
if(isset($row->value->statistics->foiRequests)) { |
|
foreach ($row->value->statistics->foiRequests as $statperiod) { |
|
$statperiod=object_to_array($statperiod); |
|
if (isset($statperiod["Requests for other information granted in full"])) $foirequestssuccessful += $statperiod["Requests for other information granted in full"]; |
|
if (isset($statperiod["Requests for other information granted in part"])) $foirequestssuccessful += $statperiod["Requests for other information granted in part"]; |
|
} |
|
} |
|
$idtofoirequestssuccessful[$row->id] =$foirequestssuccessful; |
} |
} |
$foidocsdb = $server->get_db('disclosr-foidocuments'); |
$foidocsdb = $server->get_db('disclosr-foidocuments'); |
|
|
?> |
?> |
<div class="foundation-header"> |
<div class="foundation-header"> |
<h1><a href="about.php">Charts</a></h1> |
<h1><a href="about.php">Charts</a></h1> |
<h4 class="subheader"></h4> |
<h4 class="subheader"></h4> |
</div> |
</div> |
<div id="bydate" style="width:1000px;height:300px;"></div> |
<div id="bydate" style="width:1000px;height:300px;"></div> |
<div id="byagency" style="width:1000px;height:1400px;"></div> |
<div id="byagency" style="width:1000px;height:1400px;"></div> |
<script id="source"> |
<script id="source"> |
window.onload = function () { |
window.onload = function () { |
$(document).ready(function () { |
$(document).ready(function () { |
var |
var |
d1 = [], |
d1 = [], |
options1, |
options1, |
o1; |
o1; |
|
|
<?php |
<?php |
try { |
try { |
$rows = $foidocsdb->get_view("app", "byDateMonthYear?group=true",null, false,false,true)->rows; |
$rows = $foidocsdb->get_view("app", "byDateMonthYear?group=true",null, false,false,true)->rows; |
|
|
|
|
$dataValues = Array(); |
$dataValues = Array(); |
foreach ($rows as $row) { |
foreach ($rows as $row) { |
$dataValues[$row->key] = $row->value; |
$dataValues[$row->key] = $row->value; |
} |
} |
$i = 0; |
$i = 0; |
ksort($dataValues); |
ksort($dataValues); |
foreach ($dataValues as $key => $value) { |
foreach ($dataValues as $key => $value) { |
$date = date_create_from_format('Y-m-d', $key); |
$date = date_create_from_format('Y-m-d', $key); |
if (date_format($date, 'U') != "") { |
if (date_format($date, 'U') != "") { |
echo " d1.push([".date_format($date, 'U')."000, $value]);" . PHP_EOL; |
echo " d1.push([".date_format($date, 'U')."000, $value]);" . PHP_EOL; |
// echo " emplabels.push('$key');" . PHP_EOL; |
// echo " emplabels.push('$key');" . PHP_EOL; |
$i++; |
$i++; |
} |
} |
} |
} |
} catch (SetteeRestClientException $e) { |
} catch (SetteeRestClientException $e) { |
setteErrorHandler($e); |
setteErrorHandler($e); |
} |
} |
?> |
?> |
|
|
|
|
options1 = { |
options1 = { |
xaxis: { |
xaxis: { |
mode: 'time', |
mode: 'time', |
labelsAngle: 45 |
labelsAngle: 45 |
}, |
}, |
selection: { |
selection: { |
mode: 'x' |
mode: 'x' |
}, |
}, |
HtmlText: false, |
HtmlText: false, |
title: 'Disclosure Log entries added by Date' |
title: 'Disclosure Log entries added by Date' |
}; |
}; |
|
|
// Draw graph with default options, overwriting with passed options |
// Draw graph with default options, overwriting with passed options |
function drawGraph(opts) { |
function drawGraph(opts) { |
|
|
// Clone the options, so the 'options' variable always keeps intact. |
// Clone the options, so the 'options' variable always keeps intact. |
o1 = Flotr._.extend(Flotr._.clone(options1), opts || {}); |
o1 = Flotr._.extend(Flotr._.clone(options1), opts || {}); |
|
|
// Return a new graph. |
// Return a new graph. |
return Flotr.draw( |
return Flotr.draw( |
document.getElementById("bydate"), |
document.getElementById("bydate"), |
[ d1 ], |
[ d1 ], |
o1 |
o1 |
); |
); |
} |
} |
|
|
graph = drawGraph(); |
graph = drawGraph(); |
|
|
Flotr.EventAdapter.observe(document.getElementById("bydate"), 'flotr:select', function (area) { |
Flotr.EventAdapter.observe(document.getElementById("bydate"), 'flotr:select', function (area) { |
// Draw selected area |
// Draw selected area |
graph = drawGraph({ |
graph = drawGraph({ |
xaxis: { min: area.x1, max: area.x2, mode: 'time', labelsAngle: 45 }, |
xaxis: { min: area.x1, max: area.x2, mode: 'time', labelsAngle: 45 }, |
yaxis: { min: area.y1, max: area.y2 } |
yaxis: { min: area.y1, max: area.y2 } |
}); |
}); |
}); |
}); |
|
|
// When graph is clicked, draw the graph with default area. |
// When graph is clicked, draw the graph with default area. |
Flotr.EventAdapter.observe(document.getElementById("bydate"), 'flotr:click', function () { |
Flotr.EventAdapter.observe(document.getElementById("bydate"), 'flotr:click', function () { |
graph = drawGraph(); |
graph = drawGraph(); |
}); |
}); |
|
|
}); |
}); |
}; |
}; |
|
|
var d2 = []; |
var d2 = []; |
|
var d3 = []; |
var agencylabels = []; |
var agencylabels = []; |
function agencytrackformatter(obj) { |
function agencytrackformatter(obj) { |
|
|
return agencylabels[Math.floor(obj.y)] + " = " + obj.x; |
return agencylabels[Math.floor(obj.y)] + " = " + obj.x; |
|
|
} |
} |
function agencytickformatter(val, axis) { |
function agencytickformatter(val, axis) { |
if (agencylabels[Math.floor(val)]) { |
if (agencylabels[Math.floor(val)]) { |
return (agencylabels[Math.floor(val)]) ; |
return (agencylabels[Math.floor(val)]) ; |
|
|
} else { |
} else { |
return ""; |
return ""; |
} |
} |
} |
} |
<?php |
<?php |
try { |
try { |
$rows = $foidocsdb->get_view("app", "byAgencyID?group=true",null, false,false,true)->rows; |
$rows = $foidocsdb->get_view("app", "byAgencyID?group=true",null, false,false,true)->rows; |
function cmp($a, $b) |
function cmp($a, $b) |
{ |
{ |
return $a->value > $b->value; |
return $a->value > $b->value; |
} |
} |
usort($rows, "cmp"); |
usort($rows, "cmp"); |
|
|
$dataValues = Array(); |
$dataValues = Array(); |
$i = 0; |
$i = 0; |
foreach ($rows as $row) { |
foreach ($rows as $row) { |
echo " d2.push([ $row->value,$i]);" . PHP_EOL; |
echo " d2.push([ $row->value,$i]);" . PHP_EOL; |
|
echo " d3.push([ ".$idtofoirequestssuccessful[$row->key].",$i]);" . PHP_EOL; |
echo " agencylabels.push(['".str_replace("'","",$idtoname[$row->key])."']);" . PHP_EOL; |
echo " agencylabels.push(['".str_replace("'","",$idtoname[$row->key])."']);" . PHP_EOL; |
|
|
$i++; |
$i++; |
} |
} |
} catch (SetteeRestClientException $e) { |
} catch (SetteeRestClientException $e) { |
setteErrorHandler($e); |
setteErrorHandler($e); |
} |
} |
?> |
?> |
// Draw the graph |
// Draw the graph |
Flotr.draw( |
Flotr.draw( |
document.getElementById("byagency"), |
document.getElementById("byagency"), |
[d2], |
[d2], |
{ |
{ |
title: "Disclosure Log entries by Agency", |
title: "Disclosure Log entries by Agency", |
bars: { |
bars: { |
show: true, |
show: true, |
horizontal: true, |
horizontal: true, |
shadowSize: 0, |
shadowSize: 0, |
barWidth: 0.5 |
barWidth: 0.5 |
}, |
}, |
mouse: { |
mouse: { |
track: true, |
track: true, |
relative: true, |
relative: true, |
trackFormatter: agencytrackformatter |
trackFormatter: agencytrackformatter |
}, |
}, |
yaxis: { |
yaxis: { |
minorTickFreq: 1, |
minorTickFreq: 1, |
noTicks: agencylabels.length, |
noTicks: agencylabels.length, |
showMinorLabels: true, |
showMinorLabels: true, |
tickFormatter: agencytickformatter |
tickFormatter: agencytickformatter |
}, |
}, |
xaxis: { |
xaxis: { |
min: 0, |
min: 0, |
autoscaleMargin: 1 |
autoscaleMargin: 1 |
}, |
}, |
legend: { |
legend: { |
show: false |
show: true |
} |
} |
} |
} |
); |
); |
</script> |
</script> |
|
|
<?php |
<?php |
include_footer_documents(); |
include_footer_documents(); |
?> |
?> |
|
|
|
|