$id_container2, 'type' => 'simple_graph', 'id_agent' => $id_agent, 'id_agent_module' => $id_agent_module, 'time_lapse' => $time_lapse, 'type_graph' => $simple_type_graph, 'fullscale' => $fullscale, ]; $id_item = db_process_sql_insert('tcontainer_item', $values); return; } if ($add_custom) { $time_lapse = get_parameter('time_lapse'); $id_custom = get_parameter('id_custom'); $fullscale = get_parameter('fullscale'); if ($fullscale != 'false') { $fullscale = 1; } else { $fullscale = 0; } $values = [ 'id_container' => $id_container2, 'type' => 'custom_graph', 'time_lapse' => $time_lapse, 'id_graph' => $id_custom, 'fullscale' => $fullscale, ]; $id_item = db_process_sql_insert('tcontainer_item', $values); return; } if ($add_dynamic) { $time_lapse = get_parameter('time_lapse'); $group = get_parameter('group', 0); $module_group = get_parameter('module_group', 0); $agent_alias = get_parameter('agent_alias', ''); $module_name = get_parameter('module_name', ''); $tag = get_parameter('tag', 0); $simple_type_graph2 = get_parameter('simple_type_graph2'); $fullscale = get_parameter('fullscale'); if ($fullscale != 'false') { $fullscale = 1; } else { $fullscale = 0; } $values = [ 'id_container' => $id_container2, 'type' => 'dynamic_graph', 'time_lapse' => $time_lapse, 'id_group' => $group, 'id_module_group' => $module_group, 'agent' => $agent_alias, 'module' => $module_name, 'id_tag' => $tag, 'type_graph' => $simple_type_graph2, 'fullscale' => $fullscale, ]; $id_item = db_process_sql_insert('tcontainer_item', $values); return; } } $add_container = (bool) get_parameter('add_container', 0); $edit_container = (bool) get_parameter('edit_container', 0); $update_container = (bool) get_parameter('update_container', 0); $delete_item = (bool) get_parameter('delete_item', 0); if ($edit_container) { $name = io_safe_input(get_parameter('name', '')); if (!empty($name)) { $id_parent = get_parameter('id_parent', 0); $description = io_safe_input(get_parameter('description', '')); $id_group = get_parameter('container_id_group', 0); } else { $tcontainer = db_get_row_sql('SELECT * FROM tcontainer WHERE id_container = '.$id_container); $name = $tcontainer['name']; $id_parent = $tcontainer['parent']; $description = $tcontainer['description']; $id_group = $tcontainer['id_group']; } } if ($add_container) { $values = [ 'name' => $name, 'description' => $description, 'parent' => $id_parent, 'id_group' => $id_group, ]; $id_container = db_process_sql_insert('tcontainer', $values); } if ($update_container) { if ($id_container === $id_parent) { $success = false; } else { $values = [ 'name' => $name, 'description' => $description, 'parent' => $id_parent, 'id_group' => $id_group, ]; $success = db_process_sql_update('tcontainer', $values, ['id_container' => $id_container]); } } if ($delete_item) { $id_item = get_parameter('id_item', 0); $success = db_process_sql_delete('tcontainer_item', ['id_ci' => $id_item]); } $buttons['graph_container'] = [ 'active' => false, 'text' => ''.html_print_image('images/graph-container.png', true, ['title' => __('Graph container')]).'', ]; // Header ui_print_page_header(__('Create container'), '', false, '', false, $buttons); if ($add_container) { ui_print_result_message($id_container, __('Container stored successfully'), __('There was a problem storing container')); } if ($update_container) { ui_print_result_message($success, __('Update the container'), __('Bad update the container')); } echo ""; if ($edit_container) { echo ""; } else { echo ""; } echo ''; echo "'; if ($id_container === '1') { echo "'; $own_info = get_user_info($config['id_user']); if ($own_info['is_admin'] || check_acl($config['id_user'], 0, 'PM')) { $return_all_groups = true; } else { $return_all_groups = false; } echo "'; echo ''; echo "'; if ($id_container === '1') { echo "'; $container = folder_get_folders(); $tree = folder_get_folders_tree_recursive($container); $containers_tree = folder_flatten_tree_folders($tree, 0); $containers_tree = folder_get_select($containers_tree); unset($containers_tree[$id_container]); echo ''; echo "'; if ($id_container === '1') { echo "'; echo '
".__('Name').'".__('Group').''; if ($id_container === '1') { echo html_print_select_groups($config['id_user'], '', $return_all_groups, 'container_id_group', $id_group, '', '', '', true, false, true, '', true); } else { echo html_print_select_groups($config['id_user'], '', $return_all_groups, 'container_id_group', $id_group, '', '', '', true, false, true, '', false); } echo '
".__('Description').''; echo '
".__('Parent container').'".html_print_select( $containers_tree, 'id_parent', $id_parent, '', __('none'), 0, true, '', false, 'w130', true, 'width: 195px', '' ); } else { echo "".html_print_select( $containers_tree, 'id_parent', $id_parent, '', __('none'), 0, true, '', false, 'w130', '', 'width: 195px', '' ); } echo '
'; if ($edit_container) { if ($id_container !== '1') { echo "
"; } } else { echo "
"; } echo ''; echo '
'; echo '
'; echo '
'; if ($edit_container) { $period = SECONDS_15DAYS; $periods = []; $periods[-1] = __('custom'); $periods[SECONDS_1HOUR] = __('1 hour'); $periods[SECONDS_2HOUR] = sprintf(__('%s hours'), '2 '); $periods[SECONDS_6HOURS] = sprintf(__('%s hours'), '6 '); $periods[SECONDS_12HOURS] = sprintf(__('%s hours'), '12 '); $periods[SECONDS_1DAY] = __('1 day'); $periods[SECONDS_2DAY] = sprintf(__('%s days'), '2 '); $periods[SECONDS_5DAY] = sprintf(__('%s days'), '5 '); $periods[SECONDS_1WEEK] = __('1 week'); $periods[SECONDS_15DAYS] = __('15 days'); $periods[SECONDS_1MONTH] = __('1 month'); $type_graphs = []; $type_graphs[0] = __('Area'); $type_graphs[1] = __('Line'); $single_table = ""; $single_table .= ""; $single_table .= "'; $single_table .= ''; $single_table .= ''; $single_table .= ""; $single_table .= "'; $single_table .= ''; $single_table .= ''; $single_table .= ""; $single_table .= "'; $single_table .= ''; $single_table .= ''; $single_table .= ""; $single_table .= "'; $single_table .= ''; $single_table .= ''; $single_table .= ""; $single_table .= "'; $single_table .= ''; $single_table .= ''; $single_table .= ''; $single_table .= ''; $single_table .= "'; $single_table .= ''; $single_table .= '
"; $single_table .= __('Time lapse'); $single_table .= ui_print_help_tip(__('This is the interval or period of time with which the graph data will be obtained. For example, a week means data from a week ago from now. '), true); $single_table .= ''; $single_table .= html_print_extended_select_for_time( 'period_single', $period, '', '', '0', 10, true, false, true, '', false, $periods ); $single_table .= '
"; $single_table .= __('Agent'); $single_table .= ''; $params = []; $params['show_helptip'] = false; $params['input_name'] = 'agent'; $params['value'] = ''; $params['return'] = true; $params['javascript_is_function_select'] = true; $params['selectbox_id'] = 'id_agent_module'; $params['add_none_module'] = true; $params['use_hidden_input_idagent'] = true; $params['hidden_input_idagent_id'] = 'hidden-id_agent'; $single_table .= ui_print_agent_autocomplete_input($params); $single_table .= '
"; $single_table .= __('Module'); $single_table .= ''; if ($idAgent) { $single_table .= html_print_select_from_sql($sql_modules, 'id_agent_module', $idAgentModule, '', '', '0', true); } else { $single_table .= "'; } $single_table .= '
"; $single_table .= __('Type of graph'); $single_table .= ''; $single_table .= html_print_select($type_graphs, 'simple_type_graph', '', '', '', 0, true); $single_table .= '
"; $single_table .= __('Show full scale graph (TIP)').ui_print_help_tip('This option may cause performance issues', true); $single_table .= ''; $single_table .= html_print_checkbox('fullscale', 1, false, true); $single_table .= '
'; $single_table .= '"; $single_table .= ""; $single_table .= '
'; echo ""; echo ''; echo ''; echo ''; echo '
'; echo ui_toggle($single_table, 'Simple module graph', '', true, true); echo '
'; $table = new stdClass(); $table->id = 'custom_graph_table'; $table->width = '100%'; $table->cellspacing = 4; $table->cellpadding = 4; $table->class = 'dat'; $table->styleTable = 'font-weight: bold;'; $table->style[0] = 'width: 13%'; $table->data = []; $data = []; $data[0] = __('Time lapse'); $data[0] .= ui_print_help_tip(__('This is the interval or period of time with which the graph data will be obtained. For example, a week means data from a week ago from now. '), true); $data[1] = html_print_extended_select_for_time('period_custom', $period, '', '', '0', 10, true, false, true, '', false, $periods); $table->data[] = $data; $table->rowclass[] = ''; $data = []; $data[0] = __('Custom graph'); $list_custom_graphs = custom_graphs_get_user($config['id_user'], false, true, 'RR'); $graphs = []; foreach ($list_custom_graphs as $custom_graph) { $graphs[$custom_graph['id_graph']] = $custom_graph['name']; } $data[1] = html_print_select($graphs, 'id_custom_graph', $idCustomGraph, '', __('None'), 0, true); $table->data[] = $data; $table->rowclass[] = ''; $data = []; $data[0] = __('Show full scale graph (TIP)').ui_print_help_tip('This option may cause performance issues', true); $data[1] = html_print_checkbox('fullscale_2', 1, false, true); $table->data[] = $data; $table->rowclass[] = ''; $data = []; $data[0] = ''; $data[1] = ""; $table->data[] = $data; $table->rowclass[] = ''; echo ""; echo ''; echo ''; echo ''; echo '
'; echo ui_toggle(html_print_table($table, true), 'Custom graph', '', true, true); echo '
'; unset($table); $table = new stdClass(); $table->id = 'dynamic_rules_table'; $table->width = '100%'; $table->cellspacing = 4; $table->cellpadding = 4; $table->class = 'dat'; $table->styleTable = 'font-weight: bold;'; $table->style[0] = 'width: 13%'; $table->data = []; $data = []; $data[0] = __('Time lapse'); $data[0] .= ui_print_help_tip(__('This is the interval or period of time with which the graph data will be obtained. For example, a week means data from a week ago from now. '), true); $data[1] = html_print_extended_select_for_time('period_dynamic', $period, '', '', '0', 10, true, false, true, '', false, $periods); $table->data[] = $data; $table->rowclass[] = ''; $data = []; $data[0] = __('Group'); $data[1] = html_print_select_groups($config['id_user'], 'RW', $return_all_groups, 'container_id_group', $id_group, '', '', '', true); $table->data[] = $data; $table->rowclass[] = ''; $data = []; $data[0] = __('Module group'); $data[1] = html_print_select_from_sql( 'SELECT * FROM tmodule_group ORDER BY name', 'combo_modulegroup', $modulegroup, '', __('All'), false, true ); $table->data[] = $data; $table->rowclass[] = ''; $data = []; $data[0] = __('Agent'); $data[1] = html_print_input_text('text_agent', $textAgent, '', 30, 100, true); $table->data[] = $data; $table->rowclass[] = ''; $data = []; $data[0] = __('Module'); $data[1] = html_print_input_text('text_agent_module', $textModule, '', 30, 100, true); $table->data[] = $data; $table->rowclass[] = ''; $data = []; $data[0] = __('Tag'); $select_tags = tags_search_tag(false, false, true); $data[1] = html_print_select( $select_tags, 'tag', $tag, '', __('Any'), 0, true, false, false ); $table->data[] = $data; $table->rowclass[] = ''; $data = []; $data[0] = __('Type of graph'); $data[1] = html_print_select($type_graphs, 'simple_type_graph2', '', '', '', 0, true); $table->data[] = $data; $table->rowclass[] = ''; $data = []; $data[0] = __('Show full scale graph (TIP)').ui_print_help_tip('This option may cause performance issues', true); $data[1] = html_print_checkbox('fullscale_3', 1, false, true); $table->data[] = $data; $table->rowclass[] = ''; $data = []; $data[0] = ''; $data[1] = ""; $table->data[] = $data; $table->rowclass[] = ''; echo ""; echo ''; echo ''; echo ''; echo '
'; echo ui_toggle(html_print_table($table, true), 'Dynamic rules for simple module graph', '', true, true); echo '
'; $total_item = db_get_all_rows_sql('SELECT count(*) FROM tcontainer_item WHERE id_container = '.$id_container); $result_item = db_get_all_rows_sql('SELECT * FROM tcontainer_item WHERE id_container = '.$id_container.' LIMIT 10 OFFSET '.$offset); if (!$result_item) { echo "
".__('There are no defined item container').'
'; } else { ui_pagination($total_item[0]['count(*)'], false, $offset, 10); $table = new stdClass(); $table->width = '100%'; $table->class = 'databox data'; $table->id = 'item_table'; $table->align = []; $table->head = []; $table->head[0] = __('Agent/Module'); $table->head[1] = __('Custom graph'); $table->head[2] = __('Group'); $table->head[3] = __('M.Group'); $table->head[4] = __('Agent'); $table->head[5] = __('Module'); $table->head[6] = __('Tag'); $table->head[7] = __('Delete'); $table->data = []; foreach ($result_item as $item) { $data = []; switch ($item['type']) { case 'simple_graph': $agent_alias = ui_print_truncate_text(agents_get_alias($item['id_agent'], 20, false)); $module_name = ui_print_truncate_text(modules_get_agentmodule_name($item['id_agent_module']), 20, false); $module_name = $data[0] = $agent_alias.' / '.$module_name; $data[1] = ''; $data[2] = ''; $data[3] = ''; $data[4] = ''; $data[5] = ''; $data[6] = ''; break; case 'custom_graph': $data[0] = ''; $name = db_get_value_filter('name', 'tgraph', ['id_graph' => $item['id_graph']]); $data[1] = ui_print_truncate_text(io_safe_output($name), 35, false); $data[2] = ''; $data[3] = ''; $data[4] = ''; $data[5] = ''; $data[6] = ''; break; case 'dynamic_graph': $data[0] = ''; $data[1] = ''; $data[2] = ui_print_group_icon($item['id_group'], true); if ($item['id_module_group'] === '0') { $data[3] = 'All'; } else { $data[3] = io_safe_output(db_get_value_filter('name', 'tmodule_group', ['id_mg' => $item['id_module_group']])); } $data[4] = io_safe_output($item['agent']); $data[5] = io_safe_output($item['module']); if ($item['id_tag'] === '0') { $data[6] = 'Any'; } else { $data[6] = io_safe_output(db_get_value_filter('name', 'ttag', ['id_tag' => $item['id_tag']])); } break; } $data[7] = ''.html_print_image('images/cross.png', true, ['alt' => __('Delete'), 'title' => __('Delete')]).''; array_push($table->data, $data); } html_print_table($table); } } echo html_print_input_hidden('id_agent', 0); ?>