monitoring: Fix link to an object's contact in the detail views

This commit is contained in:
Eric Lippmann 2014-10-07 13:21:28 +02:00
parent f954e8ce48
commit 2126b8c341
4 changed files with 32 additions and 29 deletions

View File

@ -5,7 +5,7 @@ if (! empty($object->contacts)) {
$list = array(); $list = array();
foreach ($object->contacts as $contact) { foreach ($object->contacts as $contact) {
$list[] = $this->qlink($contact->contact_alias, 'monitoring/show/contact', array( $list[] = $this->qlink($contact->contact_alias, 'monitoring/show/contact', array(
'contact_name' => $contact->contact_name 'contact' => $contact->contact_name
)); ));
} }
@ -24,7 +24,7 @@ if (! empty($object->contactgroups)) {
$list[] = $this->qlink( $list[] = $this->qlink(
$contactgroup->contactgroup_alias, $contactgroup->contactgroup_alias,
'monitoring/list/contactgroups', 'monitoring/list/contactgroups',
array('contactgroup_name' => $contactgroup->contactgroup_name) array('contactgroup' => $contactgroup->contactgroup_name)
); );
} }

View File

@ -8,39 +8,39 @@ class ContactgroupQuery extends IdoQuery
{ {
protected $columnMap = array( protected $columnMap = array(
'contactgroups' => array( 'contactgroups' => array(
'contactgroup_name' => 'cgo.name1 COLLATE latin1_general_ci', 'contactgroup' => 'cgo.name1 COLLATE latin1_general_ci',
'contactgroup_alias' => 'cg.alias', 'contactgroup_name' => 'cgo.name1 COLLATE latin1_general_ci',
'contactgroup_alias' => 'cg.alias',
), ),
'contacts' => array( 'contacts' => array(
'contact_name' => 'co.name1 COLLATE latin1_general_ci', 'contact' => 'co.name1 COLLATE latin1_general_ci',
'contact_alias' => 'c.alias', 'contact_name' => 'co.name1 COLLATE latin1_general_ci',
'contact_email' => 'c.email_address', 'contact_alias' => 'c.alias',
'contact_pager' => 'c.pager_address', 'contact_email' => 'c.email_address',
'contact_has_host_notfications' => 'c.host_notifications_enabled', 'contact_pager' => 'c.pager_address',
'contact_has_service_notfications' => 'c.service_notifications_enabled', 'contact_has_host_notfications' => 'c.host_notifications_enabled',
'contact_can_submit_commands' => 'c.can_submit_commands', 'contact_has_service_notfications' => 'c.service_notifications_enabled',
'contact_notify_service_recovery' => 'c.notify_service_recovery', 'contact_can_submit_commands' => 'c.can_submit_commands',
'contact_notify_service_warning' => 'c.notify_service_warning', 'contact_notify_service_recovery' => 'c.notify_service_recovery',
'contact_notify_service_critical' => 'c.notify_service_critical', 'contact_notify_service_warning' => 'c.notify_service_warning',
'contact_notify_service_unknown' => 'c.notify_service_unknown', 'contact_notify_service_critical' => 'c.notify_service_critical',
'contact_notify_service_flapping' => 'c.notify_service_flapping', 'contact_notify_service_unknown' => 'c.notify_service_unknown',
'contact_notify_service_downtime' => 'c.notify_service_recovery', 'contact_notify_service_flapping' => 'c.notify_service_flapping',
'contact_notify_host_recovery' => 'c.notify_host_recovery', 'contact_notify_service_downtime' => 'c.notify_service_recovery',
'contact_notify_host_down' => 'c.notify_host_down', 'contact_notify_host_recovery' => 'c.notify_host_recovery',
'contact_notify_host_unreachable' => 'c.notify_host_unreachable', 'contact_notify_host_down' => 'c.notify_host_down',
'contact_notify_host_flapping' => 'c.notify_host_flapping', 'contact_notify_host_unreachable' => 'c.notify_host_unreachable',
'contact_notify_host_downtime' => 'c.notify_host_downtime', 'contact_notify_host_flapping' => 'c.notify_host_flapping',
'contact_notify_host_downtime' => 'c.notify_host_downtime',
), ),
'hosts' => array( 'hosts' => array(
'host_object_id' => 'ho.object_id', 'host' => 'ho.name1',
'host_name' => 'ho.name1', 'host_name' => 'ho.name1'
'host' => 'ho.name1'
), ),
'services' => array( 'services' => array(
'service_object_id' => 'so.object_id', 'service' => 'so.name2 COLLATE latin1_general_ci',
'service_host_name' => 'so.name1 COLLATE latin1_general_ci', 'service_description' => 'so.name2 COLLATE latin1_general_ci',
'service' => 'so.name2 COLLATE latin1_general_ci', 'service_host_name' => 'so.name1 COLLATE latin1_general_ci'
'service_description' => 'so.name2 COLLATE latin1_general_ci',
) )
); );

View File

@ -18,6 +18,7 @@ class Contact extends DataView
public function getColumns() public function getColumns()
{ {
return array( return array(
'contact',
'contact_name', 'contact_name',
'contact_alias', 'contact_alias',
'contact_email', 'contact_email',

View File

@ -18,7 +18,9 @@ class Contactgroup extends DataView
public function getColumns() public function getColumns()
{ {
return array( return array(
'contact',
'contact_name', 'contact_name',
'contactgroup',
'contactgroup_name', 'contactgroup_name',
'contactgroup_alias', 'contactgroup_alias',
'host', 'host',