ListController: set up sort control before paginating a query
This commit is contained in:
parent
9e3d65e4e9
commit
ca79b020e3
|
@ -97,6 +97,13 @@ class Monitoring_ListController extends Controller
|
|||
), $this->extraColumns()));
|
||||
$this->filterQuery($query);
|
||||
$this->applyRestriction('monitoring/hosts/filter', $query);
|
||||
$this->setupSortControl(array(
|
||||
'host_severity' => $this->translate('Severity'),
|
||||
'host_state' => $this->translate('Current State'),
|
||||
'host_display_name' => $this->translate('Hostname'),
|
||||
'host_address' => $this->translate('Address'),
|
||||
'host_last_check' => $this->translate('Last Check')
|
||||
), $query);
|
||||
$this->view->hosts = $query->paginate();
|
||||
|
||||
$this->view->stats = $this->backend->select()->from('statusSummary', array(
|
||||
|
@ -113,13 +120,6 @@ class Monitoring_ListController extends Controller
|
|||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->hosts);
|
||||
$this->setupSortControl(array(
|
||||
'host_severity' => $this->translate('Severity'),
|
||||
'host_state' => $this->translate('Current State'),
|
||||
'host_display_name' => $this->translate('Hostname'),
|
||||
'host_address' => $this->translate('Address'),
|
||||
'host_last_check' => $this->translate('Last Check')
|
||||
), $query);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -181,10 +181,6 @@ class Monitoring_ListController extends Controller
|
|||
$query = $this->backend->select()->from('serviceStatus', $columns);
|
||||
$this->filterQuery($query);
|
||||
$this->applyRestriction('monitoring/services/filter', $query);
|
||||
$this->view->services = $query->paginate();
|
||||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->services);
|
||||
$this->setupSortControl(array(
|
||||
'service_severity' => $this->translate('Service Severity'),
|
||||
'service_state' => $this->translate('Current Service State'),
|
||||
|
@ -196,6 +192,10 @@ class Monitoring_ListController extends Controller
|
|||
'host_address' => $this->translate('Host Address'),
|
||||
'host_last_check' => $this->translate('Last Host Check')
|
||||
), $query);
|
||||
$this->view->services = $query->paginate();
|
||||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->services);
|
||||
|
||||
$this->view->stats = $this->backend->select()->from('statusSummary', array(
|
||||
'services_total',
|
||||
|
@ -246,10 +246,6 @@ class Monitoring_ListController extends Controller
|
|||
'service_display_name'
|
||||
));
|
||||
$this->filterQuery($query);
|
||||
$this->view->downtimes = $query->paginate();
|
||||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->downtimes);
|
||||
$this->setupSortControl(array(
|
||||
'downtime_is_in_effect' => $this->translate('Is In Effect'),
|
||||
'host_display_name' => $this->translate('Host'),
|
||||
|
@ -262,6 +258,10 @@ class Monitoring_ListController extends Controller
|
|||
'downtime_scheduled_end' => $this->translate('Scheduled End'),
|
||||
'downtime_duration' => $this->translate('Duration')
|
||||
), $query);
|
||||
$this->view->downtimes = $query->paginate();
|
||||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->downtimes);
|
||||
|
||||
if ($this->Auth()->hasPermission('monitoring/command/downtime/delete')) {
|
||||
$this->view->delDowntimeForm = new DeleteDowntimeCommandForm();
|
||||
|
@ -292,13 +292,13 @@ class Monitoring_ListController extends Controller
|
|||
'service_display_name'
|
||||
));
|
||||
$this->filterQuery($query);
|
||||
$this->setupSortControl(array(
|
||||
'notification_start_time' => $this->translate('Notification Start')
|
||||
), $query);
|
||||
$this->view->notifications = $query->paginate();
|
||||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->notifications);
|
||||
$this->setupSortControl(array(
|
||||
'notification_start_time' => $this->translate('Notification Start')
|
||||
), $query);
|
||||
}
|
||||
|
||||
public function contactsAction()
|
||||
|
@ -326,10 +326,6 @@ class Monitoring_ListController extends Controller
|
|||
'contact_notify_host_downtime',
|
||||
));
|
||||
$this->filterQuery($query);
|
||||
$this->view->contacts = $query->paginate();
|
||||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->contacts);
|
||||
$this->setupSortControl(array(
|
||||
'contact_name' => $this->translate('Name'),
|
||||
'contact_alias' => $this->translate('Alias'),
|
||||
|
@ -338,6 +334,10 @@ class Monitoring_ListController extends Controller
|
|||
'contact_notify_service_timeperiod' => $this->translate('Service Notification Timeperiod'),
|
||||
'contact_notify_host_timeperiod' => $this->translate('Host Notification Timeperiod')
|
||||
), $query);
|
||||
$this->view->contacts = $query->paginate();
|
||||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->contacts);
|
||||
}
|
||||
|
||||
public function eventgridAction()
|
||||
|
@ -397,6 +397,11 @@ class Monitoring_ListController extends Controller
|
|||
));
|
||||
$this->filterQuery($query);
|
||||
|
||||
$this->setupSortControl(array(
|
||||
'contactgroup_name' => $this->translate('Contactgroup Name'),
|
||||
'contactgroup_alias' => $this->translate('Contactgroup Alias')
|
||||
), $query);
|
||||
|
||||
// Fetch and prepare all contact groups:
|
||||
$contactgroups = $query->getQuery()->fetchAll();
|
||||
$groupData = array();
|
||||
|
@ -411,11 +416,6 @@ class Monitoring_ListController extends Controller
|
|||
}
|
||||
// TODO: Find a better naming
|
||||
$this->view->groupData = $groupData;
|
||||
|
||||
$this->setupSortControl(array(
|
||||
'contactgroup_name' => $this->translate('Contactgroup Name'),
|
||||
'contactgroup_alias' => $this->translate('Contactgroup Alias')
|
||||
), $query);
|
||||
}
|
||||
|
||||
public function commentsAction()
|
||||
|
@ -438,10 +438,6 @@ class Monitoring_ListController extends Controller
|
|||
'service_display_name'
|
||||
));
|
||||
$this->filterQuery($query);
|
||||
$this->view->comments = $query->paginate();
|
||||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->comments);
|
||||
$this->setupSortControl(
|
||||
array(
|
||||
'comment_timestamp' => $this->translate('Comment Timestamp'),
|
||||
|
@ -452,6 +448,10 @@ class Monitoring_ListController extends Controller
|
|||
),
|
||||
$query
|
||||
);
|
||||
$this->view->comments = $query->paginate();
|
||||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->comments);
|
||||
|
||||
if ($this->Auth()->hasPermission('monitoring/command/comment/delete')) {
|
||||
$this->view->delCommentForm = new DeleteCommentCommandForm();
|
||||
|
@ -498,10 +498,6 @@ class Monitoring_ListController extends Controller
|
|||
// TODO(el): Can't default to the sort rules of the data view because it's meant for both host groups and
|
||||
// service groups. We should separate them.
|
||||
$this->filterQuery($query);
|
||||
$this->view->servicegroups = $query->paginate();
|
||||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->servicegroups);
|
||||
$this->setupSortControl(array(
|
||||
'services_severity' => $this->translate('Severity'),
|
||||
'servicegroup_alias' => $this->translate('Service Group Name'),
|
||||
|
@ -512,6 +508,10 @@ class Monitoring_ListController extends Controller
|
|||
'services_warning' => $this->translate('Services WARNING'),
|
||||
'services_pending' => $this->translate('Services PENDING')
|
||||
), $query);
|
||||
$this->view->servicegroups = $query->paginate();
|
||||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->servicegroups);
|
||||
}
|
||||
|
||||
public function hostgroupsAction()
|
||||
|
@ -549,10 +549,6 @@ class Monitoring_ListController extends Controller
|
|||
// TODO(el): Can't default to the sort rules of the data view because it's meant for both host groups and
|
||||
// service groups. We should separate them.
|
||||
$this->filterQuery($query);
|
||||
$this->view->hostgroups = $query->paginate();
|
||||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->hostgroups);
|
||||
$this->setupSortControl(array(
|
||||
'services_severity' => $this->translate('Severity'),
|
||||
'hostgroup_alias' => $this->translate('Host Group Name'),
|
||||
|
@ -563,6 +559,10 @@ class Monitoring_ListController extends Controller
|
|||
'services_warning' => $this->translate('Services WARNING'),
|
||||
'services_pending' => $this->translate('Services PENDING')
|
||||
), $query);
|
||||
$this->view->hostgroups = $query->paginate();
|
||||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->hostgroups);
|
||||
}
|
||||
|
||||
public function eventhistoryAction()
|
||||
|
@ -588,13 +588,13 @@ class Monitoring_ListController extends Controller
|
|||
));
|
||||
|
||||
$this->filterQuery($query);
|
||||
$this->setupSortControl(array(
|
||||
'timestamp' => $this->translate('Occurence')
|
||||
), $query);
|
||||
$this->view->history = $query->paginate();
|
||||
|
||||
$this->setupLimitControl();
|
||||
$this->setupPaginationControl($this->view->history);
|
||||
$this->setupSortControl(array(
|
||||
'timestamp' => $this->translate('Occurence')
|
||||
), $query);
|
||||
}
|
||||
|
||||
public function servicegridAction()
|
||||
|
|
Loading…
Reference in New Issue