require_once dirname(__FILE__) . '/include/graphs.inc.php'; $page['file'] = 'chart3.php'; $page['type'] = PAGE_TYPE_IMAGE; require_once dirname(__FILE__) . '/include/page_header.php'; // VAR TYPE OPTIONAL FLAGS VALIDATION EXCEPTION $fields = array('period' => array(T_ZBX_INT, O_OPT, P_NZERO, BETWEEN(ZBX_MIN_PERIOD, ZBX_MAX_PERIOD), null), 'stime' => array(T_ZBX_INT, O_OPT, P_NZERO, null, null), 'httptestid' => array(T_ZBX_INT, O_OPT, P_NZERO, null, null), 'http_item_type' => array(T_ZBX_INT, O_OPT, null, null, null), 'name' => array(T_ZBX_STR, O_OPT, null, null, null), 'width' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 65535), null), 'height' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 65535), null), 'ymin_type' => array(T_ZBX_INT, O_OPT, null, IN('0,1,2'), null), 'ymax_type' => array(T_ZBX_INT, O_OPT, null, IN('0,1,2'), null), 'ymin_itemid' => array(T_ZBX_INT, O_OPT, null, DB_ID, null), 'ymax_itemid' => array(T_ZBX_INT, O_OPT, null, DB_ID, null), 'legend' => array(T_ZBX_INT, O_OPT, null, IN('0,1'), null), 'showworkperiod' => array(T_ZBX_INT, O_OPT, null, IN('0,1'), null), 'showtriggers' => array(T_ZBX_INT, O_OPT, null, IN('0,1'), null), 'graphtype' => array(T_ZBX_INT, O_OPT, null, IN('0,1'), null), 'yaxismin' => array(T_ZBX_DBL, O_OPT, null, null, null), 'yaxismax' => array(T_ZBX_DBL, O_OPT, null, null, null), 'percent_left' => array(T_ZBX_DBL, O_OPT, null, BETWEEN(0, 100), null), 'percent_right' => array(T_ZBX_DBL, O_OPT, null, BETWEEN(0, 100), null), 'items' => array(T_ZBX_STR, O_OPT, null, null, null)); $isDataValid = check_fields($fields); if ($httptestid = get_request('httptestid', false)) { $color = array('current' => 0, 0 => array('next' => '1'), 1 => array('color' => 'Red', 'next' => '2'), 2 => array('color' => 'Dark Green', 'next' => '3'), 3 => array('color' => 'Blue', 'next' => '4'), 4 => array('color' => 'Dark Yellow', 'next' => '5'), 5 => array('color' => 'Cyan', 'next' => '6'), 6 => array('color' => 'Gray', 'next' => '7'), 7 => array('color' => 'Dark Red', 'next' => '8'), 8 => array('color' => 'Green', 'next' => '9'), 9 => array('color' => 'Dark Blue', 'next' => '10'), 10 => array('color' => 'Yellow', 'next' => '11'), 11 => array('color' => 'Black', 'next' => '1')); $items = array(); $dbItems = DBselect('SELECT i.itemid' . ' FROM httpstepitem hi,items i,httpstep hs' . ' WHERE i.itemid=hi.itemid' . ' AND hs.httptestid=' . $httptestid . ' AND hs.httpstepid=hi.httpstepid' . ' AND hi.type=' . get_request('http_item_type', HTTPSTEP_ITEM_TYPE_TIME) . ' ORDER BY hs.no DESC'); while ($item = DBfetch($dbItems)) { $itemColor = $color[$color['current'] = $color[$color['current']]['next']]['color']; $items[] = array('itemid' => $item['itemid'], 'color' => $itemColor); } $httptest = get_httptest_by_httptestid($httptestid); $name = $httptest['name']; } else { $items = get_request('items', array()); asort_by_key($items, 'sortorder'); $dbItems = API::Item()->get(array('webitems' => true, 'itemids' => zbx_objectValues($items, 'itemid'), 'nodeids' => get_current_nodeid(true), 'output' => API_OUTPUT_SHORTEN, 'preservekeys' => true, 'filter' => array('flags' => null))); $dbItems = zbx_toHash($dbItems, 'itemid'); foreach ($items as $item) { if (!isset($dbItems[$item['itemid']])) { access_deny(); } } $name = get_request('name', ''); } /* * Display
foreach ($group_httptestid as $id) { if (!($httptest_data = get_httptest_by_httptestid($id))) { continue; } if (disable_httptest($id)) { $go_result = true; $host = get_host_by_applicationid($httptest_data['applicationid']); add_audit(AUDIT_ACTION_UPDATE, AUDIT_RESOURCE_SCENARIO, _('Scenario') . ' [' . $httptest_data['name'] . '] [' . $id . '] ' . _('Host') . ' [' . $host['host'] . ']' . _('Scenario disabled')); } } show_messages($go_result, _('Scenario disabled'), null); } elseif ($_REQUEST['go'] == 'clean_history' && isset($_REQUEST['group_httptestid'])) { $go_result = false; $group_httptestid = $_REQUEST['group_httptestid']; foreach ($group_httptestid as $id) { if (!($httptest_data = get_httptest_by_httptestid($id))) { continue; } if (delete_history_by_httptestid($id)) { $go_result = true; DBexecute('UPDATE httptest SET nextcheck=0 WHERE httptestid=' . $id); $host = get_host_by_applicationid($httptest_data['applicationid']); add_audit(AUDIT_ACTION_UPDATE, AUDIT_RESOURCE_SCENARIO, _('Scenario') . ' [' . $httptest_data['name'] . '] [' . $id . '] ' . _('Host') . ' [' . $host['host'] . ']' . _('History cleared')); } } show_messages($go_result, _('History cleared'), null); } elseif ($_REQUEST['go'] == 'delete' && isset($_REQUEST['group_httptestid'])) { $go_result = API::WebCheck()->delete($_REQUEST['group_httptestid']); show_messages($go_result, _('Scenario deleted'), null); } if ($_REQUEST['go'] != 'none' && isset($go_result) && $go_result) {