diff --git a/pandora_console/godmode/events/events.php b/pandora_console/godmode/events/events.php
index c937ad281c..72ae001fe1 100644
--- a/pandora_console/godmode/events/events.php
+++ b/pandora_console/godmode/events/events.php
@@ -50,17 +50,10 @@ if (check_acl($config['id_user'], 0, 'PM')) {
'text' => ''.html_print_image('images/event_responses.png', true, ['title' => __('Event responses')]).'',
];
- if (!is_metaconsole()) {
- $buttons['fields'] = [
- 'active' => false,
- 'text' => ''.html_print_image('images/custom_columns.png', true, ['title' => __('Custom fields')]).'',
- ];
- } else {
- $buttons['fields'] = [
- 'active' => false,
- 'text' => ''.html_print_image('images/custom_columns.png', true, ['title' => __('Custom fields')]).'',
- ];
- }
+ $buttons['fields'] = [
+ 'active' => false,
+ 'text' => ''.html_print_image('images/custom_columns.png', true, ['title' => __('Custom fields')]).'',
+ ];
}
switch ($section) {
diff --git a/pandora_console/include/ajax/events.php b/pandora_console/include/ajax/events.php
index d6b4e61eaa..05a6e3ad07 100644
--- a/pandora_console/include/ajax/events.php
+++ b/pandora_console/include/ajax/events.php
@@ -75,13 +75,20 @@ $graphic_event_group = (bool) get_parameter('graphic_event_group');
$get_table_response_command = (bool) get_parameter('get_table_response_command');
$save_filter_modal = get_parameter('save_filter_modal', 0);
$load_filter_modal = get_parameter('load_filter_modal', 0);
-$save_filter = get_parameter('save_filter', 0);
$get_filter_values = get_parameter('get_filter_values', 0);
$update_event_filter = get_parameter('update_event_filter', 0);
$save_event_filter = get_parameter('save_event_filter', 0);
$in_process_event = get_parameter('in_process_event', 0);
$validate_event = get_parameter('validate_event', 0);
$delete_event = get_parameter('delete_event', 0);
+$get_event_filters = get_parameter('get_event_filters', 0);
+
+
+if ($get_event_filters) {
+ $event_filter = events_get_event_filter_select();
+
+ echo io_json_mb_encode($event_filter);
+}
// Delete event (filtered or not).
if ($delete_event) {
@@ -601,7 +608,7 @@ function save_new_filter() {
jQuery.post ("",
{
- "page" : "operation/events/events_list",
+ "page" : "include/ajax/events",
"save_event_filter" : 1,
"id_name" : $("#text-id_name").val(),
"id_group" : $("select#id_group").val(),
@@ -670,7 +677,7 @@ function save_update_filter() {
var name_filter_update = $("#overwrite_filter option[value='"+id_filter_update+"']").text();
jQuery.post ("",
- {"page" : "operation/events/events_list",
+ {"page" : "include/ajax/events",
"update_event_filter" : 1,
"id" : $("#overwrite_filter").val(),
"id_group" : $("select#id_group").val(),
@@ -723,7 +730,7 @@ function save_update_filter() {
$('#filter_id').append ($('').html ( ).attr ("value", 0));
// Reload filters select
jQuery.post ("",
- {"page" : "operation/events/events_list",
+ {"page" : "include/ajax/events",
"get_event_filters" : 1
},
function (data) {
diff --git a/pandora_console/include/functions_events.php b/pandora_console/include/functions_events.php
index a958a3a957..0f72e0b55c 100644
--- a/pandora_console/include/functions_events.php
+++ b/pandora_console/include/functions_events.php
@@ -1197,6 +1197,19 @@ function events_get_all(
}
}
+ $server_join = '';
+ if (is_metaconsole()) {
+ $server_join = ' LEFT JOIN tmetaconsole_setup ts
+ ON ts.id = te.server_id';
+ if (!empty($filter['server_id'])) {
+ $server_join = sprintf(
+ ' LEFT JOIN tmetaconsole_setup ts
+ ON ts.id = te.server_id AND ts.id= %d',
+ $filter['server_id']
+ );
+ }
+ }
+
// Secondary groups.
db_process_sql('SET group_concat_max_len = 9999999');
$event_lj = events_get_secondary_groups_left_join($table);
@@ -1229,6 +1242,7 @@ function events_get_all(
%s JOIN tgrupo tg
ON te.id_grupo = tg.id_grupo
%s
+ %s
WHERE 1=1
%s
%s
@@ -1247,6 +1261,7 @@ function events_get_all(
join(' ', $agent_join_filters),
$tgrupo_join,
join(' ', $tgrupo_join_filters),
+ $server_join,
join(' ', $sql_filters),
$group_by,
$order_by,
diff --git a/pandora_console/operation/events/events.php b/pandora_console/operation/events/events.php
index 3f730325d8..2ee276c820 100644
--- a/pandora_console/operation/events/events.php
+++ b/pandora_console/operation/events/events.php
@@ -44,9 +44,13 @@ require_once $config['homedir'].'/include/functions_ui.php';
// Check access.
check_login();
-if (! check_acl($config['id_user'], 0, 'ER')
- && ! check_acl($config['id_user'], 0, 'EW')
- && ! check_acl($config['id_user'], 0, 'EM')
+$event_a = check_acl($config['id_user'], 0, 'ER');
+$event_w = check_acl($config['id_user'], 0, 'EW');
+$event_m = check_acl($config['id_user'], 0, 'EM');
+
+if (! $event_a
+ && ! $event_w
+ && ! $event_m
) {
db_pandora_audit(
'ACL Violation',
@@ -61,9 +65,6 @@ if (! check_acl($config['id_user'], 0, 'ER')
}
-$event_a = check_acl($config['id_user'], 0, 'ER');
-$event_w = check_acl($config['id_user'], 0, 'EW');
-$event_m = check_acl($config['id_user'], 0, 'EM');
$access = ($event_a == true) ? 'ER' : (($event_w == true) ? 'EW' : (($event_m == true) ? 'EM' : 'ER'));
@@ -237,6 +238,9 @@ if (is_ajax()) {
];
if (!is_metaconsole()) {
$fields[] = 'am.nombre as id_agentmodule';
+ $fields[] = 'ta.server_name as server_name';
+ } else {
+ $fields[] = 'ts.server_name as server_name';
}
$events = events_get_all(
@@ -603,7 +607,7 @@ if ($pure) {
$sound_event['text'] = ''.html_print_image('images/sound.png', true, ['title' => __('Sound events')]).'';
// If the user has administrator permission display manage tab.
- if (check_acl($config['id_user'], 0, 'EW') || check_acl($config['id_user'], 0, 'EM')) {
+ if ($event_w || $event_m) {
// Manage events.
$manage_events['active'] = false;
$manage_events['text'] = ''.html_print_image('images/setup.png', true, ['title' => __('Manage events')]).'';
@@ -880,12 +884,14 @@ $buttons[] = [
'onclick' => '',
];
-$buttons[] = [
- 'id' => 'save-filter',
- 'class' => 'float-left margin-right-2 sub wand',
- 'text' => __('Save filter'),
- 'onclick' => '',
-];
+if ($event_w || $event_m) {
+ $buttons[] = [
+ 'id' => 'save-filter',
+ 'class' => 'float-left margin-right-2 sub wand',
+ 'text' => __('Save filter'),
+ 'onclick' => '',
+ ];
+}
/*
* Advanced filter.
@@ -1374,12 +1380,12 @@ $sql_event_resp = "SELECT id, name FROM tevent_response WHERE type LIKE 'command
$event_responses = db_get_all_rows_sql($sql_event_resp);
if ($config['event_replication'] != 1) {
- if (check_acl($config['id_user'], 0, 'EW') == 1 && !$readonly) {
+ if ($event_w && !$readonly) {
$array_events_actions['in_progress_selected'] = __('In progress selected');
$array_events_actions['validate_selected'] = __('Validate selected');
}
- if (check_acl($config['id_user'], 0, 'EM') == 1 && !$readonly) {
+ if ($event_m == 1 && !$readonly) {
$array_events_actions['delete_selected'] = __('Delete selected');
}
}