array( 'columns' => array( 'service_host_name', 'service_description' ), 'order' => self::SORT_ASC ), 'host_address' => array( 'columns' => array( 'host_ipv4', 'service_description' ), 'order' => self::SORT_ASC ), 'host_last_state_change' => array( 'order' => self::SORT_ASC ), 'host_severity' => array( 'columns' => array( 'host_severity', 'host_last_state_change', ), 'order' => self::SORT_ASC ), 'service_severity' => array( 'columns' => array( 'service_severity', 'service_last_state_change', ), 'order' => self::SORT_DESC ) ); } public function getFilterColumns() { return array('hostgroup', 'servicegroup', 'service_problems'); } public function isValidFilterTarget($column) { if ($column[0] === '_' && preg_match('/^_(?:host|service)_/', $column) ) { return true; } return parent::isValidFilterTarget($column); } }