$id_graph]); if ($res) { $result = ui_print_success_message(__('Successfully deleted'), '', true); } else { $result = ui_print_error_message(__('Not deleted. Error deleting data'), '', true); } $res = db_process_sql_delete('tgraph', ['id_graph' => $id_graph]); if ($res) { $result = ui_print_success_message(__('Successfully deleted'), '', true); } else { $result = ui_print_error_message(__('Not deleted. Error deleting data'), '', true); } echo $result; } else { db_pandora_audit( AUDIT_LOG_ACL_VIOLATION, 'Trying to delete a graph from access graph builder' ); include 'general/noaccess.php'; exit; } } if ($view_graph) { $sql = "SELECT * FROM tgraph_source WHERE id_graph = $id_graph"; $sources = db_get_all_rows_sql($sql); if ($sources === false) { $sources = []; } $sql = "SELECT * FROM tgraph WHERE id_graph = $id_graph"; $graph = db_get_row_sql($sql); $id_user = $graph['id_user']; $private = $graph['private']; $width = $graph['width']; $height = ($graph['height'] + count($sources) * 10); $zoom = (int) get_parameter('zoom', 0); // Increase the height to fix the leyend rise if ($zoom > 0) { switch ($zoom) { case 1: $width = 500; $height = (200 + count($sources) * 15); break; case 2: $width = 650; $height = (300 + count($sources) * 10); break; case 3: $width = 770; $height = (400 + count($sources) * 5); break; } } // Get different date to search the report. $date = (string) get_parameter('date', date(DATE_FORMAT)); $time = (string) get_parameter('time', date(TIME_FORMAT)); $unixdate = strtotime($date.' '.$time); $period = (int) get_parameter('period'); if (! $period) { $period = $graph['period']; } else { $period = $period; } $events = $graph['events']; $description = $graph['description']; $stacked = (int) get_parameter('stacked', -1); $percentil = ($graph['percentil']) ? 1 : null; $check = get_parameter('threshold', false); $fullscale = ($graph['fullscale']) ? 1 : null; if ($check == CUSTOM_GRAPH_BULLET_CHART_THRESHOLD) { $check = true; $stacked = CUSTOM_GRAPH_BULLET_CHART_THRESHOLD; } if ($stacked == -1) { $stacked = $graph['stacked']; } if ($stacked == CUSTOM_GRAPH_BULLET_CHART || $stacked == CUSTOM_GRAPH_BULLET_CHART_THRESHOLD) { $height = 50; } if ($stacked == CUSTOM_GRAPH_GAUGE) { // Use the defined graph height, that's why // the user can setup graph height. $height = $graph['height']; } $name = $graph['name']; if (($graph['private'] == 1) && ($graph['id_user'] != $id_user)) { db_pandora_audit( AUDIT_LOG_ACL_VIOLATION, 'Trying to access to a custom graph not allowed' ); include 'general/noaccess.php'; exit; } html_print_input_hidden('line_width_graph', $config['custom_graph_width']); html_print_input_hidden('custom_graph', 1); $url = 'index.php?'.'sec=reporting&'.'sec2=operation/reporting/graph_viewer&'."id=$id_graph&".'view_graph=1'; $options = []; if (check_acl_restricted_all($config['id_user'], $graph['id_group'], 'RW') || check_acl_restricted_all($config['id_user'], $graph['id_group'], 'RM') ) { $options = [ 'graph_list' => [ 'active' => false, 'text' => ''.html_print_image( 'images/logs@svg.svg', true, [ 'title' => __('Graph list'), 'class' => 'main_menu_icon invert_filter', ] ).'', ], 'main' => [ 'active' => false, 'text' => ''.html_print_image( 'images/graph@svg.svg', true, [ 'title' => __('Main data'), 'class' => 'invert_filter', ] ).'', ], 'graph_editor' => [ 'active' => false, 'text' => ''.html_print_image( 'images/builder@svg.svg', true, [ 'title' => __('Graph editor'), 'class' => 'main_menu_icon invert_filter', ] ).'', ], ]; } else { $options = [ 'graph_list' => [ 'active' => false, 'text' => ''.html_print_image('images/logs@svg.svg', true, ['title' => __('Graph list'), 'class' => 'main_menu_icon invert_filter']).'', ], ]; } $options['view']['text'] = ''.html_print_image( 'images/enable.svg', true, [ 'title' => __('View graph'), 'class' => 'main_menu_icon invert_filter', ] ).''; $options['view']['active'] = true; if ($config['pure'] == 0) { $options['screen']['text'] = "".html_print_image( 'images/fullscreen@svg.svg', true, [ 'title' => __('Full screen mode'), 'class' => 'main_menu_icon invert_filter', ] ).''; } else { $options['screen']['text'] = "".html_print_image( 'images/exit_fullscreen@svg.svg', true, [ 'title' => __('Back to normal mode'), 'class' => 'main_menu_icon invert_filter', ] ).''; // In full screen, the manage options are not available. $options = [ 'view' => $options['view'], 'screen' => $options['screen'], ]; } if (!is_ajax()) { // Header. ui_print_standard_header( $graph['name'], 'images/chart.png', false, '', false, $options, [ [ 'link' => '', 'label' => __('Reporting'), ], [ 'link' => '', 'label' => __('Custom graphs'), ], ] ); } $width = null; $height = null; $params = [ 'period' => $period, 'width' => $width, 'height' => $height, 'date' => $unixdate, 'percentil' => $percentil, 'fullscale' => $fullscale, ]; if ($stacked === CUSTOM_GRAPH_AREA || $stacked === CUSTOM_GRAPH_STACKED_AREA) { $params['type_graph'] = 'area'; } else if ($stacked === CUSTOM_GRAPH_LINE || $stacked === CUSTOM_GRAPH_STACKED_LINE) { $params['type_graph'] = 'line'; } $params_combined = [ 'stacked' => $stacked, 'id_graph' => $id_graph, ]; $graph_return = graphic_combined_module( false, $params, $params_combined ); if (is_ajax()) { echo $graph_return; return; } if ($stacked == CUSTOM_GRAPH_BULLET_CHART_THRESHOLD) { $stacked = 4; } $period_label = human_time_description_raw($period); $searchForm = '
'; $searchForm .= ""; $searchForm .= ''; $searchForm .= ''; $searchForm .= "'; $searchForm .= ''; $searchForm .= "'; $searchForm .= "'; $searchForm .= "'; $searchForm .= ''; $searchForm .= '
'; $searchForm .= html_print_label_input_block( __('Date'), html_print_input_text( 'date', $date, '', '', 10, true ) ); $searchForm .= ''; $searchForm .= html_print_label_input_block( __('Time'), html_print_input_text( 'time', $time, '', '', 7, true ) ); $searchForm .= '"; $searchForm .= html_print_label_input_block( __('Time range'), html_print_extended_select_for_time('period', (string) $period, '', '', 0, 10, true, 'width:100%') ); $searchForm .= '
"; $stackeds = []; $stackeds[0] = __('Graph defined'); $stackeds[CUSTOM_GRAPH_AREA] = __('Area'); $stackeds[CUSTOM_GRAPH_STACKED_AREA] = __('Stacked area'); $stackeds[CUSTOM_GRAPH_LINE] = __('Line'); $stackeds[CUSTOM_GRAPH_STACKED_LINE] = __('Stacked line'); $stackeds[CUSTOM_GRAPH_BULLET_CHART] = __('Bullet chart'); $stackeds[CUSTOM_GRAPH_GAUGE] = __('Gauge'); $stackeds[CUSTOM_GRAPH_HBARS] = __('Horizontal Bars'); $stackeds[CUSTOM_GRAPH_VBARS] = __('Vertical Bars'); $stackeds[CUSTOM_GRAPH_PIE] = __('Pie'); $searchForm .= html_print_label_input_block(__('Type'), html_print_select($stackeds, 'stacked', $stacked, '', '', -1, true, false, true, '', false, 'width:100%')); $searchForm .= '"; $searchForm .= html_print_label_input_block( __('Equalize maxiddmum thresholds').ui_print_help_tip( __('If an option is selected, all graphs will have the highest value from all modules included in the graph as a maximum threshold'), true ), html_print_checkbox( 'threshold', CUSTOM_GRAPH_BULLET_CHART_THRESHOLD, $check, true, false, '', false ), ['div_id' => 'thresholdDiv'] ); $searchForm .= '"; $zooms = []; $zooms[0] = __('Graph defined'); $zooms[1] = __('Zoom x1'); $zooms[2] = __('Zoom x2'); $zooms[3] = __('Zoom x3'); $searchForm .= html_print_label_input_block(__('Zoom'), html_print_select($zooms, 'zoom', $zoom, '', '', 0, true, false, true, '', false, 'width:100%')); $searchForm .= '
'; $searchForm .= html_print_div( [ 'class' => 'action-buttons', 'content' => html_print_submit_button( __('Filter'), 'submit-refresh', false, [ 'mode' => 'mini', 'icon' => 'search', ], true ), ], true ); $searchForm .= '
'; ui_toggle( $searchForm, ''.__('Filters').'', 'filter_form', '', true, false, '', 'white-box-content', 'box-flat white_table_graph fixed_filter_bar' ); if ($graph_return) { echo '
'; if (!is_ajax()) { echo ''; } echo '
'; echo '
'; echo '
'; echo $graph_return; echo '
'; echo '
'; echo '
'; echo '
'; } else { ui_print_info_message([ 'no_close' => true, 'message' => __('No data.') ]); } /* We must add javascript here. Otherwise, the date picker won't work if the date is not correct because php is returning. */ ui_include_time_picker(); ui_require_jquery_file('ui.datepicker-'.get_user_language(), 'include/javascript/i18n/'); ui_require_jquery_file(''); ?> width = '100%'; $tale->class = 'databox_frame'; $table->align = []; $table->align[2] = 'center'; $table->head = []; $table->head[0] = __('Graph name'); $table->head[1] = __('Description'); $table->data = []; foreach ($graphs as $graph) { $data = []; $data[0] = ''.$graph['name'].''; $data[1] = $graph['description']; array_push($table->data, $data); } html_print_table($table); } else { echo "
".__('There are no defined reportings').'
'; }