From c5ed1418e0c7fe769da5fb5fa07bc15b8b58832e Mon Sep 17 00:00:00 2001 From: daniel Date: Tue, 10 Jan 2023 09:57:04 +0100 Subject: [PATCH] add new field for filters events pandora_enterprise#9878 --- .../godmode/events/event_edit_filter.php | 59 +++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/pandora_console/godmode/events/event_edit_filter.php b/pandora_console/godmode/events/event_edit_filter.php index 9d2a24a017..4b73ff5796 100644 --- a/pandora_console/godmode/events/event_edit_filter.php +++ b/pandora_console/godmode/events/event_edit_filter.php @@ -109,6 +109,8 @@ if ($id) { $text_agent = ''; } } + + $server_id = ($filter['server_id'] ?? ''); } else { $id_group = ''; $id_group_filter = ''; @@ -134,6 +136,7 @@ if ($id) { $filter_only_alert = ''; $search_secondary_groups = 0; $search_recursive_groups = 0; + $server_id = ''; } if ($update || $create) { @@ -183,6 +186,12 @@ if ($update || $create) { $custom_data = get_parameter('custom_data', ''); $custom_data_filter_type = get_parameter('custom_data_filter_type', ''); + $server_id = ''; + if (is_metaconsole() === true) { + $servers_array = get_parameter('server_id', []); + $server_id = implode(',', $servers_array); + } + $values = [ 'id_name' => $id_name, 'id_group_filter' => $id_group_filter, @@ -212,6 +221,7 @@ if ($update || $create) { 'search_recursive_groups' => $search_recursive_groups, 'custom_data' => $custom_data, 'custom_data_filter_type' => $custom_data_filter_type, + 'server_id' => $server_id, ]; $severity = explode(',', $severity); @@ -708,6 +718,55 @@ if (is_metaconsole()) { ); } +if (is_metaconsole() === true) { + $servers = metaconsole_get_servers(); + if (is_array($servers) === true) { + $servers = array_reduce( + $servers, + function ($carry, $item) { + $carry[$item['id']] = $item['server_name']; + return $carry; + } + ); + } else { + $servers = []; + } + + $servers[0] = __('Metaconsola'); + + if ($server_id === '') { + $server_id = array_keys($servers); + } else { + if (is_array($server_id) === false) { + if (is_numeric($server_id) === true) { + if ($server_id !== 0) { + $server_id = [$server_id]; + } else { + $server_id = array_keys($servers); + } + } else { + $server_id = explode(',', $server_id); + } + } + } + + $table->data[29][0] = ''.__('Server').''; + $table->data[29][1] = html_print_select( + $servers, + 'server_id[]', + $server_id, + '', + '', + 0, + true, + true, + true, + '', + false, + 'height: 60px;' + ); +} + echo '
'; html_print_table($table);