コード例 #1
0
ファイル: tr_events.php プロジェクト: rennhak/zabbix
$fs_icon = new CDiv(SPACE, 'fullscreen');
$fs_icon->addOption('title', $_REQUEST['fullscreen'] ? S_NORMAL . ' ' . S_VIEW : S_FULLSCREEN);
$fs_icon->addAction('onclick', new CScript("javascript: document.location = '" . $url . "';"));
//-------
$left_tab = new CTable();
$left_tab->setCellPadding(3);
$left_tab->setCellSpacing(3);
$left_tab->addOption('border', 0);
$left_tab->addRow(create_hat(S_EVENT . SPACE . S_SOURCE . SPACE . S_DETAILS, make_trigger_details($_REQUEST['triggerid'], $trigger_data), null, 'hat_triggerdetails'));
$left_tab->addRow(create_hat(S_EVENT_DETAILS, make_event_details($_REQUEST['eventid']), null, 'hat_eventdetails'));
$right_tab = new CTable();
$right_tab->setCellPadding(3);
$right_tab->setCellSpacing(3);
$right_tab->addOption('border', 0);
$right_tab->addRow(create_hat(S_ACKNOWLEDGES, make_acktab_by_eventid($_REQUEST['eventid']), null, 'hat_eventack', get_profile('web.tr_events.hats.hat_eventack.state', 1)));
$right_tab->addRow(create_hat(S_MESSAGE_ACTIONS, get_action_msgs_for_event($_REQUEST['eventid']), null, 'hat_eventactionmsgs', get_profile('web.tr_events.hats.hat_eventactionmsgs.state', 1)));
$right_tab->addRow(create_hat(S_COMMAND_ACTIONS, get_action_cmds_for_event($_REQUEST['eventid']), null, 'hat_eventactioncmds', get_profile('web.tr_events.hats.hat_eventactioncmds.state', 1)));
$right_tab->addRow(create_hat(S_EVENTS . SPACE . S_LIST . SPACE . '[' . S_LAST . ' 20]', make_small_eventlist($_REQUEST['triggerid'], $trigger_data), null, 'hat_eventlist', get_profile('web.tr_events.hats.hat_eventlist.state', 1)));
$td_l = new CCol($left_tab);
$td_l->addOption('valign', 'top');
$td_r = new CCol($right_tab);
$td_r->addOption('valign', 'top');
$outer_table = new CTable();
$outer_table->addOption('border', 0);
$outer_table->setCellPadding(1);
$outer_table->setCellSpacing(1);
$outer_table->addRow(array($td_l, $td_r));
$p_elements[] = $outer_table;
$latest_hat = create_hat($text, $p_elements, array($fs_icon), 'hat_tr_events', get_profile('web.tr_events.hats.hat_tr_events.state', 1));
$latest_hat->show();
include_once 'include/page_footer.php';
コード例 #2
0
    $event_ack->addHeader(S_ACKNOWLEDGES);
    $right_tab->addRow($event_ack);
}
//----------------
// event sms actions
$actions_sms = new CWidget('hat_eventactionmsgs', get_action_msgs_for_event($_REQUEST['eventid']), CProfile::get('web.tr_events.hats.hat_eventactionmsgs.state', 1));
$actions_sms->addHeader(S_MESSAGE_ACTIONS);
$right_tab->addRow($actions_sms);
//----------------
// event cmd actions
$actions_cmd = new CWidget('hat_eventactionmcmds', get_action_cmds_for_event($_REQUEST['eventid']), CProfile::get('web.tr_events.hats.hat_eventactioncmds.state', 1));
$actions_cmd->addHeader(S_COMMAND_ACTIONS);
$right_tab->addRow($actions_cmd);
//----------------
// event history
$events_histry = new CWidget('hat_eventlist', make_small_eventlist($_REQUEST['eventid'], $trigger), CProfile::get('web.tr_events.hats.hat_eventlist.state', 1));
$events_histry->addHeader(S_EVENTS . SPACE . S_LIST . SPACE . '[' . S_PREVIOUS_EVENTS . ' 20]');
$right_tab->addRow($events_histry);
//----------------
$td_l = new CCol($left_tab);
$td_l->setAttribute('valign', 'top');
$td_r = new CCol($right_tab);
$td_r->setAttribute('valign', 'top');
$outer_table = new CTable();
$outer_table->setAttribute('border', 0);
$outer_table->setCellPadding(1);
$outer_table->setCellSpacing(1);
$outer_table->addRow(array($td_l, $td_r));
$tr_event_wdgt->addItem($outer_table);
$tr_event_wdgt->show();
include_once 'include/page_footer.php';
コード例 #3
0
$left_col[] = $triggerDetails;
// event details
$eventDetails = new CUIWidget('hat_eventdetails', make_event_details($event, $trigger));
$eventDetails->setHeader(_('Event details'));
$left_col[] = $eventDetails;
$right_col = array();
// if acknowledges are not disabled in configuration, let's show them
if ($config['event_ack_enable']) {
    $event_ack = new CUIWidget('hat_eventack', makeAckTab($event), CProfile::get('web.tr_events.hats.hat_eventack.state', 1));
    $event_ack->setHeader(_('Acknowledges'));
    $right_col[] = $event_ack;
}
// event sms actions
$actions_sms = new CUIWidget('hat_eventactionmsgs', get_action_msgs_for_event($event), CProfile::get('web.tr_events.hats.hat_eventactionmsgs.state', 1));
$actions_sms->setHeader(_('Message actions'));
$right_col[] = $actions_sms;
// event cmd actions
$actions_cmd = new CUIWidget('hat_eventactionmcmds', get_action_cmds_for_event($event), CProfile::get('web.tr_events.hats.hat_eventactioncmds.state', 1));
$actions_cmd->setHeader(_('Command actions'));
$right_col[] = $actions_cmd;
// event history
$events_histry = new CUIWidget('hat_eventlist', make_small_eventlist($event), CProfile::get('web.tr_events.hats.hat_eventlist.state', 1));
$events_histry->setHeader(_('Event list [previous 20]'));
$right_col[] = $events_histry;
$leftDiv = new CDiv($left_col, 'column');
$middleDiv = new CDiv($right_col, 'column');
$ieTab = new CTable();
$ieTab->addRow(array($leftDiv, $middleDiv), 'top');
$tr_event_wdgt->addItem($ieTab);
$tr_event_wdgt->show();
require_once dirname(__FILE__) . '/include/page_footer.php';
コード例 #4
0
ファイル: tr_events.php プロジェクト: jbfavre/debian-zabbix
require_once dirname(__FILE__) . '/include/page_header.php';
define('PAGE_SIZE', 100);
// VAR	TYPE	OPTIONAL	FLAGS	VALIDATION	EXCEPTION
$fields = ['triggerid' => [T_ZBX_INT, O_OPT, P_SYS, DB_ID, PAGE_TYPE_HTML . '==' . $page['type']], 'eventid' => [T_ZBX_INT, O_OPT, P_SYS, DB_ID, PAGE_TYPE_HTML . '==' . $page['type']], 'fullscreen' => [T_ZBX_INT, O_OPT, P_SYS, IN('0,1'), null], 'widget' => [T_ZBX_STR, O_OPT, P_ACT, IN('"' . WIDGET_HAT_EVENTACK . '","' . WIDGET_HAT_EVENTACTIONMSGS . '","' . WIDGET_HAT_EVENTACTIONMCMDS . '","' . WIDGET_HAT_EVENTLIST . '"'), null], 'state' => [T_ZBX_INT, O_OPT, P_ACT, IN('0,1'), null]];
check_fields($fields);
/*
 * Ajax
 */
if (hasRequest('widget') && hasRequest('state')) {
    CProfile::update('web.tr_events.hats.' . getRequest('widget') . '.state', getRequest('state'), PROFILE_TYPE_INT);
}
if ($page['type'] == PAGE_TYPE_JS || $page['type'] == PAGE_TYPE_HTML_BLOCK) {
    require_once dirname(__FILE__) . '/include/page_footer.php';
    exit;
}
// triggers
$triggers = API::Trigger()->get(['output' => API_OUTPUT_EXTEND, 'selectHosts' => API_OUTPUT_EXTEND, 'triggerids' => getRequest('triggerid')]);
if (!$triggers) {
    access_deny();
}
$trigger = reset($triggers);
// events
$events = API::Event()->get(['output' => API_OUTPUT_EXTEND, 'select_alerts' => API_OUTPUT_EXTEND, 'select_acknowledges' => API_OUTPUT_EXTEND, 'selectHosts' => API_OUTPUT_EXTEND, 'source' => EVENT_SOURCE_TRIGGERS, 'object' => EVENT_OBJECT_TRIGGER, 'eventids' => getRequest('eventid'), 'objectids' => getRequest('triggerid')]);
$event = reset($events);
/*
 * Display
 */
$config = select_config();
$eventTab = (new CTable())->addRow([new CDiv([(new CUiWidget(WIDGET_HAT_TRIGGERDETAILS, make_trigger_details($trigger)))->setHeader(_('Event source details')), (new CUiWidget(WIDGET_HAT_EVENTDETAILS, make_event_details($event, $trigger, $page['file'] . '?triggerid=' . getRequest('triggerid') . '&eventid=' . getRequest('eventid'))))->setHeader(_('Event details'))]), new CDiv([$config['event_ack_enable'] ? (new CCollapsibleUiWidget(WIDGET_HAT_EVENTACK, makeAckTab($event['acknowledges'])))->setExpanded((bool) CProfile::get('web.tr_events.hats.' . WIDGET_HAT_EVENTACK . '.state', true))->setHeader(_('Acknowledges'), [], false, 'tr_events.php') : null, (new CCollapsibleUiWidget(WIDGET_HAT_EVENTACTIONMSGS, getActionMessages($event['alerts'])))->setExpanded((bool) CProfile::get('web.tr_events.hats.' . WIDGET_HAT_EVENTACTIONMSGS . '.state', true))->setHeader(_('Message actions'), [], false, 'tr_events.php'), (new CCollapsibleUiWidget(WIDGET_HAT_EVENTACTIONMCMDS, getActionCommands($event['alerts'])))->setExpanded((bool) CProfile::get('web.tr_events.hats.' . WIDGET_HAT_EVENTACTIONMCMDS . '.state', true))->setHeader(_('Command actions'), [], false, 'tr_events.php'), (new CCollapsibleUiWidget(WIDGET_HAT_EVENTLIST, make_small_eventlist($event, $page['file'] . '?triggerid=' . getRequest('triggerid') . '&eventid=' . getRequest('eventid'))))->setExpanded((bool) CProfile::get('web.tr_events.hats.' . WIDGET_HAT_EVENTLIST . '.state', true))->setHeader(_('Event list [previous 20]'), [], false, 'tr_events.php')])]);
$eventWidget = (new CWidget())->setTitle(_('Event details'))->setControls((new CList())->addItem(get_icon('fullscreen', ['fullscreen' => getRequest('fullscreen')])))->addItem($eventTab)->show();
require_once dirname(__FILE__) . '/include/page_footer.php';
コード例 #5
0
ファイル: tr_events.php プロジェクト: omidmt/zabbix-greenplum
// trigger details
$triggerDetailsWidget = new CUiWidget('hat_triggerdetails', make_trigger_details($trigger));
$triggerDetailsWidget->setHeader(_('Event source details'));
// event details
$eventDetailsWidget = new CUiWidget('hat_eventdetails', make_event_details($event, $trigger));
$eventDetailsWidget->setHeader(_('Event details'));
// if acknowledges are not disabled in configuration, let's show them
if ($config['event_ack_enable']) {
    $eventAcknowledgesWidget = new CCollapsibleUiWidget('hat_eventack', makeAckTab($event));
    $eventAcknowledgesWidget->open = (bool) CProfile::get('web.tr_events.hats.hat_eventack.state', true);
    $eventAcknowledgesWidget->setHeader(_('Acknowledges'));
} else {
    $eventAcknowledgesWidget = null;
}
// actions messages
$actionMessagesWidget = new CCollapsibleUiWidget('hat_eventactionmsgs', getActionMessages($event['alerts']));
$actionMessagesWidget->open = (bool) CProfile::get('web.tr_events.hats.hat_eventactionmsgs.state', true);
$actionMessagesWidget->setHeader(_('Message actions'));
// actions commands
$actionCommandWidget = new CCollapsibleUiWidget('hat_eventactionmcmds', getActionCommands($event['alerts']));
$actionCommandWidget->open = (bool) CProfile::get('web.tr_events.hats.hat_eventactioncmds.state', true);
$actionCommandWidget->setHeader(_('Command actions'));
// event history
$eventHistoryWidget = new CCollapsibleUiWidget('hat_eventlist', make_small_eventlist($event));
$eventHistoryWidget->open = (bool) CProfile::get('web.tr_events.hats.hat_eventlist.state', true);
$eventHistoryWidget->setHeader(_('Event list [previous 20]'));
$eventTab = new CTable();
$eventTab->addRow(array(new CDiv(array($triggerDetailsWidget, $eventDetailsWidget), 'column'), new CDiv(array($eventAcknowledgesWidget, $actionMessagesWidget, $actionCommandWidget, $eventHistoryWidget), 'column')), 'top');
$eventWidget->addItem($eventTab);
$eventWidget->show();
require_once dirname(__FILE__) . '/include/page_footer.php';