diff --git a/pandora_console/godmode/reporting/reporting_builder.item_editor.php b/pandora_console/godmode/reporting/reporting_builder.item_editor.php
index 1f6c8586b9..c31f594125 100755
--- a/pandora_console/godmode/reporting/reporting_builder.item_editor.php
+++ b/pandora_console/godmode/reporting/reporting_builder.item_editor.php
@@ -2338,7 +2338,13 @@ function chooseType() {
$("#row_last_value").hide();
$("#row_filter_search").hide();
$("#row_percentil").hide();
+ $("#agents_row").hide();
+ $("#select_agent_modules").hide();
+ $("#modules_row").hide();
+ $("#row_show_summary_group").hide();
+ $("#row_event_severity").hide();
$("#row_event_type").hide();
+ $("#row_event_status").hide();
// SLA list default state
$("#sla_list").hide();
diff --git a/pandora_console/godmode/reporting/reporting_builder.php b/pandora_console/godmode/reporting/reporting_builder.php
index 1b3c0d7bfb..e91ac9b13f 100755
--- a/pandora_console/godmode/reporting/reporting_builder.php
+++ b/pandora_console/godmode/reporting/reporting_builder.php
@@ -1055,15 +1055,14 @@ switch ($action) {
$resultOperationDB = false;
break;
}
- $filter_event_validated = get_parameter('filter_event_validated', 0);
- $filter_event_no_validated = get_parameter('filter_event_no_validated', 0);
- $filter_event_critical = get_parameter('filter_event_critical', 0);
- $filter_event_warning = get_parameter('filter_event_warning', 0);
- $filter_event_type = get_parameter('filter_event_type', '');
-
- $event_graph_by_agent = get_parameter('event_graph_by_agent', 0);
- $event_graph_by_user_validator = get_parameter('event_graph_by_user_validator', 0);
- $event_graph_by_criticity = get_parameter('event_graph_by_criticity', 0);
+ $show_summary_group = get_parameter('show_summary_group', 0);
+ $filter_event_severity = get_parameter('filter_event_severity', 0);
+ $filter_event_type = get_parameter('filter_event_type', '');
+ $filter_event_status = get_parameter('filter_event_status', 0);
+
+ $event_graph_by_agent = get_parameter('event_graph_by_agent', 0);
+ $event_graph_by_user_validator = get_parameter('event_graph_by_user_validator', 0);
+ $event_graph_by_criticity = get_parameter('event_graph_by_criticity', 0);
$event_graph_validated_vs_unvalidated = get_parameter('event_graph_validated_vs_unvalidated', 0);
$event_filter_search = get_parameter('filter_search', '');
@@ -1126,11 +1125,11 @@ switch ($action) {
case 'event_report_agent':
case 'event_report_group':
//Added for events items
- $style['filter_event_no_validated'] = $filter_event_no_validated;
- $style['filter_event_validated'] = $filter_event_validated;
- $style['filter_event_critical'] = $filter_event_critical;
- $style['filter_event_warning'] = $filter_event_warning;
- $style['filter_event_type'] = json_encode($filter_event_type);
+ $style['show_summary_group'] = $show_summary_group;
+ $style['filter_event_severity'] = json_encode($filter_event_severity);
+ $style['filter_event_type'] = json_encode($filter_event_type);
+ $style['filter_event_status'] = json_encode($filter_event_status);
+
$style['event_graph_by_agent'] = $event_graph_by_agent;
$style['event_graph_by_user_validator'] = $event_graph_by_user_validator;
$style['event_graph_by_criticity'] = $event_graph_by_criticity;
@@ -1138,10 +1137,8 @@ switch ($action) {
switch ($values['type']) {
case 'event_report_group':
- $style['event_filter_search'] =
- $event_filter_search;
- break;
case 'event_report_agent':
+ $style['event_filter_search'] = $event_filter_search;
if ($label != '')
$style['label'] = $label;
else
@@ -1429,38 +1426,35 @@ switch ($action) {
switch ($values['type']) {
case 'event_report_agent':
- case 'event_report_group':
- $filter_event_no_validated = get_parameter('filter_event_no_validated', 0);
- $filter_event_validated = get_parameter('filter_event_validated', 0);
- $filter_event_critical = get_parameter('filter_event_critical', 0);
- $filter_event_warning = get_parameter('filter_event_warning', 0);
+ case 'event_report_group':
+ $show_summary_group = get_parameter('show_summary_group', 0);
+ $filter_event_severity = get_parameter('filter_event_severity', '');
+ $filter_event_type = get_parameter('filter_event_type', '');
+ $filter_event_status = get_parameter('filter_event_status', '');
- $event_graph_by_agent = get_parameter('event_graph_by_agent', 0);
- $event_graph_by_user_validator = get_parameter('event_graph_by_user_validator', 0);
- $event_graph_by_criticity = get_parameter('event_graph_by_criticity', 0);
+ $event_graph_by_agent = get_parameter('event_graph_by_agent', 0);
+ $event_graph_by_user_validator = get_parameter('event_graph_by_user_validator', 0);
+ $event_graph_by_criticity = get_parameter('event_graph_by_criticity', 0);
$event_graph_validated_vs_unvalidated = get_parameter('event_graph_validated_vs_unvalidated', 0);
- $filter_event_type = get_parameter('filter_event_type', '');
$event_filter_search = get_parameter('filter_search', '');
//Added for events items
- $style['filter_event_no_validated'] = $filter_event_no_validated;
- $style['filter_event_validated'] = $filter_event_validated;
- $style['filter_event_critical'] = $filter_event_critical;
- $style['filter_event_warning'] = $filter_event_warning;
- $style['filter_event_type'] = json_encode($filter_event_type);
-
- $style['event_graph_by_agent'] = $event_graph_by_agent;
- $style['event_graph_by_user_validator'] = $event_graph_by_user_validator;
- $style['event_graph_by_criticity'] = $event_graph_by_criticity;
+ $style['show_summary_group'] = $show_summary_group;
+ $style['filter_event_severity'] = json_encode($filter_event_severity);
+ $style['filter_event_type'] = json_encode($filter_event_type);
+ $style['filter_event_status'] = json_encode($filter_event_status);
+
+ $style['event_graph_by_agent'] = $event_graph_by_agent;
+ $style['event_graph_by_user_validator'] = $event_graph_by_user_validator;
+ $style['event_graph_by_criticity'] = $event_graph_by_criticity;
$style['event_graph_validated_vs_unvalidated'] = $event_graph_validated_vs_unvalidated;
+
switch ($values['type']) {
case 'event_report_group':
- $style['event_filter_search'] =
- $event_filter_search;
- break;
case 'event_report_agent':
+ $style['event_filter_search'] = $event_filter_search;
if ($label != '')
$style['label'] = $label;
else
diff --git a/pandora_console/include/functions_events.php b/pandora_console/include/functions_events.php
index 627236f74d..69b62ae092 100644
--- a/pandora_console/include/functions_events.php
+++ b/pandora_console/include/functions_events.php
@@ -1348,22 +1348,16 @@ function events_get_agent ($id_agent, $period, $date = 0,
if ($filter_event_critical) {
$criticities[] = 4;
}
- if ($filter_event_warning) {
- $criticities[] = 3;
- }
- if (!empty($criticities)) {
- $sql_where .= ' AND criticity IN (' . implode(', ', $criticities) . ')';
- }
-
- if ( $filter_event_validated && $filter_event_no_validated ) {
- $sql_where .= " AND (estado = 1 OR estado = 0)";
- }
- else {
- if ($filter_event_validated) {
- $sql_where .= ' AND estado = 1 ';
- } else {
- if ($filter_event_no_validated) {
- $sql_where .= ' AND estado = 0 ';
+
+ $status_all = 0;
+ if(!empty($filter_event_status)){
+ foreach ($filter_event_status as $key => $value) {
+ switch ($value) {
+ case -1:
+ $status_all = 1;
+ break;
+ default:
+ break;
}
}
}
@@ -2334,19 +2328,19 @@ function events_page_custom_data ($event) {
if ($event['custom_data'] == '') {
return '';
}
-
+
$table->width = '100%';
$table->data = array ();
$table->head = array ();
$table->style[0] = 'width:35%; font-weight: bold; text-align: left;';
$table->style[1] = 'text-align: left;';
$table->class = "alternate rounded_cells";
-
+
$json_custom_data = base64_decode ($event['custom_data']);
$custom_data = json_decode ($json_custom_data);
if ($custom_data === NULL) {
return '
'.__('Invalid custom data: %s', $json_custom_data).'
';
- }
+ }
$i = 0;
foreach ($custom_data as $field => $value) {
@@ -2354,7 +2348,7 @@ function events_page_custom_data ($event) {
$table->data[$i][1] = io_safe_output ($value);
$i++;
}
-
+
$custom_data = ''.html_print_table($table, true).'
';
return $custom_data;
diff --git a/pandora_console/include/functions_graph.php b/pandora_console/include/functions_graph.php
index 2a8a55b49f..2162235ac0 100644
--- a/pandora_console/include/functions_graph.php
+++ b/pandora_console/include/functions_graph.php
@@ -2762,7 +2762,7 @@ function graph_events_validated($width = 300, $height = 200, $url = "", $meta =
global $config;
global $graphic_type;
- $data_graph = reporting_get_count_events_validated(
+ $data_graph = events_get_count_events_validated(
array('id_group' => array_keys(users_get_groups())));
$colors = array();
diff --git a/pandora_console/include/functions_reporting.php b/pandora_console/include/functions_reporting.php
index f95d3f54b1..6664708b83 100644
--- a/pandora_console/include/functions_reporting.php
+++ b/pandora_console/include/functions_reporting.php
@@ -400,15 +400,6 @@ function reporting_make_reporting_data($report = null, $id_report,
$report,
$content);
break;
- case 'agent_detailed_event':
- case 'event_report_agent':
- $report['contents'][] = reporting_event_report_agent(
- $report,
- $content,
- $type,
- $force_width_chart,
- $force_height_chart);
- break;
case 'group_report':
$report['contents'][] = reporting_group_report(
$report,
@@ -439,6 +430,15 @@ function reporting_make_reporting_data($report = null, $id_report,
$content,
$type);
break;
+ case 'agent_detailed_event':
+ case 'event_report_agent':
+ $report['contents'][] = reporting_event_report_agent(
+ $report,
+ $content,
+ $type,
+ $force_width_chart,
+ $force_height_chart);
+ break;
case 'event_report_module':
$report['contents'][] = reporting_event_report_module(
$report,
@@ -1282,26 +1282,25 @@ function reporting_event_report_group($report, $content,
$return["date"] = reporting_get_date_text($report, $content);
$event_filter = $content['style'];
-
- $filter_event_no_validated = $event_filter['filter_event_no_validated'];
- $filter_event_validated = $event_filter['filter_event_validated'];
- $filter_event_critical = $event_filter['filter_event_critical'];
- $filter_event_warning = $event_filter['filter_event_warning'];
+ $return['show_summary_group'] = $event_filter['show_summary_group'];
+ //filter
+ $show_summary_group = $event_filter['show_summary_group'];
+ $filter_event_severity = json_decode($event_filter['filter_event_severity'],true);
+ $filter_event_type = json_decode($event_filter['filter_event_type'],true);
+ $filter_event_status = json_decode($event_filter['filter_event_status'],true);
$filter_event_filter_search = $event_filter['event_filter_search'];
- $filter_event_type = json_decode($event_filter['filter_event_type'],true);
- $event_graph_by_agent = $event_filter['event_graph_by_agent'];
- $event_graph_by_user_validator = $event_filter['event_graph_by_user_validator'];
- $event_graph_by_criticity = $event_filter['event_graph_by_criticity'];
+ //graphs
+ $event_graph_by_agent = $event_filter['event_graph_by_agent'];
+ $event_graph_by_user_validator = $event_filter['event_graph_by_user_validator'];
+ $event_graph_by_criticity = $event_filter['event_graph_by_criticity'];
$event_graph_validated_vs_unvalidated = $event_filter['event_graph_validated_vs_unvalidated'];
-
- $data = reporting_get_group_detailed_event(
- $content['id_group'], $content['period'], $report["datetime"],
- true, true, $filter_event_validated, $filter_event_critical,
- $filter_event_warning, $filter_event_no_validated,
- $filter_event_filter_search, 'hash', $history, $filter_event_type);
-
+ $data = events_get_agent (false, $content['period'], $report["datetime"],
+ $history, $show_summary_group, $filter_event_severity,
+ $filter_event_type, $filter_event_status, $filter_event_filter_search,
+ $content['id_group'], true);
+
if (empty($data)) {
$return['failed'] = __('No events');
}
@@ -1309,8 +1308,6 @@ function reporting_event_report_group($report, $content,
$return['data'] = array_reverse($data);
}
-
-
reporting_set_conf_charts($width, $height, $only_image, $type,
$content, $ttl);
@@ -1322,22 +1319,16 @@ function reporting_event_report_group($report, $content,
$height = $force_height_chart;
}
-
-
$return['chart']['by_agent'] = null;
$return['chart']['by_user_validator'] = null;
$return['chart']['by_criticity'] = null;
$return['chart']['validated_vs_unvalidated'] = null;
if ($event_graph_by_agent) {
- $data_graph = reporting_get_count_events_by_agent(
- $content['id_group'], $content['period'],
- $report["datetime"],
- $filter_event_validated,
- $filter_event_critical,
- $filter_event_warning,
- $filter_event_no_validated,
- $filter_event_filter_search);
+ $data_graph = events_get_count_events_by_agent(
+ $content['id_group'], $content['period'], $report["datetime"],
+ $filter_event_severity, $filter_event_type,
+ $filter_event_status, $filter_event_filter_search);
$return['chart']['by_agent']= pie3d_graph(
false,
@@ -1353,15 +1344,10 @@ function reporting_event_report_group($report, $content,
}
if ($event_graph_by_user_validator) {
- $data_graph =
- reporting_get_count_events_validated_by_user(
- array('id_group' => $content['id_group']), $content['period'],
- $report["datetime"],
- $filter_event_validated,
- $filter_event_critical,
- $filter_event_warning,
- $filter_event_no_validated,
- $filter_event_filter_search);
+ $data_graph = events_get_count_events_validated_by_user(
+ array('id_group' => $content['id_group']), $content['period'],
+ $report["datetime"],$filter_event_severity, $filter_event_type,
+ $filter_event_status, $filter_event_filter_search);
$return['chart']['by_user_validator'] = pie3d_graph(
false,
@@ -1377,14 +1363,10 @@ function reporting_event_report_group($report, $content,
}
if ($event_graph_by_criticity) {
- $data_graph = reporting_get_count_events_by_criticity(
+ $data_graph = events_get_count_events_by_criticity(
array('id_group' => $content['id_group']), $content['period'],
- $report["datetime"],
- $filter_event_validated,
- $filter_event_critical,
- $filter_event_warning,
- $filter_event_no_validated,
- $filter_event_filter_search);
+ $report["datetime"],$filter_event_severity, $filter_event_type,
+ $filter_event_status, $filter_event_filter_search);
$colors = get_criticity_pie_colors($data_graph);
@@ -1404,15 +1386,10 @@ function reporting_event_report_group($report, $content,
}
if ($event_graph_validated_vs_unvalidated) {
- $data_graph =
- reporting_get_count_events_validated(
- array('id_group' => $content['id_group']), $content['period'],
- $report["datetime"],
- $filter_event_validated,
- $filter_event_critical,
- $filter_event_warning,
- $filter_event_no_validated,
- $filter_event_filter_search);
+ $data_graph = events_get_count_events_validated(
+ array('id_group' => $content['id_group']), $content['period'],
+ $report["datetime"],$filter_event_severity, $filter_event_type,
+ $filter_event_status, $filter_event_filter_search);
$return['chart']['validated_vs_unvalidated'] = pie3d_graph(
false,
@@ -1437,8 +1414,9 @@ function reporting_event_report_group($report, $content,
}
function reporting_event_report_module($report, $content) {
- global $config;
+ global $config;
+
$return['type'] = 'event_report_module';
if (empty($content['name'])) {
@@ -2198,38 +2176,39 @@ function reporting_event_report_agent($report, $content,
if ($config['history_event_enabled'])
$history = true;
- $return['title'] = $content['name'];
- $return['subtitle'] = agents_get_name($content['id_agent']);
- $return["description"] = $content["description"];
- $return["date"] = reporting_get_date_text($report, $content);
- $return['label'] = (isset($content['style']['label'])) ? $content['style']['label'] : '';
+ $return['title'] = $content['name'];
+ $return['subtitle'] = agents_get_name($content['id_agent']);
+ $return["description"] = $content["description"];
+ $return["date"] = reporting_get_date_text($report, $content);
+ $return['label'] = (isset($content['style']['label'])) ? $content['style']['label'] : '';
+ $return['show_summary_group'] = $content['style']['show_summary_group'];
$style = $content['style'];
-
- $filter_event_no_validated = $style['filter_event_no_validated'];
- $filter_event_validated = $style['filter_event_validated'];
- $filter_event_critical = $style['filter_event_critical'];
- $filter_event_warning = $style['filter_event_warning'];
- $filter_event_type = json_decode($style['filter_event_type'], true);
-
- $event_graph_by_user_validator = $style['event_graph_by_user_validator'];
- $event_graph_by_criticity = $style['event_graph_by_criticity'];
+
+ //filter
+ $show_summary_group = $style['show_summary_group'];
+ $filter_event_severity = json_decode($style['filter_event_severity'], true);
+ $filter_event_type = json_decode($style['filter_event_type'], true);
+ $filter_event_status = json_decode($style['filter_event_status'], true);
+ $filter_event_filter_search = $style['event_filter_search'];
+
+ //graph
+ $event_graph_by_user_validator = $style['event_graph_by_user_validator'];
+ $event_graph_by_criticity = $style['event_graph_by_criticity'];
$event_graph_validated_vs_unvalidated = $style['event_graph_validated_vs_unvalidated'];
-
+
$return['data'] = reporting_get_agents_detailed_event(
$content['id_agent'],
$content['period'],
$report["datetime"],
true,
- $filter_event_validated,
- $filter_event_critical,
- $filter_event_warning,
- $filter_event_no_validated,
true,
$history,
- $filter_event_type);
-
-
+ $show_summary_group,
+ $filter_event_severity,
+ $filter_event_type,
+ $filter_event_status,
+ $filter_event_filter_search);
reporting_set_conf_charts($width, $height, $only_image, $type,
$content, $ttl);
@@ -2242,26 +2221,19 @@ function reporting_event_report_agent($report, $content,
$height = $force_height_chart;
}
-
-
$return["chart"]["by_user_validator"] = null;
$return["chart"]["by_criticity"] = null;
$return["chart"]["validated_vs_unvalidated"] = null;
if ($event_graph_by_user_validator) {
- $data_chart =
- reporting_get_count_events_validated_by_user(
- array('id_agent' => $content['id_agent']),
- $content['period'],
- $report["datetime"],
- $filter_event_validated,
- $filter_event_critical,
- $filter_event_warning,
- $filter_event_no_validated);
+ $data_graph = events_get_count_events_validated_by_user(
+ array('id_agent' => $content['id_agent']), $content['period'],
+ $report["datetime"],$filter_event_severity, $filter_event_type,
+ $filter_event_status, $filter_event_filter_search);
$return["chart"]["by_user_validator"] = pie3d_graph(
false,
- $data_chart,
+ $data_graph,
500,
150,
__("other"),
@@ -2273,13 +2245,10 @@ function reporting_event_report_agent($report, $content,
}
if ($event_graph_by_criticity) {
- $data_graph = reporting_get_count_events_by_criticity(
+ $data_graph = events_get_count_events_by_criticity(
array('id_agent' => $content['id_agent']), $content['period'],
- $report["datetime"],
- $filter_event_validated,
- $filter_event_critical,
- $filter_event_warning,
- $filter_event_no_validated);
+ $report["datetime"],$filter_event_severity, $filter_event_type,
+ $filter_event_status, $filter_event_filter_search);
$colors = get_criticity_pie_colors($data_graph);
@@ -2299,13 +2268,10 @@ function reporting_event_report_agent($report, $content,
}
if ($event_graph_validated_vs_unvalidated) {
- $data_graph = reporting_get_count_events_validated(
+ $data_graph = events_get_count_events_validated(
array('id_agent' => $content['id_agent']), $content['period'],
- $report["datetime"],
- $filter_event_validated,
- $filter_event_critical,
- $filter_event_warning,
- $filter_event_no_validated);
+ $report["datetime"],$filter_event_severity, $filter_event_type,
+ $filter_event_status, $filter_event_filter_search);
$return["chart"]["validated_vs_unvalidated"] = pie3d_graph(
false,
@@ -6062,221 +6028,6 @@ function reporting_set_conf_charts(&$width, &$height, &$only_image, $type,
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
-/**
- * Gets a detailed reporting of groups's events.
- *
- * @param unknown_type $id_group Id of the group.
- * @param unknown_type $period Time period of the report.
- * @param unknown_type $date Date of the report.
- * @param unknown_type $return Whether to return or not.
- * @param unknown_type $html Whether to return HTML code or not.
- *
- * @return string Report of groups's events
- */
-function reporting_get_count_events_validated ($filter, $period = 0,
- $date = 0,
- $filter_event_validated = false, $filter_event_critical = false,
- $filter_event_warning = false, $filter_event_no_validated = false,
- $filter_event_search = false) {
-
- if (!is_numeric ($date)) {
- $date = strtotime ($date);
- }
- if (empty ($date)) {
- $date = get_system_time ();
- }
-
- return events_get_count_events_validated($filter, $period, $date,
- $filter_event_validated, $filter_event_critical,
- $filter_event_warning, $filter_event_no_validated,
- $filter_event_search);
-}
-
-/**
- * Gets a detailed reporting of groups's events.
- *
- * @param unknown_type $id_group Id of the group.
- * @param unknown_type $period Time period of the report.
- * @param unknown_type $date Date of the report.
- * @param unknown_type $return Whether to return or not.
- * @param unknown_type $html Whether to return HTML code or not.
- *
- * @return string Report of groups's events
- */
-function reporting_get_count_events_by_criticity ($filter, $period = 0,
- $date = 0,
- $filter_event_validated = false, $filter_event_critical = false,
- $filter_event_warning = false, $filter_event_no_validated = false,
- $filter_event_search = false) {
-
- if (!is_numeric ($date)) {
- $date = strtotime ($date);
- }
- if (empty ($date)) {
- $date = get_system_time ();
- }
-
- return events_get_count_events_by_criticity($filter, $period, $date,
- $filter_event_validated, $filter_event_critical,
- $filter_event_warning, $filter_event_no_validated,
- $filter_event_search);
-}
-
-/**
- * Gets a detailed reporting of groups's events.
- *
- * @param unknown_type $filter.
- * @param unknown_type $period Time period of the report.
- * @param unknown_type $date Date of the report.
- * @param unknown_type $return Whether to return or not.
- * @param unknown_type $html Whether to return HTML code or not.
- *
- * @return string Report of groups's events
- */
-function reporting_get_count_events_validated_by_user ($filter, $period = 0,
- $date = 0,
- $filter_event_validated = false, $filter_event_critical = false,
- $filter_event_warning = false, $filter_event_no_validated = false,
- $filter_event_search = false) {
-
- if (!is_numeric ($date)) {
- $date = strtotime ($date);
- }
- if (empty ($date)) {
- $date = get_system_time ();
- }
-
- return events_get_count_events_validated_by_user($filter, $period, $date,
- $filter_event_validated, $filter_event_critical,
- $filter_event_warning, $filter_event_no_validated, $filter_event_search);
-}
-
-/**
- * Gets a detailed reporting of groups's events.
- *
- * @param unknown_type $id_group Id of the group.
- * @param unknown_type $period Time period of the report.
- * @param unknown_type $date Date of the report.
- * @param unknown_type $return Whether to return or not.
- * @param unknown_type $html Whether to return HTML code or not.
- *
- * @return string Report of groups's events
- */
-function reporting_get_group_detailed_event ($id_group, $period = 0,
- $date = 0, $return = false, $html = true,
- $filter_event_validated = false, $filter_event_critical = false,
- $filter_event_warning = false, $filter_event_no_validated = false,
- $filter_event_filter_search = null, $return_type = false,
- $history = false, $filter_event_type = false) {
-
- global $config;
-
- if (!is_numeric ($date)) {
- $date = strtotime ($date);
- }
- if (empty ($date)) {
- $date = get_system_time ();
- }
-
- $table = new stdClass();
- $table->width = '99%';
-
- $table->align = array();
- $table->align[0] = 'center';
- $table->align[2] = 'center';
-
- $table->data = array ();
-
- $table->head = array ();
- $table->head[0] = __('Status');
- $table->head[1] = __('Name');
- $table->head[2] = __('Type');
- $table->head[3] = __('Agent');
- $table->head[4] = __('Severity');
- $table->head[5] = __('Val. by');
- $table->head[6] = __('Timestamp');
-
- $events = events_get_group_events($id_group, $period, $date,
- $filter_event_validated, $filter_event_critical,
- $filter_event_warning, $filter_event_no_validated,
- $filter_event_filter_search, false, $history, $filter_event_type);
-
- if ($return_type === 'hash') {
- return $events;
- }
-
- if ($events) {
- $note = '';
- if (count($events) >= 1000) {
- $note .= '* ' . __('Maximum of events shown') . ' (1000)
';
- }
- foreach ($events as $k => $event) {
- //First pass along the class of this row
- $table->cellclass[$k][1] = $table->cellclass[$k][3] =
- $table->cellclass[$k][4] = $table->cellclass[$k][5] =
- $table->cellclass[$k][6] =
- get_priority_class ($event["criticity"]);
-
- $data = array ();
-
- // Colored box
- switch ($event['estado']) {
- case 0:
- $img_st = "images/star.png";
- $title_st = __('New event');
- break;
- case 1:
- $img_st = "images/tick.png";
- $title_st = __('Event validated');
- break;
- case 2:
- $img_st = "images/hourglass.png";
- $title_st = __('Event in process');
- break;
- }
- $data[] = html_print_image ($img_st, true,
- array ("class" => "image_status",
- "width" => 16,
- "title" => $title_st,
- "id" => 'status_img_' . $event["id_evento"]));
-
- $data[] = ui_print_truncate_text(
- io_safe_output($event['evento']),
- 140, false, true);
-
- //$data[1] = $event['event_type'];
- $data[] = events_print_type_img ($event["event_type"], true);
-
- if (!empty($event['id_agente']))
- $data[] = agents_get_name($event['id_agente']);
- else
- $data[] = __('Pandora System');
- $data[] = get_priority_name ($event['criticity']);
- if (empty($event['id_usuario']) && $event['estado'] == EVENT_VALIDATE) {
- $data[] = '' . __('System') . '';
- }
- else {
- $user_name = db_get_value ('fullname', 'tusuario', 'id_user', $event['id_usuario']);
- $data[] = io_safe_output($user_name);
- }
- $data[] = '' .
- date($config['date_format'], $event['timestamp_rep']) .
- '';
- array_push ($table->data, $data);
- }
-
- if ($html) {
- return html_print_table ($table, $return) . $note;
- }
- else {
- return $table;
- }
- }
- else {
- return false;
- }
-}
-
/**
* Get a detailed report of summarized events per agent
*
@@ -6312,7 +6063,7 @@ function reporting_get_module_detailed_event ($id_modules, $period = 0,
$events = array ();
foreach ($id_modules as $id_module) {
- $event = events_get_module ($id_module, (int) $period, (int) $date, $history);
+ $event = events_get_module ($id_module, (int) $period, (int) $date, $history, $show_summary_group);
if (!empty ($event)) {
array_push ($events, $event);
}
@@ -6393,10 +6144,10 @@ function reporting_get_module_detailed_event ($id_modules, $period = 0,
* @return A table object (XHTML)
*/
function reporting_get_agents_detailed_event ($id_agents, $period = 0,
- $date = 0, $return = false, $filter_event_validated = false,
- $filter_event_critical = false, $filter_event_warning = false,
- $filter_event_no_validated = false, $only_data = false,
- $history = false, $filter_event_type = false) {
+ $date = 0, $return = false, $only_data = false, $history = false,
+ $show_summary_group = false, $filter_event_severity = false,
+ $filter_event_type = false, $filter_event_status = false,
+ $filter_event_filter_search = false) {
global $config;
@@ -6418,12 +6169,10 @@ function reporting_get_agents_detailed_event ($id_agents, $period = 0,
$events = array ();
foreach ($id_agents as $id_agent) {
- $event = events_get_agent ($id_agent,
- (int)$period,
- (int)$date,
- $filter_event_validated, $filter_event_critical,
- $filter_event_warning, $filter_event_no_validated,
- $history, $filter_event_type);
+ $event = events_get_agent ($id_agent, (int)$period, (int)$date,
+ $history, $show_summary_group, $filter_event_severity,
+ $filter_event_type, $filter_event_status,
+ $filter_event_filter_search, false, false);
if (empty($event)) {
$event = array();
@@ -6432,17 +6181,28 @@ function reporting_get_agents_detailed_event ($id_agents, $period = 0,
if ($only_data) {
$nevents = count($event);
for($i=$nevents-1; $i >= 0; $i--) {
- $e = $event[$i];
- //foreach ($event as $e) {
- $return_data[] = array(
- 'status' => $e['estado'],
- 'count' => $e['event_rep'],
- 'name' => $e['evento'],
- 'type' => $e["event_type"],
- 'criticity' => $e["criticity"],
- 'validated_by' => $e['id_usuario'],
- 'timestamp' => $e['timestamp_rep']
- );
+ $e = $event[$i];
+ if($show_summary_group){
+ $return_data[] = array(
+ 'status' => $e['estado'],
+ 'count' => $e['event_rep'],
+ 'name' => $e['evento'],
+ 'type' => $e["event_type"],
+ 'criticity' => $e["criticity"],
+ 'validated_by' => $e['id_usuario'],
+ 'timestamp' => $e['timestamp_rep']
+ );
+ }
+ else{
+ $return_data[] = array(
+ 'status' => $e['estado'],
+ 'name' => $e['evento'],
+ 'type' => $e["event_type"],
+ 'criticity' => $e["criticity"],
+ 'validated_by' => $e['id_usuario'],
+ 'timestamp' => $e['timestamp']
+ );
+ }
}
}
else {
@@ -8636,36 +8396,6 @@ function reporting_get_planned_downtimes_intervals ($id_agent_module, $start_dat
return $downtime_dates;
}
-/**
- * Gets a detailed reporting of groups's events.
- *
- * @param unknown_type $id_group Id of the group.
- * @param unknown_type $period Time period of the report.
- * @param unknown_type $date Date of the report.
- * @param unknown_type $return Whether to return or not.
- * @param unknown_type $html Whether to return HTML code or not.
- *
- * @return string Report of groups's events
- */
-function reporting_get_count_events_by_agent ($id_group, $period = 0,
- $date = 0,
- $filter_event_validated = false, $filter_event_critical = false,
- $filter_event_warning = false, $filter_event_no_validated = false,
- $filter_event_filter_search = null) {
-
- if (!is_numeric ($date)) {
- $date = strtotime ($date);
- }
- if (empty ($date)) {
- $date = get_system_time ();
- }
-
- return events_get_count_events_by_agent($id_group, $period, $date,
- $filter_event_validated, $filter_event_critical,
- $filter_event_warning, $filter_event_no_validated,
- $filter_event_filter_search);
-}
-
/**
* Get the maximum value of an agent module in a period of time.
*
diff --git a/pandora_console/include/functions_reporting_html.php b/pandora_console/include/functions_reporting_html.php
index 756431161b..e297efd5bd 100644
--- a/pandora_console/include/functions_reporting_html.php
+++ b/pandora_console/include/functions_reporting_html.php
@@ -251,10 +251,6 @@ function reporting_html_print_report($report, $mini = false) {
case 'database_serialized':
reporting_html_database_serialized($table, $item);
break;
- case 'agent_detailed_event':
- case 'event_report_agent':
- reporting_html_event_report_agent($table, $item);
- break;
case 'group_report':
reporting_html_group_report($table, $item);
break;
@@ -270,6 +266,10 @@ function reporting_html_print_report($report, $mini = false) {
case 'inventory_changes':
reporting_html_inventory_changes($table, $item);
break;
+ case 'agent_detailed_event':
+ case 'event_report_agent':
+ reporting_html_event_report_agent($table, $item);
+ break;
case 'event_report_module':
reporting_html_event_report_module($table, $item);
break;
@@ -753,7 +753,6 @@ function reporting_html_top_n($table, $item) {
function reporting_html_event_report_group($table, $item) {
global $config;
-
if (!empty($item['failed'])) {
$table->colspan['events']['cell'] = 3;
$table->data['events']['cell'] = $item['failed'];
@@ -764,26 +763,49 @@ function reporting_html_event_report_group($table, $item) {
$table1->align = array();
$table1->align[0] = 'center';
- $table1->align[2] = 'center';
-
+ if($item['show_summary_group']){
+ $table1->align[3] = 'center';
+ }
+ else{
+ $table1->align[2] = 'center';
+ }
$table1->data = array ();
$table1->head = array ();
- $table1->head[0] = __('Status');
- $table1->head[1] = __('Name');
- $table1->head[2] = __('Type');
- $table1->head[3] = __('Agent');
- $table1->head[4] = __('Severity');
- $table1->head[5] = __('Val. by');
- $table1->head[6] = __('Timestamp');
-
+ if($item['show_summary_group']){
+ $table1->head[0] = __('Status');
+ $table1->head[1] = __('Count');
+ $table1->head[2] = __('Name');
+ $table1->head[3] = __('Type');
+ $table1->head[4] = __('Agent');
+ $table1->head[5] = __('Severity');
+ $table1->head[6] = __('Val. by');
+ $table1->head[7] = __('Timestamp');
+ }
+ else{
+ $table1->head[0] = __('Status');
+ $table1->head[1] = __('Name');
+ $table1->head[2] = __('Type');
+ $table1->head[3] = __('Agent');
+ $table1->head[4] = __('Severity');
+ $table1->head[5] = __('Val. by');
+ $table1->head[6] = __('Timestamp');
+ }
+
foreach ($item['data'] as $k => $event) {
//First pass along the class of this row
- $table1->cellclass[$k][1] = $table1->cellclass[$k][3] =
- $table1->cellclass[$k][4] = $table1->cellclass[$k][5] =
- $table1->cellclass[$k][6] =
- get_priority_class ($event["criticity"]);
-
+ if($item['show_summary_group']){
+ $table1->cellclass[$k][1] = $table1->cellclass[$k][2] =
+ $table1->cellclass[$k][4] = $table1->cellclass[$k][5] =
+ $table1->cellclass[$k][6] = $table1->cellclass[$k][7] =
+ get_priority_class ($event["criticity"]);
+ }
+ else{
+ $table1->cellclass[$k][1] = $table1->cellclass[$k][3] =
+ $table1->cellclass[$k][4] = $table1->cellclass[$k][5] =
+ $table1->cellclass[$k][6] =
+ get_priority_class ($event["criticity"]);
+ }
$data = array ();
// Colored box
@@ -806,6 +828,10 @@ function reporting_html_event_report_group($table, $item) {
"width" => 16,
"title" => $title_st,
"id" => 'status_img_' . $event["id_evento"]));
+
+ if($item['show_summary_group']){
+ $data[] = $event['event_rep'];
+ }
$data[] = ui_print_truncate_text(
io_safe_output($event['evento']),
@@ -826,17 +852,20 @@ function reporting_html_event_report_group($table, $item) {
$user_name = db_get_value ('fullname', 'tusuario', 'id_user', $event['id_usuario']);
$data[] = io_safe_output($user_name);
}
- $data[] = '' .
- date($config['date_format'], $event['timestamp_rep']) .
- '';
+
+ if($item['show_summary_group']){
+ $data[] = '' . date($config['date_format'], $event['timestamp_rep']) . '';
+ }
+ else{
+ $data[] = '' . date($config['date_format'], strtotime($event['timestamp'])) . '';
+ }
+
array_push ($table1->data, $data);
}
$table->colspan['events']['cell'] = 3;
$table->data['events']['cell'] = html_print_table($table1, true);
-
-
if (!empty($item['chart']['by_agent'])) {
$table1 = new stdClass();
$table1->width = '99%';
@@ -1371,10 +1400,8 @@ function reporting_html_group_report($table, $item) {
function reporting_html_event_report_agent($table, $item) {
global $config;
-
$table1 = new stdClass();
$table1->width = '99%';
-
$table1->align = array();
$table1->align[0] = 'center';
$table1->align[1] = 'center';
@@ -1384,7 +1411,9 @@ function reporting_html_event_report_agent($table, $item) {
$table1->head = array ();
$table1->head[0] = __('Status');
- $table1->head[1] = __('Count');
+ if($item['show_summary_group']){
+ $table1->head[1] = __('Count');
+ }
$table1->head[2] = __('Name');
$table1->head[3] = __('Type');
$table1->head[4] = __('Severity');
@@ -1392,13 +1421,21 @@ function reporting_html_event_report_agent($table, $item) {
$table1->head[6] = __('Timestamp');
foreach ($item['data'] as $i => $event) {
- $table1->cellclass[$i][1] =
- $table1->cellclass[$i][2] =
- $table1->cellclass[$i][4] =
- $table1->cellclass[$i][5] =
- $table1->cellclass[$i][6] =
- get_priority_class ($event["criticity"]);
-
+ if($item['show_summary_group']){
+ $table1->cellclass[$i][1] =
+ $table1->cellclass[$i][2] =
+ $table1->cellclass[$i][4] =
+ $table1->cellclass[$i][5] =
+ $table1->cellclass[$i][6] =
+ get_priority_class ($event["criticity"]);
+ }
+ else{
+ $table1->cellclass[$i][1] =
+ $table1->cellclass[$i][3] =
+ $table1->cellclass[$i][4] =
+ $table1->cellclass[$i][5] =
+ get_priority_class ($event["criticity"]);
+ }
$data = array ();
// Colored box
switch ($event['status']) {
@@ -1420,8 +1457,10 @@ function reporting_html_event_report_agent($table, $item) {
"width" => 16,
"title" => $title_st));
- $data[] = $event['count'];
-
+ if($item['show_summary_group']){
+ $data[] = $event['count'];
+ }
+
$data[] = ui_print_truncate_text(
io_safe_output($event['name']),
140, false, true);
@@ -1436,8 +1475,12 @@ function reporting_html_event_report_agent($table, $item) {
$user_name = db_get_value ('fullname', 'tusuario', 'id_user', $event['validated_by']);
$data[] = io_safe_output($user_name);
}
- $data[] = '' .
- date($config['date_format'], $event['timestamp']) . '';
+ if($item['show_summary_group']){
+ $data[] = '' . date($config['date_format'], $event['timestamp']) . '';
+ }
+ else{
+ $data[] = '' . date($config['date_format'], strtotime($event['timestamp'])) . '';
+ }
array_push ($table1->data, $data);
}
diff --git a/pandora_console/index.php b/pandora_console/index.php
index ea7393e480..d771f4a50d 100755
--- a/pandora_console/index.php
+++ b/pandora_console/index.php
@@ -688,7 +688,7 @@ else {
$main_sec = get_parameter('extension_in_menu');
else
if ($sec == 'gextensions')
-+ $main_sec = get_parameter('extension_in_menu');
+ $main_sec = get_parameter('extension_in_menu');
else
$main_sec = $sec;
$sec = $sec2;