Table fixes
|
@ -124,8 +124,14 @@ foreach ($stats as $stat) {
|
|||
}
|
||||
|
||||
$status .= '</table>';
|
||||
$table->rowclass = [];
|
||||
$table->rowclass[0] = 'w100p';
|
||||
$table->rowclass[1] = 'w100p';
|
||||
$table->rowclass[2] = 'w100p';
|
||||
$table->rowclass[3] = 'w100p';
|
||||
$table->rowclass[4] = 'w100p';
|
||||
$table->rowclass[5] = 'w100p';
|
||||
$table->data[0][0] = $status;
|
||||
$table->rowclass[] = '';
|
||||
|
||||
$table->data[] = $tdata;
|
||||
|
||||
|
|
|
@ -985,7 +985,7 @@ foreach ($modules as $module) {
|
|||
true,
|
||||
true,
|
||||
'[…]',
|
||||
'font-size: 7.2pt'
|
||||
''
|
||||
).$dt_disabled_icon.'</em>';
|
||||
} else {
|
||||
$data[0] .= ui_print_truncate_text(
|
||||
|
@ -995,7 +995,7 @@ foreach ($modules as $module) {
|
|||
true,
|
||||
true,
|
||||
'[…]',
|
||||
'font-size: 7.2pt'
|
||||
''
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -611,7 +611,7 @@ foreach ($simple_alerts as $alert) {
|
|||
'[…]',
|
||||
''
|
||||
);
|
||||
$data[2] .= ' <a class="template_details"
|
||||
$data[2] .= ' <a class="template_details patatas"
|
||||
href="'.ui_get_full_url(false, false, false, false).'ajax.php?page=godmode/alerts/alert_templates&get_template_tooltip=1&id_template='.$alert['id_alert_template'].'">';
|
||||
$data[2] .= html_print_image(
|
||||
'images/zoom.png',
|
||||
|
|
Before Width: | Height: | Size: 929 B |
Before Width: | Height: | Size: 876 B |
Before Width: | Height: | Size: 905 B |
Before Width: | Height: | Size: 891 B |
Before Width: | Height: | Size: 769 B |
Before Width: | Height: | Size: 869 B |
Before Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 861 B |
Before Width: | Height: | Size: 814 B |
Before Width: | Height: | Size: 738 B |
Before Width: | Height: | Size: 754 B |
Before Width: | Height: | Size: 711 B |
Before Width: | Height: | Size: 873 B |
Before Width: | Height: | Size: 689 B |
Before Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 937 B |
Before Width: | Height: | Size: 877 B |
Before Width: | Height: | Size: 913 B |
Before Width: | Height: | Size: 898 B |
Before Width: | Height: | Size: 717 B |
Before Width: | Height: | Size: 798 B |
Before Width: | Height: | Size: 735 B |
Before Width: | Height: | Size: 776 B |
Before Width: | Height: | Size: 757 B |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB |
|
@ -331,11 +331,11 @@ if ($get_agent_alerts_agent_view) {
|
|||
$rowPair = true;
|
||||
$iterator = 0;
|
||||
foreach ($alerts['alerts_simple'] as $alert) {
|
||||
$row = ui_format_alert_row($alert, false, $url, 'font-size: 7pt;');
|
||||
$row = ui_format_alert_row($alert, false, $url, 'font-size: 9pt;');
|
||||
$table->data[] = $row;
|
||||
}
|
||||
|
||||
if (!empty($table->data)) {
|
||||
if (empty($table->data) === false) {
|
||||
html_print_table($table);
|
||||
} else {
|
||||
ui_print_info_message(['no_close' => true, 'message' => __('No alerts found') ]);
|
||||
|
@ -663,9 +663,9 @@ if ($get_agent_alerts_datatable === true) {
|
|||
include_once $config['homedir'].'/operation/agentes/alerts_status.functions.php';
|
||||
include_once $config['homedir'].'/include/functions_users.php';
|
||||
|
||||
$agent_a = check_acl($config['id_user'], 0, 'AR');
|
||||
$agent_w = check_acl($config['id_user'], 0, 'AW');
|
||||
$access = ($agent_a == true) ? 'AR' : (($agent_w == true) ? 'AW' : 'AR');
|
||||
$agent_a = (bool) check_acl($config['id_user'], 0, 'AR');
|
||||
$agent_w = (bool) check_acl($config['id_user'], 0, 'AW');
|
||||
$access = ($agent_a === true) ? 'AR' : (($agent_w === true) ? 'AW' : 'AR');
|
||||
|
||||
$all_groups = get_parameter('all_groups');
|
||||
$idAgent = (int) get_parameter('id_agent');
|
||||
|
@ -861,7 +861,7 @@ if ($get_agent_alerts_datatable === true) {
|
|||
|
||||
if (is_metaconsole() === true) {
|
||||
include_once $config['homedir'].'/enterprise/meta/include/functions_alerts_meta.php';
|
||||
if ($idAgent != 0) {
|
||||
if ($idAgent !== 0) {
|
||||
$alerts['alerts_simple'] = alerts_meta_get_alerts($agents, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, false, $strict_user, $tag_filter, $action_filter);
|
||||
|
||||
$countAlertsSimple = alerts_meta_get_alerts($agents, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, true, $strict_user, $tag_filter, $action_filter);
|
||||
|
@ -875,7 +875,7 @@ if ($get_agent_alerts_datatable === true) {
|
|||
$countAlertsSimple = alerts_meta_get_group_alerts($id_groups, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, true, $strict_user, $tag_filter, $action_filter);
|
||||
}
|
||||
} else {
|
||||
if ($idAgent != 0) {
|
||||
if ($idAgent !== 0) {
|
||||
$alerts['alerts_simple'] = agents_get_alerts_simple($idAgent, $filter_alert, $options_simple, $whereAlertSimple, false, false, $idGroup, false, $strict_user, $tag_filter);
|
||||
|
||||
$countAlertsSimple = agents_get_alerts_simple($idAgent, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, true, $strict_user, $tag_filter);
|
||||
|
@ -926,7 +926,7 @@ if ($get_agent_alerts_datatable === true) {
|
|||
// Standby.
|
||||
$tmp->policy = $row[0];
|
||||
$tmp->standby = $row[1];
|
||||
$tmp->force = $row[2];
|
||||
$tmp->actions = $row[2];
|
||||
$tmp->agent_name = $row[3];
|
||||
$tmp->agent_module_name = $row[4];
|
||||
$tmp->template_name = $row[5];
|
||||
|
|
|
@ -958,10 +958,10 @@ if (check_login()) {
|
|||
|
||||
$table = new stdClass();
|
||||
$table->width = '100%';
|
||||
$table->styleTable = 'display:flex;border: 0;border-radius: 0;vertical-align: baseline;';
|
||||
$table->styleTable = 'display:flex;border: 0;border-radius: 0;vertical-align: baseline;flex-direction: column;';
|
||||
$table->cellpadding = 0;
|
||||
$table->cellspacing = 0;
|
||||
$table->class = 'info_table';
|
||||
$table->class = 'tactical_table info_table';
|
||||
$table->align = [];
|
||||
$table->style = [];
|
||||
$table->head = [];
|
||||
|
@ -979,35 +979,41 @@ if (check_login()) {
|
|||
$table->align[8] = 'left';
|
||||
$table->align[9] = 'right';
|
||||
// Cell styles.
|
||||
$table->style[0] = 'max-width: 45px;vertical-align: baseline';
|
||||
$table->style[1] = 'min-width: 80px;vertical-align: baseline';
|
||||
$table->style[2] = 'width: 8%;vertical-align: baseline';
|
||||
$table->style[3] = 'width: 22%;vertical-align: baseline';
|
||||
$table->style[4] = 'min-width: 80px;vertical-align: baseline';
|
||||
$table->style[5] = 'width: 10%;vertical-align: baseline';
|
||||
$table->style[0] = 'width: 5%;vertical-align: baseline';
|
||||
$table->style[1] = 'width: 5%;vertical-align: baseline';
|
||||
$table->style[2] = 'width: 20%;vertical-align: baseline';
|
||||
$table->style[3] = 'width: 20%;vertical-align: baseline';
|
||||
$table->style[4] = 'width: 5%;vertical-align: baseline';
|
||||
$table->style[5] = 'width: 15%;vertical-align: baseline';
|
||||
$table->style[6] = 'width: 10%;vertical-align: baseline;font-size: 9pt';
|
||||
$table->style[7] = 'width: 10%;vertical-align: baseline';
|
||||
$table->style[8] = 'min-width: 110px;vertical-align: baseline;font-size: 9pt';
|
||||
$table->style[8] = 'width: 10%;vertical-align: baseline;font-size: 9pt';
|
||||
$table->style[9] = 'width: 10%;vertical-align: baseline';
|
||||
// Row class.
|
||||
$table->rowclass[0] = 'header_row';
|
||||
|
||||
$data = [];
|
||||
$data[0] = ($isFunctionPolicies !== ENTERPRISE_NOT_HOOK) ? '<span title="'.__('Policy').'">'.__('P').'</span>' : '';
|
||||
$data[1] = '<span>'.__('Type').'</span>'.ui_get_sorting_arrows($url_up_type, $url_down_type, $selectTypeUp, $selectTypeDown);
|
||||
$data[2] = '<span>'.__('Module name').'</span>'.ui_get_sorting_arrows($url_up_name, $url_down_name, $selectNameUp, $selectNameDown);
|
||||
$data[3] = '<span>'.__('Description').'</span>';
|
||||
$data[4] = '<span>'.__('Status').'</span>'.ui_get_sorting_arrows($url_up_status, $url_down_status, $selectStatusUp, $selectStatusDown);
|
||||
$data[5] = '<span>'.__('Thresholds').'</span>';
|
||||
$data[6] = '<span>'.__('Data').'</span>';
|
||||
$data[7] = '<span>'.__('Graphs').'</span>';
|
||||
$data[8] = '<span>'.__('Last contact').'</span>'.ui_get_sorting_arrows($url_up_last, $url_down_last, $selectLastContactUp, $selectLastContactDown);
|
||||
$data[9] = '<span>'.__('Actions').'</span>';
|
||||
|
||||
array_push($table->data, $data);
|
||||
// $table->headclass[] = 'header_row';
|
||||
$table->head[0] = ($isFunctionPolicies !== ENTERPRISE_NOT_HOOK) ? '<span title="'.__('Policy').'">'.__('P').'</span>' : '';
|
||||
$table->headstyle[0] = 'width: 5%;text-align: center;';
|
||||
$table->head[1] = '<span>'.__('Type').'</span>'.ui_get_sorting_arrows($url_up_type, $url_down_type, $selectTypeUp, $selectTypeDown);
|
||||
$table->headstyle[1] = 'width: 5%;text-align: left;';
|
||||
$table->head[2] = '<span>'.__('Module name').'</span>'.ui_get_sorting_arrows($url_up_name, $url_down_name, $selectNameUp, $selectNameDown);
|
||||
$table->headstyle[2] = 'width: 20%;text-align: left;';
|
||||
$table->head[3] = '<span>'.__('Description').'</span>';
|
||||
$table->headstyle[3] = 'width: 20%;text-align: left;';
|
||||
$table->head[4] = '<span>'.__('Status').'</span>'.ui_get_sorting_arrows($url_up_status, $url_down_status, $selectStatusUp, $selectStatusDown);
|
||||
$table->headstyle[4] = 'width: 5%;text-align: center;';
|
||||
$table->head[5] = '<span>'.__('Thresholds').'</span>';
|
||||
$table->headstyle[5] = 'width: 15%;text-align: left;';
|
||||
$table->head[6] = '<span>'.__('Data').'</span>';
|
||||
$table->headstyle[6] = 'width: 10%;text-align: left;';
|
||||
$table->head[7] = '<span>'.__('Last contact').'</span>'.ui_get_sorting_arrows($url_up_last, $url_down_last, $selectLastContactUp, $selectLastContactDown);
|
||||
$table->headstyle[7] = 'width: 10%;';
|
||||
$table->head[8] = '<span>'.__('Graphs').'</span>';
|
||||
$table->headstyle[8] = 'width: 10%;';
|
||||
$table->head[9] = '<span>'.__('Actions').'</span>';
|
||||
$table->headstyle[8] = 'width: 10%;';
|
||||
|
||||
$last_modulegroup = 0;
|
||||
$rowIndex = 1;
|
||||
$rowIndex = 0;
|
||||
|
||||
$id_type_web_content_string = db_get_value(
|
||||
'id_tipo',
|
||||
|
@ -1017,8 +1023,7 @@ if (check_login()) {
|
|||
);
|
||||
|
||||
$show_context_help_first_time = false;
|
||||
|
||||
$hierachy_mode = (string) get_parameter('hierachy_mode', false);
|
||||
$hierachy_mode = (string) get_parameter('hierachy_mode');
|
||||
|
||||
if ($hierachy_mode === 'true') {
|
||||
$modules_hierachy = [];
|
||||
|
@ -1031,7 +1036,7 @@ if (check_login()) {
|
|||
|
||||
foreach ($modules as $module) {
|
||||
$idAgenteModulo = $module['id_agente_modulo'];
|
||||
if ($hierachy_mode !== 'true') {
|
||||
if ($hierachy_mode === 'false') {
|
||||
// The code add the row of 1 cell with title of group for to be more organice the list.
|
||||
if ($module['id_module_group'] != $last_modulegroup) {
|
||||
$table->colspan[$rowIndex][0] = count($table->style);
|
||||
|
@ -1049,6 +1054,7 @@ if (check_login()) {
|
|||
$data = [];
|
||||
|
||||
// Module policy.
|
||||
// $table->cellstyle[$rowIndex][0] = 'width: 1%;';
|
||||
$data[0] = '';
|
||||
if ($isFunctionPolicies !== ENTERPRISE_NOT_HOOK) {
|
||||
if ((int) $module['id_policy_module'] !== 0) {
|
||||
|
@ -1063,7 +1069,7 @@ if (check_login()) {
|
|||
$img = 'images/policies_brick.png';
|
||||
$title = '('.__('Adopted').') '.$name_policy;
|
||||
} else {
|
||||
$img = 'images/policies_mc.png';
|
||||
$img = 'images/policy@svg.svg';
|
||||
$title = $name_policy;
|
||||
}
|
||||
} else {
|
||||
|
@ -1079,7 +1085,15 @@ if (check_login()) {
|
|||
$data[0] .= html_print_anchor(
|
||||
[
|
||||
'href' => ui_get_full_url('?sec=gmodules&sec2=enterprise/godmode/policies/policies&id='.$id_policy),
|
||||
'content' => html_print_image($img, true, ['title' => $title]),
|
||||
'content' => html_print_image(
|
||||
$img,
|
||||
true,
|
||||
[
|
||||
'title' => $title,
|
||||
'style' => 'margin: 0 5px;',
|
||||
'class' => 'main_menu_icon',
|
||||
]
|
||||
),
|
||||
],
|
||||
true
|
||||
);
|
||||
|
@ -1087,10 +1101,12 @@ if (check_login()) {
|
|||
}
|
||||
|
||||
// Module server type.
|
||||
// $table->cellstyle[$rowIndex][1] = 'width: 1%;';
|
||||
$data[1] = '';
|
||||
$data[1] .= ui_print_servertype_icon((int) $module['id_modulo']);
|
||||
|
||||
// Module name.
|
||||
// $table->cellstyle[$rowIndex][2] = 'width: 1%;';
|
||||
$data[2] = '';
|
||||
if (isset($module['deep']) === true && ((int) $module['deep'] !== 0)) {
|
||||
$data[2] .= str_repeat(' ', $module['deep']);
|
||||
|
@ -1129,6 +1145,7 @@ if (check_login()) {
|
|||
$data[3] .= ui_print_string_substr($module['descripcion'], 60, true, 9);
|
||||
|
||||
// Module status.
|
||||
// $table->cellstyle[$rowIndex][4] = 'width: 5%;';
|
||||
$data[4] = '';
|
||||
if ($module['datos'] !== strip_tags($module['datos'])) {
|
||||
$module_value = io_safe_input($module['datos']);
|
||||
|
@ -1157,6 +1174,7 @@ if (check_login()) {
|
|||
}
|
||||
|
||||
// Module thresholds.
|
||||
// $table->cellstyle[$rowIndex][5] = 'width: 10%;';
|
||||
$data[5] = '';
|
||||
if ((int) $module['id_tipo_modulo'] !== 25) {
|
||||
$data[5] = ui_print_module_warn_value($module['max_warning'], $module['min_warning'], $module['str_warning'], $module['max_critical'], $module['min_critical'], $module['str_critical'], $module['warning_inverse'], $module['critical_inverse'], 'class="font_9pt"');
|
||||
|
@ -1165,11 +1183,24 @@ if (check_login()) {
|
|||
}
|
||||
|
||||
// Module last value.
|
||||
// $table->cellstyle[$rowIndex][6] = 'width: 10%;';
|
||||
$data[6] = '';
|
||||
$data[6] .= '<span class="inherited_text_data_for_humans">'.modules_get_agentmodule_data_for_humans($module).'</span>';
|
||||
|
||||
// Graph buttons.
|
||||
// Last contact.
|
||||
// $table->cellstyle[$rowIndex][7] = 'width: 10%;';
|
||||
$data[7] = '';
|
||||
if ((int) $module['estado'] === 3) {
|
||||
$timestampClass = 'redb font_9pt';
|
||||
} else {
|
||||
$timestampClass = 'font_9pt';
|
||||
}
|
||||
|
||||
$data[7] .= ui_print_timestamp($module['utimestamp'], true, ['class' => $timestampClass ]);
|
||||
|
||||
// Graph buttons.
|
||||
// $table->cellstyle[$rowIndex][8] = 'width: 100px;';
|
||||
$data[8] = '';
|
||||
if ((int) $module['history_data'] === 1) {
|
||||
if (empty((float) $module['min_warning']) === true
|
||||
&& empty((float) $module['max_warning']) === true
|
||||
|
@ -1244,7 +1275,7 @@ if (check_login()) {
|
|||
true
|
||||
);
|
||||
|
||||
$data[7] = html_print_div(
|
||||
$data[8] = html_print_div(
|
||||
[
|
||||
'class' => 'table_action_buttons',
|
||||
'content' => implode('', $graphButtons),
|
||||
|
@ -1253,15 +1284,6 @@ if (check_login()) {
|
|||
);
|
||||
}
|
||||
|
||||
// Last contact.
|
||||
$data[8] = '';
|
||||
if ((int) $module['estado'] === 3) {
|
||||
$timestampClass = 'redb font_9pt';
|
||||
} else {
|
||||
$timestampClass = 'font_9pt';
|
||||
}
|
||||
|
||||
$data[8] .= ui_print_timestamp($module['utimestamp'], true, ['class' => $timestampClass ]);
|
||||
// Actions.
|
||||
$data[9] = '';
|
||||
$moduleActionButtons = [];
|
||||
|
|
|
@ -2463,13 +2463,9 @@ function events_print_event_table(
|
|||
|
||||
ui_require_css_file('events');
|
||||
|
||||
if ($agent_id == 0) {
|
||||
$agent_condition = '';
|
||||
} else {
|
||||
$agent_condition = ' id_agente = '.$agent_id.' AND ';
|
||||
}
|
||||
$agent_condition = ($agent_id === 0) ? '' : ' id_agente = '.$agent_id.' AND ';
|
||||
|
||||
if ($filter == '') {
|
||||
if (empty($filter) === true) {
|
||||
$filter = '1 = 1';
|
||||
}
|
||||
|
||||
|
@ -2489,7 +2485,7 @@ function events_print_event_table(
|
|||
$result = db_get_all_rows_sql($sql);
|
||||
|
||||
if ($result === false) {
|
||||
if ($return) {
|
||||
if ($return === true) {
|
||||
$returned = ui_print_info_message(__('No events'), '', true);
|
||||
return $returned;
|
||||
} else {
|
||||
|
@ -2501,8 +2497,8 @@ function events_print_event_table(
|
|||
$table->cellpadding = 0;
|
||||
$table->cellspacing = 0;
|
||||
$table->width = $width;
|
||||
$table->class = 'info_table no-td-padding';
|
||||
if (!$tactical_view) {
|
||||
$table->class = 'tactical_table info_table no-td-padding';
|
||||
if ($tactical_view === false) {
|
||||
$table->title = __('Latest events');
|
||||
}
|
||||
|
||||
|
@ -2517,31 +2513,28 @@ function events_print_event_table(
|
|||
$table->style = [];
|
||||
|
||||
$i = 0;
|
||||
$table->head[$i] = "<span title='".__('Severity')."'>".__('S.').'</span>';
|
||||
$table->headstyle[$i] = 'width: 1%;text-align: center;';
|
||||
$table->style[$i++] = 'text-align: center;';
|
||||
|
||||
$table->head[$i] = __('Type');
|
||||
$table->head[$i] = '<span>'.__('Type').'</span>';
|
||||
$table->headstyle[$i] = 'width: 3%;text-align: center;';
|
||||
$table->style[$i++] = 'text-align: center;';
|
||||
|
||||
$table->head[$i] = __('Event name');
|
||||
$table->head[$i] = '<span>'.__('Event name').'</span>';
|
||||
$table->headstyle[$i] = '';
|
||||
$table->style[$i++] = 'word-break: break-word;';
|
||||
$table->style[$i++] = 'padding: 0 5px;word-break: break-word';
|
||||
|
||||
if ($agent_id == 0) {
|
||||
$table->head[$i] = __('Agent name');
|
||||
if ($agent_id === 0) {
|
||||
$table->head[$i] = '<span>'.__('Agent name').'</span>';
|
||||
$table->headstyle[$i] = '';
|
||||
$table->style[$i++] = 'word-break: break-all;';
|
||||
}
|
||||
|
||||
$table->head[$i] = __('Timestamp');
|
||||
$table->head[$i] = '<span>'.__('Timestamp').'</span>';
|
||||
$table->headstyle[$i] = 'width: 150px;';
|
||||
$table->style[$i++] = 'word-break: break-word;';
|
||||
$table->style[$i++] = 'padding: 0 5px;word-break: break-word;';
|
||||
|
||||
$table->head[$i] = __('Status');
|
||||
$table->head[$i] = '<span>'.__('Status').'</span>';
|
||||
$table->headstyle[$i] = 'width: 150px;text-align: center;';
|
||||
$table->style[$i++] = 'text-align: center;';
|
||||
$table->style[$i++] = 'padding: 0 5px;text-align: center;';
|
||||
|
||||
$table->head[$i] = "<span title='".__('Validated')."'>".__('V.').'</span>';
|
||||
$table->headstyle[$i] = 'width: 1%;text-align: center;';
|
||||
|
@ -2556,7 +2549,7 @@ function events_print_event_table(
|
|||
// Copy all groups of the agent and append the event group.
|
||||
$check_events = $all_groups;
|
||||
$check_events[] = $event['id_grupo'];
|
||||
if (! check_acl_one_of_groups($config['id_user'], $check_events, 'ER')) {
|
||||
if ((bool) check_acl_one_of_groups($config['id_user'], $check_events, 'ER') === false) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -2564,30 +2557,24 @@ function events_print_event_table(
|
|||
|
||||
// Colored box.
|
||||
switch ($event['estado']) {
|
||||
case 0:
|
||||
$img = 'images/star.png';
|
||||
case EVENT_STATUS_NEW:
|
||||
default:
|
||||
$img = 'images/star@svg.svg';
|
||||
$title = __('New event');
|
||||
break;
|
||||
|
||||
case 1:
|
||||
$img = 'images/tick.png';
|
||||
case EVENT_STATUS_VALIDATED:
|
||||
$img = 'images/validate.svg';
|
||||
$title = __('Event validated');
|
||||
break;
|
||||
|
||||
case 2:
|
||||
$img = 'images/hourglass.png';
|
||||
case EVENT_STATUS_INPROCESS:
|
||||
$img = 'images/clock.svg';
|
||||
$title = __('Event in process');
|
||||
break;
|
||||
|
||||
default:
|
||||
// Ignore.
|
||||
break;
|
||||
}
|
||||
|
||||
$i = 0;
|
||||
// Criticity.
|
||||
$data[$i++] = ui_print_event_priority($event['criticity'], true, true);
|
||||
|
||||
// Event type.
|
||||
$data[$i++] = events_print_type_img($event['event_type'], true);
|
||||
|
||||
|
@ -2596,14 +2583,19 @@ function events_print_event_table(
|
|||
strip_tags(io_safe_output($event['evento'])),
|
||||
75,
|
||||
true,
|
||||
'7.5'
|
||||
);
|
||||
|
||||
if ($agent_id == 0) {
|
||||
if ($agent_id === 0) {
|
||||
if ($event['id_agente'] > 0) {
|
||||
// Agent name.
|
||||
// Get class name, for the link color, etc.
|
||||
$data[$i] = "<a href='index.php?sec=estado&sec2=operation/agentes/ver_agente&id_agente=".$event['id_agente']."'>".agents_get_alias($event['id_agente']).'</A>';
|
||||
$data[$i] = html_print_anchor(
|
||||
[
|
||||
'href' => 'index.php?sec=estado&sec2=operation/agentes/ver_agente&id_agente='.$event['id_agente'],
|
||||
'content' => agents_get_alias($event['id_agente']),
|
||||
],
|
||||
true
|
||||
);
|
||||
// For System or SNMP generated alerts.
|
||||
} else if ($event['event_type'] === 'system') {
|
||||
$data[$i] = __('System');
|
||||
|
@ -2615,10 +2607,10 @@ function events_print_event_table(
|
|||
}
|
||||
|
||||
// Timestamp.
|
||||
$data[$i++] = ui_print_timestamp($event['timestamp'], true, ['style' => 'font-size: 7.5pt; letter-spacing: 0.3pt;']);
|
||||
$data[$i++] = ui_print_timestamp($event['timestamp'], true, ['style' => 'letter-spacing: 0.3pt;']);
|
||||
|
||||
// Status.
|
||||
$data[$i++] = ui_print_event_type($event['event_type'], true);
|
||||
$data[$i++] = ui_print_event_type($event['event_type'], true, true);
|
||||
|
||||
$data[$i++] = html_print_image(
|
||||
$img,
|
||||
|
@ -2634,7 +2626,7 @@ function events_print_event_table(
|
|||
$events_table = html_print_table($table, true);
|
||||
$out = $events_table;
|
||||
|
||||
if (!$tactical_view) {
|
||||
if ($tactical_view === false) {
|
||||
$out .= '<table width="100%"><tr><td class="w90p align-top pdd_t_0px">';
|
||||
if ($agent_id != 0) {
|
||||
$out .= '</td><td class="w200px align-top">';
|
||||
|
|
|
@ -11606,7 +11606,7 @@ function reporting_get_stats_indicators($data, $width=280, $height=20, $html=tru
|
|||
$table_ind->data[] = $tdata;
|
||||
|
||||
$tdata[0] = '<fieldset class="databox tactical_set">
|
||||
<legend>'.__('Module sanity').ui_print_help_tip(sprintf(__('%d Not inited monitors'), (int) $data['monitor_not_init']), true).'</legend>'.progress_bar($data['module_sanity'], $width, $height, $data['module_sanity'].'% '.__('of total modules inited'), 0).'</fieldset>';
|
||||
<legend>'.__('Module sanityX').ui_print_help_tip(sprintf(__('%d Not inited monitors'), (int) $data['monitor_not_init']), true).'</legend>'.progress_bar($data['module_sanity'], $width, $height, $data['module_sanity'].'% '.__('of total modules inited'), 0).'</fieldset>';
|
||||
$table_ind->rowclass[] = '';
|
||||
$table_ind->data[] = $tdata;
|
||||
|
||||
|
@ -11628,7 +11628,7 @@ function reporting_get_stats_indicators($data, $width=280, $height=20, $html=tru
|
|||
'graph' => progress_bar($data['monitor_health'], $width, $height, $data['monitor_health'].'% '.__('of monitors up'), 0),
|
||||
];
|
||||
$return['module_sanity'] = [
|
||||
'title' => __('Module sanity'),
|
||||
'title' => __('Module sanityY'),
|
||||
'graph' => progress_bar($data['module_sanity'], $width, $height, $data['module_sanity'].'% '.__('of total modules inited'), 0),
|
||||
];
|
||||
$return['alert_level'] = [
|
||||
|
|
|
@ -1152,15 +1152,60 @@ function ui_format_alert_row(
|
|||
|
||||
if (is_metaconsole() === false) {
|
||||
// Force alert execution.
|
||||
if (check_acl($config['id_user'], $id_group, 'AW') || check_acl($config['id_user'], $id_group, 'LM')) {
|
||||
if ($alert['force_execution'] == 0) {
|
||||
$data[$index['force_execution']] = '<a href="'.$url.'&id_alert='.$alert['id'].'&force_execution=1&refr=60">'.html_print_image('images/target.png', true, ['border' => '0', 'title' => __('Force'), 'class' => 'invert_filter']).'</a>';
|
||||
if ((bool) check_acl($config['id_user'], $id_group, 'AW') === true || (bool) check_acl($config['id_user'], $id_group, 'LM') === true) {
|
||||
if ((int) $alert['force_execution'] === 0) {
|
||||
$forceTitle = __('Force check');
|
||||
$additionUrl = '&force_execution=1';
|
||||
} else {
|
||||
$data[$index['force_execution']] = '<a href="'.$url.'&id_alert='.$alert['id'].'&refr=60">'.html_print_image('images/refresh.png', true, ['class' => 'invert_filter']).'</a>';
|
||||
$forceTitle = __('Refresh');
|
||||
$additionUrl = '';
|
||||
}
|
||||
|
||||
$forceExecButtons[] = html_print_button(
|
||||
$forceTitle,
|
||||
'force_execution_'.$alert['id'],
|
||||
false,
|
||||
'window.location.assign(\''.$url.'&id_alert='.$alert['id'].'&refr=60'.$additionUrl.'\');',
|
||||
[ 'mode' => 'link' ],
|
||||
true
|
||||
);
|
||||
}
|
||||
|
||||
$forceExecButtons[] = html_print_button(
|
||||
__('View'),
|
||||
'view_template_'.$alert['id'],
|
||||
false,
|
||||
'',
|
||||
[
|
||||
'mode' => 'link',
|
||||
'class' => 'template_details',
|
||||
'href' => 'ajax.php?page=godmode/alerts/alert_templates&get_template_tooltip=1&id_template='.$template['id'],
|
||||
],
|
||||
true
|
||||
);
|
||||
} else {
|
||||
$forceExecButtons[] = html_print_button(
|
||||
__('View'),
|
||||
'view_template_'.$alert['id'],
|
||||
false,
|
||||
'',
|
||||
[
|
||||
'mode' => 'link',
|
||||
'class' => 'template_details',
|
||||
'href' => ui_get_full_url('/', false, false, false).'/ajax.php?page=enterprise/meta/include/ajax/tree_view.ajax&action=get_template_tooltip&id_template='.$template['id'].'&server_name='.$alert['server_data']['server_name'],
|
||||
],
|
||||
true
|
||||
);
|
||||
}
|
||||
|
||||
$data[$index['force_execution']] = html_print_div(
|
||||
[
|
||||
'class' => 'table_action_buttons flex',
|
||||
'content' => implode('', $forceExecButtons),
|
||||
],
|
||||
true
|
||||
);
|
||||
|
||||
$data[$index['agent_name']] = $disabledHtmlStart;
|
||||
if ($agent == 0) {
|
||||
$data[$index['module_name']] .= ui_print_truncate_text(isset($alert['agent_module_name']) ? $alert['agent_module_name'] : modules_get_agentmodule_name($alert['id_agent_module']), 'module_small', false, true, true, '[…]', '');
|
||||
|
@ -1177,16 +1222,24 @@ function ui_format_alert_row(
|
|||
// Do not show link if user cannot access node
|
||||
if ((bool) can_user_access_node() === true) {
|
||||
$url = $server['server_url'].'/index.php?'.'sec=estado&'.'sec2=operation/agentes/ver_agente&'.'id_agente='.$agente['id_agente'];
|
||||
$data[$index['agent_name']] .= '<a href="'.$url.'">'.'<b><span class="bolder" title="'.$agente['nombre'].'">'.$agente['alias'].'</span></b></a>';
|
||||
$data[$index['agent_name']] .= html_print_anchor(
|
||||
[
|
||||
'href' => $url,
|
||||
'content' => '<span class="bolder" title="'.$agente['nombre'].'">'.$agente['alias'].'</span>',
|
||||
],
|
||||
true
|
||||
);
|
||||
} else {
|
||||
$data[$index['agent_name']] .= '<b><span class="bolder" title="'.$agente['nombre'].'">'.$agente['alias'].'</span></b>';
|
||||
$data[$index['agent_name']] .= '<span class="bolder" title="'.$agente['nombre'].'">'.$agente['alias'].'</span>';
|
||||
}
|
||||
} else {
|
||||
if ($agent_style !== false) {
|
||||
$data[$index['agent_name']] .= '<a href="index.php?sec=estado&sec2=operation/agentes/ver_agente&id_agente='.$id_agent.'"> <span class="bolder" title ="'.$agente['nombre'].'">'.$agente['alias'].'</span></a>';
|
||||
} else {
|
||||
$data[$index['agent_name']] .= '<a href="index.php?sec=estado&sec2=operation/agentes/ver_agente&id_agente='.$id_agent.'"> <span class="bolder" title ="'.$agente['nombre'].'">'.$agente['alias'].'</span></a>';
|
||||
}
|
||||
$data[$index['agent_name']] .= html_print_anchor(
|
||||
[
|
||||
'href' => 'index.php?sec=estado&sec2=operation/agentes/ver_agente&id_agente='.$id_agent,
|
||||
'content' => '<span class="bolder" title="'.$agente['nombre'].'">'.$agente['alias'].'</span>',
|
||||
],
|
||||
true
|
||||
);
|
||||
}
|
||||
|
||||
$data[$index['module_name']] = ui_print_truncate_text(isset($alert['agent_module_name']) ? $alert['agent_module_name'] : modules_get_agentmodule_name($alert['id_agent_module']), 'module_small', false, true, true, '[…]', '');
|
||||
|
@ -1196,14 +1249,6 @@ function ui_format_alert_row(
|
|||
|
||||
$data[$index['description']] = '';
|
||||
|
||||
if (is_metaconsole() === true) {
|
||||
$data[$index['template']] .= '<a class="template_details" href="'.ui_get_full_url('/', false, false, false).'/ajax.php?page=enterprise/meta/include/ajax/tree_view.ajax&action=get_template_tooltip&id_template='.$template['id'].'&server_name='.$alert['server_data']['server_name'].'">';
|
||||
} else {
|
||||
$data[$index['template']] .= '<a class="template_details" href="ajax.php?page=godmode/alerts/alert_templates&get_template_tooltip=1&id_template='.$template['id'].'">';
|
||||
}
|
||||
|
||||
$data[$index['template']] .= html_print_image('images/zoom.png', true, ['class' => 'invert_filter']);
|
||||
$data[$index['template']] .= '</a> ';
|
||||
$actionDefault = db_get_value_sql(
|
||||
'SELECT id_alert_action
|
||||
FROM talert_templates WHERE id = '.$alert['id_alert_template']
|
||||
|
@ -2782,14 +2827,10 @@ function ui_print_module_status(
|
|||
function get_shape_status_set($type)
|
||||
{
|
||||
switch ($type) {
|
||||
// Small rectangles.
|
||||
// Rounded rectangles.
|
||||
case STATUS_ALERT_NOT_FIRED:
|
||||
case STATUS_ALERT_FIRED:
|
||||
case STATUS_ALERT_DISABLED:
|
||||
$return = ['class' => 'status_small_rectangles'];
|
||||
break;
|
||||
|
||||
// Rounded rectangles.
|
||||
case STATUS_MODULE_OK:
|
||||
case STATUS_AGENT_OK:
|
||||
case STATUS_MODULE_NO_DATA:
|
||||
|
@ -3483,6 +3524,7 @@ function ui_print_datatable(array $parameters)
|
|||
}
|
||||
|
||||
foreach ($names as $column) {
|
||||
hd($column, true);
|
||||
if (is_array($column)) {
|
||||
$table .= '<th id="'.$column['id'].'" class="'.$column['class'].'" ';
|
||||
if (isset($column['title']) === true) {
|
||||
|
@ -3492,6 +3534,7 @@ function ui_print_datatable(array $parameters)
|
|||
$table .= ' style="'.$column['style'].'">'.__($column['text']);
|
||||
$table .= $column['extra'];
|
||||
$table .= '</th>';
|
||||
hd($table, true);
|
||||
} else {
|
||||
$table .= '<th>'.__($column).'</th>';
|
||||
}
|
||||
|
@ -3885,10 +3928,16 @@ function ui_print_event_type(
|
|||
break;
|
||||
}
|
||||
|
||||
if ($mini === false) {
|
||||
$output = '<div class="criticity" style="background: '.$color.'">';
|
||||
$output .= $text;
|
||||
$output .= '</div>';
|
||||
if ($mini === true) {
|
||||
$output = html_print_div(
|
||||
[
|
||||
'class' => 'status_rounded_rectangles',
|
||||
'style' => sprintf('display: inline-block; background: %s', $color),
|
||||
'content' => '',
|
||||
'title' => $text,
|
||||
],
|
||||
true
|
||||
);
|
||||
} else {
|
||||
$output = '<div data-title="';
|
||||
$output .= $text;
|
||||
|
@ -3898,7 +3947,11 @@ function ui_print_event_type(
|
|||
$output .= '</div>';
|
||||
}
|
||||
|
||||
return $output;
|
||||
if ($return === true) {
|
||||
return $output;
|
||||
} else {
|
||||
echo $output;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -3963,7 +4016,7 @@ function ui_print_event_priority(
|
|||
break;
|
||||
}
|
||||
|
||||
if ($mini === false) {
|
||||
if ($mini === true) {
|
||||
$output = '<div class="criticity" style="background: '.$color.'">';
|
||||
$output .= $criticity;
|
||||
$output .= '</div>';
|
||||
|
|
|
@ -19,7 +19,7 @@ div.agent_details_agent_caption {
|
|||
}
|
||||
|
||||
#div_all_events_24h {
|
||||
border-bottom: 1px solid #ebebeb;
|
||||
/*border-bottom: 1px solid #ebebeb;*/
|
||||
padding-bottom: 3em;
|
||||
}
|
||||
|
||||
|
|
|
@ -992,6 +992,7 @@ select:-internal-list-box {
|
|||
|
||||
.box-shadow {
|
||||
box-shadow: 0 3px 6px 0 rgb(0 0 0 / 13%);
|
||||
border: 1px solid #e2e2e2;
|
||||
}
|
||||
|
||||
.align-top td {
|
||||
|
@ -3661,6 +3662,28 @@ table#policy_modules td * {
|
|||
margin: 5px;
|
||||
}
|
||||
|
||||
.tactical_table {
|
||||
}
|
||||
|
||||
.tactical_table tr {
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.tactical_table > thead > tr {
|
||||
border: 0 !important;
|
||||
}
|
||||
|
||||
.info_table thead th .sort_arrow,
|
||||
.tactical_table thead th .sort_arrow {
|
||||
vertical-align: top;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.info_table thead th:hover .sort_arrow,
|
||||
.tactical_table thead th:hover .sort_arrow {
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
#sumary {
|
||||
color: #fff;
|
||||
margin: 2px;
|
||||
|
@ -5855,7 +5878,7 @@ div#bullets_modules div {
|
|||
}
|
||||
|
||||
/* First row in agent view */
|
||||
.agent_details_first_row {
|
||||
.agent_details_line {
|
||||
display: flex;
|
||||
margin: 20px 0 0;
|
||||
width: 100%;
|
||||
|
@ -5878,7 +5901,7 @@ div#bullets_modules div {
|
|||
}*/
|
||||
.agent_details_col {
|
||||
background-color: #fff;
|
||||
border: 1px solid #e2e2e2;
|
||||
/*border: 1px solid #e2e2e2;*/
|
||||
border-radius: 5px;
|
||||
flex: 1 1 50%;
|
||||
}
|
||||
|
@ -5895,6 +5918,11 @@ div#bullets_modules div {
|
|||
}
|
||||
*/
|
||||
|
||||
.agent_details_toggle {
|
||||
border-top-left-radius: 0;
|
||||
border-top-right-radius: 0;
|
||||
}
|
||||
|
||||
.agent_access_rate_events {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
|
@ -6110,7 +6138,7 @@ div#status_pie {
|
|||
height: 100%;
|
||||
background-color: #fff;
|
||||
box-sizing: border-box;
|
||||
border: 1px solid #e2e2e2;
|
||||
/*border: 1px solid #e2e2e2;*/
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
|
@ -6169,8 +6197,10 @@ div#status_pie {
|
|||
|
||||
.white-box-content form {
|
||||
width: 100%;
|
||||
padding: 0 10px;
|
||||
/*
|
||||
margin-bottom: 2em;
|
||||
padding: 2em;
|
||||
padding: 2em;*/
|
||||
min-width: fit-content;
|
||||
}
|
||||
|
||||
|
@ -10549,6 +10579,7 @@ tr.bring_next_field {
|
|||
|
||||
.dataTables_wrapper {
|
||||
overflow: auto;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.dataTables_wrapper .dataTables_processing {
|
||||
|
|
|
@ -103,12 +103,24 @@
|
|||
background-color: #f6f7fb;
|
||||
}
|
||||
|
||||
/*.info_table tr > td,
|
||||
.info_table tr > th,
|
||||
.filter_table tr > td,
|
||||
.filter_table tr > th {
|
||||
border-bottom: 1px solid #C0CCDC;
|
||||
}*/
|
||||
.info_table > tbody > tr > th,
|
||||
.info_table > thead > tr > th {
|
||||
border-top: 1px solid #c0ccdc;
|
||||
}
|
||||
|
||||
.info_table tr > td:first-child,
|
||||
.info_table tr > th:first-child,
|
||||
.filter_table tr > td:first-child,
|
||||
.filter_table tr > th:first-child {
|
||||
/*padding-left: 5px;*/
|
||||
padding-left: 10px;
|
||||
border-left: 1px solid #c0ccdc;
|
||||
}
|
||||
.info_table tr > td:last-child,
|
||||
.info_table tr > th:last-child,
|
||||
|
@ -116,6 +128,7 @@
|
|||
.filter_table tr > th:last-child {
|
||||
/*padding-right: 5px;*/
|
||||
padding-right: 10px;
|
||||
border-right: 1px solid #c0ccdc;
|
||||
}
|
||||
|
||||
.info_table tr:first-child > th {
|
||||
|
@ -134,32 +147,41 @@
|
|||
}
|
||||
|
||||
.info_table tr th {
|
||||
border-bottom: 1px solid #e2e2e2;
|
||||
/*border-bottom: 1px solid #e2e2e2;*/
|
||||
}
|
||||
|
||||
.info_table > thead > tr {
|
||||
height: 3em;
|
||||
vertical-align: top;
|
||||
border: 1px solid #c0ccdc;
|
||||
border-top-left-radius: 8px;
|
||||
border-top-right-radius: 8px;
|
||||
}
|
||||
|
||||
.info_table > thead > tr * {
|
||||
font-size: 10pt;
|
||||
font-family: "Pandora-Regular";
|
||||
}
|
||||
|
||||
/* Radius top */
|
||||
.info_table > thead > tr:first-child > th:first-child {
|
||||
border-top-left-radius: 4px;
|
||||
/*border-top-left-radius: 4px;*/
|
||||
}
|
||||
.info_table > thead > tr:first-child > th:last-child {
|
||||
border-top-right-radius: 4px;
|
||||
/*border-top-right-radius: 4px;*/
|
||||
}
|
||||
|
||||
/* Radius bottom */
|
||||
.info_table > tbody > tr:last-child > td:first-child {
|
||||
border-top-left-radius: 4px;
|
||||
.info_table > tbody > tr:last-child {
|
||||
/*border-top-left-radius: 4px;*/
|
||||
/*border-bottom-left-radius: 4px;*/
|
||||
}
|
||||
.info_table > tbody > tr:last-child > td:last-child {
|
||||
border-top-right-radius: 4px;
|
||||
/*border-top-right-radius: 4px;*/
|
||||
}
|
||||
|
||||
.info_table > tbody > tr > th,
|
||||
.info_table > thead > tr > th,
|
||||
/*.info_table > tbody > tr > th,
|
||||
.info_table > thead > tr > th,*/
|
||||
.info_table > thead > tr > th a,
|
||||
.info_table > thead > tr > th > span {
|
||||
padding: 0.1em;
|
||||
|
@ -170,13 +192,19 @@
|
|||
|
||||
.info_table > tbody > tr {
|
||||
/*border-bottom: 1px solid #e2e2e2;*/
|
||||
border-top: 0;
|
||||
border-bottom: 1px solid #c0ccdc;
|
||||
border-left: 1px solid #c0ccdc;
|
||||
border-right: 1px solid #c0ccdc;
|
||||
}
|
||||
|
||||
.info_table > tbody > tr > th,
|
||||
.info_table > thead > tr > th,
|
||||
.info_table > tbody > tr > td {
|
||||
-moz-border-radius: 0px;
|
||||
-webkit-border-radius: 0px;
|
||||
border-radius: 0px;
|
||||
border: none;
|
||||
/*border: none;*/
|
||||
border-bottom: 1px solid #c0ccdc;
|
||||
padding: 7px 3px;
|
||||
/*
|
||||
padding-left: 0px;
|
||||
|
@ -289,6 +317,12 @@ table.dataTable.info_table.no-footer {
|
|||
border-bottom: none;
|
||||
}
|
||||
|
||||
table.dataTable thead th,
|
||||
table.dataTable tfoot th {
|
||||
font-size: 11pt;
|
||||
font-weight: inherit !important;
|
||||
}
|
||||
|
||||
/* Datatables pagination */
|
||||
.dataTables_paginate.paging_simple_numbers {
|
||||
margin: 2em 0;
|
||||
|
|
Before Width: | Height: | Size: 137 KiB |
|
@ -1,853 +0,0 @@
|
|||
#visual-console-container {
|
||||
margin: 0px auto;
|
||||
position: relative;
|
||||
background-repeat: no-repeat;
|
||||
background-size: 100% 100%;
|
||||
background-position: center;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
.is-maintenance {
|
||||
background-image: url(maintenanceMode.png) !important;
|
||||
}
|
||||
|
||||
.is-maintenance :nth-child(1) {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.visual-console-item {
|
||||
position: absolute;
|
||||
display: flex;
|
||||
flex-direction: initial;
|
||||
justify-items: center;
|
||||
align-items: center;
|
||||
user-select: text;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.visual-console-item.is-on-top {
|
||||
z-index: 2;
|
||||
}
|
||||
|
||||
.visual-console-item * {
|
||||
overflow: visible;
|
||||
font-family: inherit;
|
||||
}
|
||||
|
||||
.visual-console-item.is-editing {
|
||||
border: 2px dashed #b2b2b2;
|
||||
transform: translateX(-2px) translateY(-2px);
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
.visual-console-item.is-editing:hover {
|
||||
border-color: #82b92e;
|
||||
}
|
||||
|
||||
.visual-console-item.is-editing.is-selected {
|
||||
border: 2px dashed #2b2b2b;
|
||||
cursor: move;
|
||||
z-index: 10;
|
||||
}
|
||||
.visual-console-item.is-editing > .resize-draggable {
|
||||
float: right;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
width: 15px;
|
||||
height: 15px;
|
||||
background: url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIAoJeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiAKCXhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjE1cHgiIGhlaWdodD0iMTVweCIgdmlld0JveD0iMCAwIDE1IDE1IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxNSAxNSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+Cgk8bGluZSBmaWxsPSJub25lIiBzdHJva2U9IiNCMkIyQjIiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHgxPSIwLjU2MiIgeTE9IjM2LjMxNyIgeDI9IjE0LjIzMSIgeTI9IjIyLjY0OCIvPgoJPGxpbmUgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjQjJCMkIyIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiB4MT0iNC45NzEiIHkxPSIzNi41OTUiIHgyPSIxNC40MDkiIHkyPSIyNy4xNTUiLz4KCTxsaW5lIGZpbGw9Im5vbmUiIHN0cm9rZT0iI0IyQjJCMiIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgeDE9IjEwLjAxNyIgeTE9IjM2LjQzMyIgeDI9IjE0LjIzMSIgeTI9IjMyLjIxOCIvPgoJPGcgaWQ9ImpHRWVLbl8xXyI+CgoJCTxpbWFnZSBvdmVyZmxvdz0idmlzaWJsZSIgd2lkdGg9IjQ2IiBoZWlnaHQ9IjM3IiBpZD0iakdFZUtuIiB4bGluazpocmVmPSJkYXRhOmltYWdlL2pwZWc7YmFzZTY0LC85ai80QUFRU2taSlJnQUJBZ0VBU0FCSUFBRC83QUFSUkhWamEza0FBUUFFQUFBQUhnQUEvKzRBSVVGa2IySmxBR1RBQUFBQUFRTUEKRUFNQ0F3WUFBQUdSQUFBQnN3QUFBZ0wvMndDRUFCQUxDd3NNQ3hBTURCQVhEdzBQRnhzVUVCQVVHeDhYRnhjWEZ4OGVGeG9hR2hvWApIaDRqSlNjbEl4NHZMek16THk5QVFFQkFRRUJBUUVCQVFFQkFRRUFCRVE4UEVSTVJGUklTRlJRUkZCRVVHaFFXRmhRYUpob2FIQm9hCkpqQWpIaDRlSGlNd0t5NG5KeWN1S3pVMU1EQTFOVUJBUDBCQVFFQkFRRUJBUUVCQVFQL0NBQkVJQUNZQUx3TUJJZ0FDRVFFREVRSC8KeEFCNUFBRUJBUUVCQUFBQUFBQUFBQUFBQUFBQUFRUUNCZ0VCQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQVFRREFBQUFBQUFBQUFBQQpBQUFBQVFBeEFnTVFNQklSQUFFQkJnVUZBUUFBQUFBQUFBQUFBQUVDQUJFaFFXRURFQ0J4a1JJd01ZRXlFd1FTQVFBQUFBQUFBQUFBCkFBQUFBQUFBQURELzJnQU1Bd0VBQWhFREVRQUFBUGZBUzV6VFpUa0dQclVMWlFBQUQvL2FBQWdCQWdBQkJRRFQvOW9BQ0FFREFBRUYKQU5QLzJnQUlBUUVBQVFVQXpKZzJTUUJDMmQwdzJiWlN2Vk5jNW9NdUF1UXVBdVJwLzlvQUNBRUNBZ1kvQUIvLzJnQUlBUU1DQmo4QQpILy9hQUFnQkFRRUdQd0RFNlpYbUFZcXR3c0pCSEk5MUdsTXFudlQrZTM3UUwxa1MwYjdYQndBRHJWb1FDUlhHZTVhZTVhZTVhZms5CkgvL1oiIHRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIDEgLTQ2Ljg3NSAtOS44OTA2KSI+CgkJPC9pbWFnZT4KCTwvZz4KCTxsaW5lIGZpbGw9Im5vbmUiIHN0cm9rZT0iI0IyQjJCMiIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgeDE9IjEzLjQ4MyIgeTE9IjAuNjQ0IiB4Mj0iMC44MjgiIHkyPSIxMy4zMDEiLz4KCTxsaW5lIGZpbGw9Im5vbmUiIHN0cm9rZT0iI0IyQjJCMiIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgeDE9IjEzLjczNCIgeTE9IjUuMTQxIiB4Mj0iNS4zMjUiIHkyPSIxMy41NDkiLz4KCTxsaW5lIGZpbGw9Im5vbmUiIHN0cm9rZT0iI0IyQjJCMiIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgeDE9IjE0LjIzMSIgeTE9IjkuMzg4IiB4Mj0iOS44MDYiIHkyPSIxMy44MTMiLz4KPC9zdmc+Cg==);
|
||||
cursor: se-resize;
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
.visual-console-item.is-editing :first-child {
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
@keyframes spinner-loading {
|
||||
0% {
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
to {
|
||||
transform: rotate(1turn);
|
||||
}
|
||||
}
|
||||
|
||||
.visual-console-spinner {
|
||||
background-color: transparent;
|
||||
margin: 0px auto;
|
||||
border-top: 5px solid rgb(82, 85, 87);
|
||||
border-right: 5px solid rgb(82, 85, 87);
|
||||
border-bottom: 5px solid rgb(82, 85, 87);
|
||||
border-left: 5px solid rgba(82, 85, 87, 0.2);
|
||||
|
||||
animation-name: spinner-loading;
|
||||
animation-duration: 0.8s;
|
||||
animation-iteration-count: infinite;
|
||||
animation-timing-function: linear;
|
||||
}
|
||||
|
||||
.visual-console-spinner,
|
||||
.visual-console-spinner :after {
|
||||
display: block;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
.visual-console-spinner.small,
|
||||
.visual-console-spinner.small :after {
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
}
|
||||
|
||||
.div-visual-console-spinner {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
opacity: 0.7;
|
||||
background: rgb(212, 215, 218);
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
.show-elements {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.hide-elements {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/*Forms*/
|
||||
.div-input-group label {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: wrap;
|
||||
align-items: center;
|
||||
font-size: 12pt;
|
||||
font-weight: 600;
|
||||
color: #343434;
|
||||
margin-right: 10px;
|
||||
}
|
||||
.div-input-group label img {
|
||||
margin-left: 4px;
|
||||
}
|
||||
|
||||
.div-input-group input[type="text"],
|
||||
.div-input-group input[type="number"] {
|
||||
height: 25px;
|
||||
font-size: 10pt;
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
border-bottom: 1px solid #ccc;
|
||||
font-weight: lighter;
|
||||
padding: 0px 0px 2px 0px;
|
||||
box-sizing: border-box;
|
||||
margin-right: 10px;
|
||||
padding-left: 2px;
|
||||
}
|
||||
|
||||
.div-input-group input[type="radio"] {
|
||||
margin-right: 10px;
|
||||
width: 17px;
|
||||
height: 17px;
|
||||
}
|
||||
|
||||
.div-input-group select {
|
||||
font-weight: lighter;
|
||||
font-size: 10pt;
|
||||
}
|
||||
|
||||
.input-groups {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.input-group {
|
||||
width: 100%;
|
||||
margin-bottom: 25px;
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
.div-ranges-input-group {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex-wrap: wrap;
|
||||
align-items: flex-start;
|
||||
}
|
||||
|
||||
.div-ranges-input-group > div {
|
||||
padding-left: 20px;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.div-input-group,
|
||||
.div-input-group div div {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: wrap;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.div-input-group h3 {
|
||||
text-transform: initial;
|
||||
text-align: center;
|
||||
font-style: italic;
|
||||
text-decoration: underline;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.div-input-group div div a {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.div-input-group-autocomplete-agent {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex-wrap: wrap;
|
||||
align-items: flex-start;
|
||||
justify-content: space-between;
|
||||
height: 70px;
|
||||
}
|
||||
|
||||
.div-input-group-inside {
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
.input-group-link-console {
|
||||
height: 70px;
|
||||
}
|
||||
|
||||
.show-elements > div.div-input-group-autocomplete-agent {
|
||||
margin-left: 20px;
|
||||
}
|
||||
|
||||
.img-vc-elements {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
input.error-input-validate[type="number"],
|
||||
input.error-input-validate[type="text"],
|
||||
select.error-input-validate {
|
||||
border: 1px solid #c00;
|
||||
}
|
||||
|
||||
select.error-input-validate:focus {
|
||||
outline-color: #c00;
|
||||
}
|
||||
|
||||
p.error-p-validate {
|
||||
width: 100%;
|
||||
color: #c00;
|
||||
}
|
||||
|
||||
/* Styles for the solid icons */
|
||||
|
||||
.fa {
|
||||
display: inline-block;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.fa,
|
||||
.fa > svg,
|
||||
.fa.medium,
|
||||
.fa.medium > svg {
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
}
|
||||
|
||||
.fa.fa-small,
|
||||
.fa.fa-small > svg {
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
}
|
||||
|
||||
.fa.fa-large,
|
||||
.fa.fa-large > svg {
|
||||
width: 44px;
|
||||
height: 44px;
|
||||
}
|
||||
|
||||
.fa-spin {
|
||||
animation: fa-spin 2s infinite linear;
|
||||
}
|
||||
|
||||
.fa-pulse {
|
||||
animation: fa-spin 1s infinite steps(8);
|
||||
}
|
||||
|
||||
@keyframes fa-spin {
|
||||
0% {
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
100% {
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
.autocomplete {
|
||||
/*the container must be positioned relative:*/
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
}
|
||||
.autocomplete input {
|
||||
/*background: pink;*/
|
||||
}
|
||||
.autocomplete-items {
|
||||
border: 1px solid #d4d4d4;
|
||||
border-bottom: none;
|
||||
border-top: none;
|
||||
/*position the autocomplete items to be the same width as the container:*/
|
||||
position: absolute;
|
||||
z-index: 1;
|
||||
overflow: auto;
|
||||
max-height: 150px;
|
||||
max-width: 250px;
|
||||
}
|
||||
.autocomplete-items div {
|
||||
width: 100%;
|
||||
padding: 10px;
|
||||
cursor: pointer;
|
||||
background-color: #fff;
|
||||
border-bottom: 1px solid #d4d4d4;
|
||||
border-top: 1px solid #d4d4d4;
|
||||
}
|
||||
.autocomplete-items div:hover {
|
||||
width: 100%;
|
||||
background-color: #e9e9e9;
|
||||
}
|
||||
.autocomplete-active {
|
||||
/*when navigating through the items using the arrow keys:*/
|
||||
background-color: DodgerBlue !important;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
/* Digital clock */
|
||||
|
||||
.visual-console-item .digital-clock {
|
||||
display: -webkit-box;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
justify-items: center;
|
||||
align-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.visual-console-item .digital-clock > span {
|
||||
/* To improve legibility */
|
||||
text-rendering: optimizeLegibility;
|
||||
text-shadow: rgba(0, 0, 0, 0.01) 0 0 1px;
|
||||
}
|
||||
|
||||
.visual-console-item .digital-clock > span.time {
|
||||
font-size: 50px;
|
||||
}
|
||||
|
||||
.visual-console-item .digital-clock > span.date {
|
||||
font-size: 25px;
|
||||
}
|
||||
|
||||
.visual-console-item .digital-clock > span.timezone {
|
||||
font-size: 25px;
|
||||
}
|
||||
|
||||
/* Analog clock */
|
||||
|
||||
.visual-console-item .analogic-clock {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.visual-console-item .analogic-clock .hour-hand {
|
||||
animation: rotate-hour 43200s infinite linear;
|
||||
}
|
||||
|
||||
.visual-console-item .analogic-clock .minute-hand {
|
||||
animation: rotate-minute 3600s infinite linear;
|
||||
}
|
||||
|
||||
.visual-console-item .analogic-clock .second-hand {
|
||||
animation: rotate-second 60s infinite linear;
|
||||
}
|
||||
|
||||
#html-tabs .ui-widget-header {
|
||||
background-color: #ffffff;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
#html-tabs .ui-tabs-anchor {
|
||||
float: none;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
#html-tabs .ui-tabs-anchor img {
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
#html-tabs .ui-tabs-nav li {
|
||||
border-radius: 5px 5px 0px 0px;
|
||||
}
|
||||
|
||||
li.interval-color-ranges > label,
|
||||
li#li-default-ranges > label {
|
||||
margin-right: 15px;
|
||||
}
|
||||
|
||||
li.interval-color-ranges > input[type="number"],
|
||||
li#li-default-ranges > input[type="number"] {
|
||||
width: 80px;
|
||||
}
|
||||
|
||||
li.interval-color-ranges > label:not(:first-child),
|
||||
li#li-default-ranges > label:not(:first-child),
|
||||
li#li-size-item > label:not(:first-child),
|
||||
li#li-position-item > label:not(:first-child) {
|
||||
width: initial;
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
li#li-image-item label {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
li#li-image-item label img {
|
||||
flex: initial;
|
||||
}
|
||||
|
||||
.discovery.modal * {
|
||||
font-weight: normal;
|
||||
color: #343434;
|
||||
}
|
||||
|
||||
.discovery.modal select {
|
||||
width: 100px;
|
||||
}
|
||||
|
||||
.discovery.modal div#period_manual select,
|
||||
.discovery.modal div#period_manual input,
|
||||
.discovery.modal div#period_default select,
|
||||
.discovery.modal div#cacheExpiration_manual select,
|
||||
.discovery.modal div#cacheExpiration_manual input,
|
||||
.discovery.modal div#cacheExpiration_default select {
|
||||
font-size: inherit !important;
|
||||
}
|
||||
.discovery.modal div#period_default select#period_select,
|
||||
.discovery.modal div#cacheExpiration_default select#cacheExpiration_select {
|
||||
max-width: 230px;
|
||||
width: inherit;
|
||||
}
|
||||
|
||||
li#li-timeZone-item > label:not(:first-child),
|
||||
.discovery.modal li#div-textarea-label > label {
|
||||
flex: inherit;
|
||||
}
|
||||
|
||||
li#li-timeZone-item > select:not(:first-child) {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.discovery.modal li#div-textarea-label table tbody td.mceIframeContainer {
|
||||
background-color: #ededed;
|
||||
}
|
||||
|
||||
/*style item group show statistic*/
|
||||
.group-container {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
.group-container .group-item-title {
|
||||
width: 100%;
|
||||
height: 30%;
|
||||
background-color: #9d9ea0;
|
||||
color: black;
|
||||
font-weight: bold;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
.group-container .group-item-info {
|
||||
width: 100%;
|
||||
height: 70%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: wrap;
|
||||
padding: 2%;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.group-container .group-item-info .group-item-info-container {
|
||||
flex: 1 1 20%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
border-radius: 2px;
|
||||
max-height: 50px;
|
||||
min-height: 35px;
|
||||
margin: 1%;
|
||||
}
|
||||
|
||||
.group-container .group-item-info .group-item-info-container .value-style {
|
||||
flex: 1;
|
||||
color: #fff;
|
||||
font-size: 100%;
|
||||
padding: 0%;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.group-container .group-item-info .group-item-info-container .name-style {
|
||||
flex: 1;
|
||||
background-color: white;
|
||||
color: black;
|
||||
font-size: 100%;
|
||||
padding: 0%;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
div.label,
|
||||
div.simple-value {
|
||||
min-width: fit-content;
|
||||
min-height: fit-content;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
div.simple-value > div {
|
||||
max-height: -webkit-fill-available;
|
||||
}
|
||||
|
||||
div.module-graph .parent_graph p table tr {
|
||||
height: 25px;
|
||||
}
|
||||
|
||||
div.module-graph {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: wrap;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
div.basic-chart {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: wrap;
|
||||
align-items: flex-end;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.basic-chart-header {
|
||||
height: 40%;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.basic-chart-header-name {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
height: 100%;
|
||||
width: 80%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 2.5vmin;
|
||||
margin-left: 3%;
|
||||
}
|
||||
|
||||
.basic-chart-header-value {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
height: 100%;
|
||||
width: 20%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-size: 2.5vmin;
|
||||
}
|
||||
|
||||
div.module-graph .gauge_d3_class {
|
||||
flex: 1 1 100px;
|
||||
float: none !important;
|
||||
overflow: inherit !important;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.textDecorationNone:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.vc-item-nl-label {
|
||||
border-radius: 5px;
|
||||
background-color: #fff;
|
||||
padding: 5px;
|
||||
padding-left: 1em;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.odometer {
|
||||
overflow: hidden !important;
|
||||
}
|
||||
|
||||
.odometer-container {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
overflow: hidden;
|
||||
text-align: center;
|
||||
display: flex;
|
||||
align-items: flex-end;
|
||||
}
|
||||
|
||||
.odometer-a {
|
||||
z-index: 5;
|
||||
position: absolute;
|
||||
width: 65%;
|
||||
height: 65%;
|
||||
left: calc(17.5%);
|
||||
border-radius: 1000px 1000px 0px 0px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
flex-direction: column;
|
||||
line-height: 0px;
|
||||
}
|
||||
|
||||
.odometer-b {
|
||||
z-index: 4;
|
||||
position: relative;
|
||||
width: 95%;
|
||||
height: 95%;
|
||||
border-radius: 0px 0px 1000px 1000px;
|
||||
transform-origin: center top;
|
||||
transition: all 1.3s ease-in-out;
|
||||
top: calc(95%);
|
||||
left: calc(2.5%);
|
||||
}
|
||||
|
||||
.odometer-c {
|
||||
z-index: 3;
|
||||
position: absolute;
|
||||
width: 96%;
|
||||
height: 96%;
|
||||
left: calc(2%);
|
||||
background-color: #202226;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
border-radius: 1000px 1000px 0px 0px;
|
||||
transform-origin: center top;
|
||||
transition: all 1.3s ease-in-out;
|
||||
}
|
||||
|
||||
.odometer-d {
|
||||
z-index: 0;
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #82b92e;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
border-radius: 1000px 1000px 0px 0px;
|
||||
transform-origin: center top;
|
||||
transition: all 1.3s ease-in-out;
|
||||
}
|
||||
|
||||
.gauge-data {
|
||||
z-index: 4;
|
||||
color: #fff;
|
||||
font-size: 1.5em;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
transition: all 1s ease-out;
|
||||
position: absolute;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: flex-end;
|
||||
}
|
||||
|
||||
.svg_warning {
|
||||
fill: #f3b200;
|
||||
}
|
||||
|
||||
.svg_warning_hide {
|
||||
fill: #fff !important;
|
||||
}
|
||||
|
||||
.gauge-data #percent {
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.orange_background {
|
||||
background: #ffa631;
|
||||
}
|
||||
.red_background {
|
||||
background: #e63c52;
|
||||
}
|
||||
.yellow_background {
|
||||
background: #f3b200;
|
||||
}
|
||||
.grey_background {
|
||||
background: #b2b2b2;
|
||||
}
|
||||
.blue_background {
|
||||
background: #4a83f3;
|
||||
}
|
||||
.green_background {
|
||||
background: #82b92e;
|
||||
}
|
||||
|
||||
/* Styles for the solid icons */
|
||||
|
||||
.fa {
|
||||
display: inline-block;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.fa,
|
||||
.fa > svg,
|
||||
.fa.medium,
|
||||
.fa.medium > svg {
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
}
|
||||
|
||||
.fa.fa-small,
|
||||
.fa.fa-small > svg {
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
}
|
||||
|
||||
.fa.fa-large,
|
||||
.fa.fa-large > svg {
|
||||
width: 44px;
|
||||
height: 44px;
|
||||
}
|
||||
|
||||
.fa-spin {
|
||||
animation: fa-spin 2s infinite linear;
|
||||
}
|
||||
|
||||
.fa-pulse {
|
||||
animation: fa-spin 1s infinite steps(8);
|
||||
}
|
||||
|
||||
@keyframes fa-spin {
|
||||
0% {
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
100% {
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
.autocomplete {
|
||||
/*the container must be positioned relative:*/
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
}
|
||||
.autocomplete input {
|
||||
/*background: pink;*/
|
||||
}
|
||||
.autocomplete-items {
|
||||
border: 1px solid #d4d4d4;
|
||||
border-bottom: none;
|
||||
border-top: none;
|
||||
/*position the autocomplete items to be the same width as the container:*/
|
||||
position: absolute;
|
||||
z-index: 1;
|
||||
overflow: auto;
|
||||
max-height: 150px;
|
||||
max-width: 250px;
|
||||
}
|
||||
.autocomplete-items div {
|
||||
width: 100%;
|
||||
padding: 10px;
|
||||
cursor: pointer;
|
||||
background-color: #fff;
|
||||
border-bottom: 1px solid #d4d4d4;
|
||||
border-top: 1px solid #d4d4d4;
|
||||
}
|
||||
.autocomplete-items div:hover {
|
||||
width: 100%;
|
||||
background-color: #e9e9e9;
|
||||
}
|
||||
.autocomplete-active {
|
||||
/*when navigating through the items using the arrow keys:*/
|
||||
background-color: DodgerBlue !important;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
/* Digital clock */
|
||||
|
||||
.visual-console-item .digital-clock {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-evenly;
|
||||
justify-items: center;
|
||||
align-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.visual-console-item .digital-clock > span {
|
||||
/* To improve legibility */
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
text-rendering: optimizeLegibility;
|
||||
text-shadow: rgba(0, 0, 0, 0.01) 0 0 1px;
|
||||
}
|
||||
|
||||
.visual-console-item .digital-clock > span.time {
|
||||
font-size: 50px;
|
||||
}
|
||||
|
||||
.visual-console-item .digital-clock > span.date {
|
||||
font-size: 25px;
|
||||
}
|
||||
|
||||
.visual-console-item .digital-clock > span.timezone {
|
||||
font-size: 25px;
|
||||
}
|
||||
|
||||
/* Analog clock */
|
||||
|
||||
.visual-console-item .analogic-clock {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.visual-console-item .analogic-clock .hour-hand {
|
||||
animation: rotate-hour 43200s infinite linear;
|
||||
}
|
||||
|
||||
.visual-console-item .analogic-clock .minute-hand {
|
||||
animation: rotate-minute 3600s infinite linear;
|
||||
}
|
||||
|
||||
.visual-console-item .analogic-clock .second-hand {
|
||||
animation: rotate-second 60s infinite linear;
|
||||
}
|
||||
|
||||
|
||||
/*# sourceMappingURL=vc.main.css.map*/
|
|
@ -233,8 +233,9 @@ if ($free_search != '') {
|
|||
|
||||
$column_names = [
|
||||
[
|
||||
'title' => 'Standby',
|
||||
'text' => 'S.',
|
||||
'title' => __('Standby'),
|
||||
'text' => __('Standby'),
|
||||
'style' => 'max-width: 5%;',
|
||||
],
|
||||
];
|
||||
|
||||
|
@ -242,8 +243,9 @@ if ($free_search != '') {
|
|||
array_unshift(
|
||||
$column_names,
|
||||
[
|
||||
'title' => 'Policy',
|
||||
'text' => 'P.',
|
||||
'title' => __('Policy'),
|
||||
'text' => __('Policy'),
|
||||
'style' => 'max-width: 5%;vertical-align: baseline;',
|
||||
]
|
||||
);
|
||||
|
||||
|
@ -253,39 +255,6 @@ if ($free_search != '') {
|
|||
);
|
||||
}
|
||||
|
||||
if (is_metaconsole() === false) {
|
||||
if (check_acl($config['id_user'], $id_group, 'LW') || check_acl($config['id_user'], $id_group, 'LM')) {
|
||||
array_unshift(
|
||||
$column_names,
|
||||
[
|
||||
'title' => 'Validate',
|
||||
'text' => html_print_checkbox('all_validate', 0, false, true, false),
|
||||
'class' => 'dt-left',
|
||||
]
|
||||
);
|
||||
|
||||
$columns = array_merge(
|
||||
['validate'],
|
||||
$columns
|
||||
);
|
||||
}
|
||||
|
||||
if (check_acl($config['id_user'], $id_group, 'AW') || check_acl($config['id_user'], $id_group, 'LM')) {
|
||||
array_push(
|
||||
$column_names,
|
||||
[
|
||||
'title' => 'Force execution',
|
||||
'text' => 'F.',
|
||||
]
|
||||
);
|
||||
|
||||
$columns = array_merge(
|
||||
$columns,
|
||||
['force']
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
if ($print_agent === true) {
|
||||
array_push(
|
||||
$column_names,
|
||||
|
@ -300,23 +269,71 @@ if ($free_search != '') {
|
|||
|
||||
array_push(
|
||||
$column_names,
|
||||
['text' => 'Module'],
|
||||
['text' => 'Template'],
|
||||
['text' => 'Action'],
|
||||
['text' => 'Last fired'],
|
||||
['text' => 'Status']
|
||||
[
|
||||
'text' => 'Module',
|
||||
'style' => 'min-width: 15%;vertical-align: baseline;',
|
||||
],
|
||||
[
|
||||
'text' => 'Template',
|
||||
'style' => 'min-width: 10%;vertical-align: baseline;',
|
||||
],
|
||||
[
|
||||
'text' => 'Operation',
|
||||
'style' => 'min-width: 15%;vertical-align: baseline;',
|
||||
],
|
||||
[
|
||||
'text' => 'Last fired',
|
||||
'style' => 'min-width: 15%;',
|
||||
],
|
||||
[
|
||||
'text' => 'Status',
|
||||
'style' => 'width: 5%;',
|
||||
]
|
||||
);
|
||||
|
||||
$columns = array_merge(
|
||||
$columns,
|
||||
['agent_module_name'],
|
||||
['template_name'],
|
||||
['action'],
|
||||
['operation'],
|
||||
['last_fired'],
|
||||
['status']
|
||||
);
|
||||
|
||||
if (is_metaconsole() === false) {
|
||||
if ((bool) check_acl($config['id_user'], $id_group, 'LW') === true || (bool) check_acl($config['id_user'], $id_group, 'LM') === true) {
|
||||
array_unshift(
|
||||
$column_names,
|
||||
[
|
||||
'title' => __('Validate'),
|
||||
'text' => html_print_checkbox('all_validate', 0, false, true, false),
|
||||
'class' => 'dt-left',
|
||||
'style' => 'max-width: 5%;',
|
||||
]
|
||||
);
|
||||
|
||||
$columns = array_merge(
|
||||
['validate'],
|
||||
$columns
|
||||
);
|
||||
}
|
||||
|
||||
if ((bool) check_acl($config['id_user'], $id_group, 'AW') === true || (bool) check_acl($config['id_user'], $id_group, 'LM') === true) {
|
||||
array_push(
|
||||
$column_names,
|
||||
[
|
||||
'title' => __('Actions'),
|
||||
'text' => __('Actions'),
|
||||
'style' => 'min-width: 15%;',
|
||||
]
|
||||
);
|
||||
|
||||
$columns = array_merge(
|
||||
$columns,
|
||||
['actions']
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
if (is_metaconsole() === true) {
|
||||
$no_sortable_columns = [
|
||||
|
@ -426,18 +443,34 @@ if ($free_search != '') {
|
|||
}
|
||||
|
||||
if ((is_metaconsole() === false) && ((bool) check_acl($config['id_user'], $id_group, 'AW') === true || (bool) check_acl($config['id_user'], $id_group, 'LM') === true)) {
|
||||
html_print_div(
|
||||
[
|
||||
'class' => 'action-buttons',
|
||||
'content' => html_print_submit_button(
|
||||
if ($agent_view_page === true) {
|
||||
html_print_div(
|
||||
[
|
||||
'class' => 'action-buttons pdd_b_10px pdd_r_5px w100p',
|
||||
'content' => html_print_submit_button(
|
||||
__('Validate'),
|
||||
'alert_validate',
|
||||
false,
|
||||
[
|
||||
'icon' => 'wand',
|
||||
'mode' => 'mini',
|
||||
],
|
||||
true
|
||||
),
|
||||
]
|
||||
);
|
||||
} else {
|
||||
html_print_action_buttons(
|
||||
html_print_submit_button(
|
||||
__('Validate'),
|
||||
'alert_validate',
|
||||
false,
|
||||
[ 'icon' => 'wand' ],
|
||||
true
|
||||
),
|
||||
]
|
||||
);
|
||||
['type' => 'form_action']
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
$html_content = ob_get_clean();
|
||||
|
@ -446,7 +479,7 @@ if ($free_search != '') {
|
|||
// Create controlled toggle content.
|
||||
html_print_div(
|
||||
[
|
||||
'class' => 'agent_details_first_row agent_details_line',
|
||||
'class' => 'agent_details_line',
|
||||
'content' => ui_toggle(
|
||||
$html_content,
|
||||
'<span class="subsection_header_title">'.__('Full list of alerts').'</span>',
|
||||
|
@ -483,11 +516,12 @@ if ($free_search != '') {
|
|||
|
||||
function alerts_table_controls() {
|
||||
|
||||
$("a.template_details").cluetip ({
|
||||
$("button.template_details").cluetip ({
|
||||
arrows: true,
|
||||
attribute: 'href',
|
||||
cluetipClass: 'default'
|
||||
}).click (function () {
|
||||
console.log('click aqui');
|
||||
return false;
|
||||
});
|
||||
|
||||
|
|
|
@ -555,7 +555,7 @@ $data_opcional->style[1] = 'height: 46px; width: 75%; padding-left: 5px; font-fa
|
|||
$agentAdditionalContent = '';
|
||||
// Position Information.
|
||||
if ((bool) $config['activate_gis'] === true) {
|
||||
$data_opcional->data['agent_position'][0] = '<span>'.__('Position (Long, Lat)').'</span>';
|
||||
$data_opcional->data['agent_position'][0] = __('Position (Long, Lat)');
|
||||
$dataPositionAgent = gis_get_data_last_position_agent(
|
||||
$agent['id_agente']
|
||||
);
|
||||
|
@ -581,7 +581,7 @@ if ((bool) $config['activate_gis'] === true) {
|
|||
|
||||
// If the url description is set.
|
||||
if (empty($agent['url_address']) === false) {
|
||||
$data_opcional->data['url_address'][0] = '<span>'.__('Url address').'</span>';
|
||||
$data_opcional->data['url_address'][0] = __('Url address');
|
||||
$data_opcional->data['url_address'][1] = html_print_anchor(
|
||||
[
|
||||
'href' => $agent['url_address'],
|
||||
|
@ -594,7 +594,7 @@ if (empty($agent['url_address']) === false) {
|
|||
|
||||
// Other IP address and timezone offset.
|
||||
if (empty($addresses) === false) {
|
||||
$data_opcional->data['other_ip_address'][0] = '<span>'.__('Other IP addresses').'</span>';
|
||||
$data_opcional->data['other_ip_address'][0] = __('Other IP addresses');
|
||||
$data_opcional->data['other_ip_address'][1] = html_print_div(
|
||||
[
|
||||
'class' => 'overflow-y mx_height50px',
|
||||
|
@ -606,7 +606,7 @@ if (empty($addresses) === false) {
|
|||
|
||||
// Timezone Offset.
|
||||
if ((int) $agent['timezone_offset'] !== 0) {
|
||||
$data_opcional->data['timezone_offset'][0] = '<span>'.__('Timezone Offset').'</span>';
|
||||
$data_opcional->data['timezone_offset'][0] = __('Timezone Offset');
|
||||
$data_opcional->data['timezone_offset'][1] = $agent['timezone_offset'];
|
||||
}
|
||||
|
||||
|
@ -1099,7 +1099,7 @@ if (empty($data_opcional) === true) {
|
|||
false,
|
||||
false,
|
||||
true,
|
||||
'box-shadow agent_details_col w100p',
|
||||
'box-shadow agent_details_col agent_details_toggle agent_details_first_row w100p',
|
||||
'mrgn_lft_20px mrgn_right_20px',
|
||||
'mrgn_lft_20px mrgn_right_20px w100p'
|
||||
);
|
||||
|
@ -1123,7 +1123,7 @@ html_print_div(
|
|||
|
||||
html_print_div(
|
||||
[
|
||||
'class' => 'agent_details_first_row agent_details_line',
|
||||
'class' => 'agent_details_line',
|
||||
'content' => $agentEvents.$agentAccessRate,
|
||||
]
|
||||
);
|
||||
|
@ -1131,7 +1131,7 @@ html_print_div(
|
|||
if (empty($agentAdditionalInfo) === false) {
|
||||
html_print_div(
|
||||
[
|
||||
'class' => 'agent_details_first_row agent_details_line',
|
||||
'class' => 'agent_details_line',
|
||||
'content' => $agentAdditionalInfo,
|
||||
]
|
||||
);
|
||||
|
@ -1140,7 +1140,7 @@ if (empty($agentAdditionalInfo) === false) {
|
|||
if (empty($agentIncidents) === false) {
|
||||
html_print_div(
|
||||
[
|
||||
'class' => 'agent_details_first_row agent_details_line',
|
||||
'class' => 'agent_details_line',
|
||||
'content' => $agentIncidents,
|
||||
]
|
||||
);
|
||||
|
|
|
@ -184,7 +184,7 @@ $html_toggle = ob_get_clean();
|
|||
|
||||
html_print_div(
|
||||
[
|
||||
'class' => 'agent_details_first_row agent_details_line',
|
||||
'class' => 'agent_details_line',
|
||||
'content' => ui_toggle(
|
||||
$html_toggle,
|
||||
'<span class="subsection_header_title">'.__('List of modules').'</span>'.$help_not_init.ui_print_help_tip(
|
||||
|
|
|
@ -24,7 +24,7 @@ ui_require_css_file('events');
|
|||
|
||||
html_print_div(
|
||||
[
|
||||
'class' => 'agent_details_first_row agent_details_line',
|
||||
'class' => 'agent_details_line',
|
||||
'content' => ui_toggle(
|
||||
'<div class=\'w100p\' id=\'event_list\'>'.html_print_image('images/spinner.gif', true).'</div>',
|
||||
'<span class="subsection_header_title">'.__('Latest events for this agent').'</span>',
|
||||
|
|
|
@ -162,14 +162,30 @@ $table->data = [];
|
|||
$table->style = [$bg_color];
|
||||
|
||||
$stats = reporting_get_stats_indicators($data, 120, 10, false);
|
||||
$status = '<table class="status_tactical bg_white">';
|
||||
foreach ($stats as $stat) {
|
||||
$status .= '<tr><td><b>'.$stat['title'].'</b>'.'</td><td>'.$stat['graph'].'</td></tr>';
|
||||
|
||||
$statusTacticalTable = new stdClass();
|
||||
$statusTacticalTable->width = '100%';
|
||||
$statusTacticalTable->id = 'statusTacticalTable';
|
||||
$statusTacticalTable->class = 'status_tactical tactical_table bg_white';
|
||||
$statusTacticalTable->data = [];
|
||||
|
||||
foreach ($stats as $key => $stat) {
|
||||
$statusTacticalTable->cellstyle['line_'.$key][0] = 'width: 40%;';
|
||||
$statusTacticalTable->style['line_'.$key][1] = 'width: 60%;';
|
||||
$statusTacticalTable->data['line_'.$key][0] = '<span>'.$stat['title'].'</span>';
|
||||
$statusTacticalTable->data['line_'.$key][1] = $stat['graph'];
|
||||
}
|
||||
|
||||
$status .= '</table>';
|
||||
$status = html_print_table($statusTacticalTable, true);
|
||||
|
||||
$table->rowclass = [];
|
||||
$table->rowclass[0] = 'w100p';
|
||||
$table->rowclass[1] = 'w100p';
|
||||
$table->rowclass[2] = 'w100p';
|
||||
$table->rowclass[3] = 'w100p';
|
||||
$table->rowclass[4] = 'w100p';
|
||||
$table->data[0][0] = $status;
|
||||
$table->rowclass[] = '';
|
||||
|
||||
|
||||
// ---------------------------------------------------------------------
|
||||
// Monitor checks
|
||||
|
@ -183,6 +199,7 @@ $data_agents = [
|
|||
];
|
||||
|
||||
$table->data[1][0] = reporting_get_stats_alerts($data);
|
||||
$table->rowclass[1] = 'w100p';
|
||||
$table->data[2][0] = reporting_get_stats_modules_status($data, 180, 100, false, $data_agents);
|
||||
$table->data[3][0] = reporting_get_stats_agents_monitors($data);
|
||||
|
||||
|
|