Let getAllQueries() return ordered JSON hash.

Make getAllQueries() take an optionally argument that can be any of:

* orderByClientDomainTime
* orderByClientTimeDomain
* orderByTimeClientDomain
* orderByTimeDomainClient
* orderByDomainClientTime
* orderByDomainTimeClient
* ANY THING ELSE

If argument is one of orderBy* make getAllQueries() return with JSON
hash that is structured by the way the argument sets.

This does not break the originally function of getAllQueries() and is backwards compatible.
This commit is contained in:
Björn Bohman
2016-12-08 10:58:42 +01:00
parent 2f03c5491c
commit 22a99bdbcf
+23 -10
View File
@@ -132,7 +132,7 @@
);
}
function getAllQueries() {
function getAllQueries($orderBy) {
global $log;
$allQueries = array("data" => array());
$dns_queries = getDnsQueriesAll($log);
@@ -158,17 +158,30 @@
}
if ( $status != ""){
array_push($allQueries['data'], array(
$time->format('Y-m-d\TH:i:s'),
$type,
$domain,
hasHostName($client),
$status,
""
));
if($orderBy == "orderByClientDomainTime"){
$allQueries['data'][hasHostName($client)][$domain][$time->format('Y-m-d\TH:i:s')] = $status;
}elseif ($orderBy == "orderByClientTimeDomain"){
$allQueries['data'][hasHostName($client)][$time->format('Y-m-d\TH:i:s')][$domain] = $status;
}elseif ($orderBy == "orderByTimeClientDomain"){
$allQueries['data'][$time->format('Y-m-d\TH:i:s')][hasHostName($client)][$domain] = $status;
}elseif ($orderBy == "orderByTimeDomainClient"){
$allQueries['data'][$time->format('Y-m-d\TH:i:s')][$domain][hasHostName($client)] = $status;
}elseif ($orderBy == "orderByDomainClientTime"){
$allQueries['data'][$domain][hasHostName($client)][$time->format('Y-m-d\TH:i:s')] = $status;
}elseif ($orderBy == "orderByDomainTimeClient"){
$allQueries['data'][$domain][$time->format('Y-m-d\TH:i:s')][hasHostName($client)] = $status;
}else{
array_push($allQueries['data'], array(
$time->format('Y-m-d\TH:i:s'),
$type,
$domain,
hasHostName($client),
$status,
""
));
}
}
}
return $allQueries;
}