mirror of
https://github.com/Icinga/icingaweb2.git
synced 2025-07-31 01:34:09 +02:00
parent
7efefc1975
commit
6c07881466
@ -125,17 +125,26 @@ abstract class FilterChain extends Filter
|
|||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function listFilteredColumns()
|
/**
|
||||||
|
* List and return all column names referenced in this filter
|
||||||
|
*
|
||||||
|
* @param array $columns The columns listed so far
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function listFilteredColumns(array $columns = array())
|
||||||
{
|
{
|
||||||
$columns = array();
|
|
||||||
foreach ($this->filters as $filter) {
|
foreach ($this->filters as $filter) {
|
||||||
if ($filter instanceof FilterExpression) {
|
if ($filter instanceof FilterExpression) {
|
||||||
$columns[] = $filter->getColumn();
|
$column= $filter->getColumn();
|
||||||
|
if (! in_array($column, $columns, true)) {
|
||||||
|
$columns[] = $column;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
$columns += $filter->listFilteredColumns();
|
$columns = $filter->listFilteredColumns($columns);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// array_unique?
|
|
||||||
return $columns;
|
return $columns;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user