#10598 V2 wizard welcome
This commit is contained in:
parent
99b274d362
commit
ebdc735bd4
|
@ -38,7 +38,7 @@ echo sprintf('<div id="header_table" class="header_table_%s">', $menuTypeClass);
|
|||
if (check_acl($config['id_user'], $group, 'AW')) {
|
||||
$header_welcome .= '<div id="welcome-icon-header">';
|
||||
$header_welcome .= html_print_image(
|
||||
'images/computer@groups.svg',
|
||||
'images/wizard@svg.svg',
|
||||
true,
|
||||
[
|
||||
'class' => 'main_menu_icon invert_filter',
|
||||
|
|
|
@ -172,16 +172,7 @@ if ($access_console_node === true) {
|
|||
$sub['wizard']['text'] = __('Configuration wizard');
|
||||
$sub['wizard']['id'] = 'conf_wizard';
|
||||
$sub['wizard']['type'] = 'direct';
|
||||
$sub['wizard']['subtype'] = 'nolink';
|
||||
$sub2 = [];
|
||||
if ((bool) check_acl($config['id_user'], 0, 'PM') === true) {
|
||||
$sub2['godmode/wizards/mini_diagnosis']['text'] = __('Mini-diagnosis');
|
||||
$sub2['godmode/wizards/mini_diagnosis']['id'] = 'mini_diagnosis';
|
||||
}
|
||||
|
||||
$sub2['godmode/wizards/task_to_perform']['text'] = __('Tasks to perform');
|
||||
$sub2['godmode/wizards/task_to_perform']['id'] = 'task_to_perform';
|
||||
$sub['wizard']['sub2'] = $sub2;
|
||||
$sub['wizard']['subtype'] = 'nolink_no_arrow';
|
||||
}
|
||||
|
||||
if ((bool) check_acl($config['id_user'], 0, 'PM') === true) {
|
||||
|
@ -629,3 +620,55 @@ if ((bool) $config['pure'] === false) {
|
|||
}
|
||||
|
||||
echo '<div id="about-div"></div>';
|
||||
// Need to be here because the translate string.
|
||||
if (check_acl($config['id_user'], $group, 'AW')) {
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
$("#conf_wizard").click(function() {
|
||||
$("#conf_wizard").addClass("selected");
|
||||
|
||||
if (!$("#welcome_modal_window").length) {
|
||||
$(document.body).append('<div id="welcome_modal_window"></div>');
|
||||
$(document.body).append(
|
||||
$('<link rel="stylesheet" type="text/css" />').attr(
|
||||
"href",
|
||||
"include/styles/new_installation_welcome_window.css"
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
load_modal({
|
||||
target: $('#welcome_modal_window'),
|
||||
url: '<?php echo ui_get_full_url('ajax.php', false, false, false); ?>',
|
||||
modal: {
|
||||
title: "<?php echo __('Welcome to').' '.io_safe_output(get_product_name()); ?>",
|
||||
cancel: '<?php echo __('Do not show anymore'); ?>',
|
||||
ok: '<?php echo __('Close'); ?>'
|
||||
},
|
||||
onshow: {
|
||||
page: 'include/ajax/welcome_window',
|
||||
method: 'loadWelcomeWindow',
|
||||
},
|
||||
oncancel: {
|
||||
page: 'include/ajax/welcome_window',
|
||||
title: "<?php echo __('Cancel Configuration Window'); ?>",
|
||||
method: 'cancelWelcome',
|
||||
confirm: function (fn) {
|
||||
confirmDialog({
|
||||
title: '<?php echo __('Are you sure?'); ?>',
|
||||
message: '<?php echo __('Are you sure you want to cancel this tutorial?'); ?>',
|
||||
ok: '<?php echo __('OK'); ?>',
|
||||
cancel: '<?php echo __('Cancel'); ?>',
|
||||
onAccept: function() {
|
||||
// Continue execution.
|
||||
fn();
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<?php
|
||||
}
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,181 @@
|
|||
<?php
|
||||
/**
|
||||
* Extension to schedule tasks on Pandora FMS Console
|
||||
*
|
||||
* @category Wizard
|
||||
* @package Pandora FMS
|
||||
* @subpackage Host&Devices
|
||||
* @version 1.0.0
|
||||
* @license See below
|
||||
*
|
||||
* ______ ___ _______ _______ ________
|
||||
* | __ \.-----.--.--.--| |.-----.----.-----. | ___| | | __|
|
||||
* | __/| _ | | _ || _ | _| _ | | ___| |__ |
|
||||
* |___| |___._|__|__|_____||_____|__| |___._| |___| |__|_|__|_______|
|
||||
*
|
||||
* ============================================================================
|
||||
* Copyright (c) 2005-2023 PandoraFMS S.L.
|
||||
* Please see http://pandorafms.org for full contribution list
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation for version 2.
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
* ============================================================================
|
||||
*/
|
||||
|
||||
// Begin.
|
||||
require_once '../functions.php';
|
||||
require_once '../functions_welcome_wizard.php';
|
||||
global $config;
|
||||
|
||||
$check_web = get_parameter('check_web', 0);
|
||||
$check_connectivity = get_parameter('check_connectivity', 0);
|
||||
$create_net_scan = get_parameter('create_net_scan', 0);
|
||||
$create_mail_alert = get_parameter('create_mail_alert', 0);
|
||||
|
||||
// Begin.
|
||||
global $config;
|
||||
|
||||
if ($check_web) {
|
||||
include_once '../functions_api.php';
|
||||
include_once '../functions_servers.php';
|
||||
|
||||
$status_webserver = db_get_row_filter('tserver', ['server_type' => SERVER_TYPE_WEB], 'status')['status'];
|
||||
if ($status_webserver === '1') {
|
||||
$name = array_keys(servers_get_names())[0];
|
||||
$id_group = get_parameter('id_group', 4);
|
||||
|
||||
$array_other['data'] = [
|
||||
'Web monitoring',
|
||||
'',
|
||||
2,
|
||||
$id_group,
|
||||
0,
|
||||
30,
|
||||
30,
|
||||
9,
|
||||
$name,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
__('Agent Web monitoring created on welcome'),
|
||||
];
|
||||
|
||||
$id_agent = api_set_new_agent(0, '', $array_other, '', true);
|
||||
if ($id_agent > 0) {
|
||||
$module_name = get_parameter('module_name', 'Web_monitoring_module');
|
||||
$text_to_search = get_parameter('text_to_search', '');
|
||||
$url_goliat = get_parameter('url_goliat', 'https://pandorafms.com/en/');
|
||||
$module_latency = create_module_latency_goliat($id_agent, $module_name, $id_group, $url_goliat, $text_to_search);
|
||||
$module_status = create_module_status_goliat($id_agent, $module_name, $id_group, $url_goliat, $text_to_search);
|
||||
if ($module_latency > 0 && $module_status > 0) {
|
||||
ui_print_success_message(__('Your check has been created, <a href='.ui_get_full_url('index.php?sec=gagente&sec2=godmode/agentes/configurar_agente&tab=module&id_agente='.$id_agent).'>click here to view the data</a>. Please note that it may take a few seconds to see data if your server is busy'));
|
||||
}
|
||||
} else {
|
||||
ui_print_error_message(__('The Name is not valid for the modules.'));
|
||||
}
|
||||
} else {
|
||||
ui_print_error_message(__('Web server is not enabled.'));
|
||||
}
|
||||
}
|
||||
|
||||
if ($check_connectivity) {
|
||||
include_once '../functions_api.php';
|
||||
include_once '../functions_servers.php';
|
||||
|
||||
$status_newtwork = db_get_row_filter('tserver', ['server_type' => SERVER_TYPE_NETWORK], 'status')['status'];
|
||||
$status_pluggin = db_get_row_filter('tserver', ['server_type' => SERVER_TYPE_PLUGIN], 'status')['status'];
|
||||
if ($status_newtwork === '1' && $status_pluggin === '1') {
|
||||
$name = array_keys(servers_get_names())[0];
|
||||
$id_group = get_parameter('id_group', 4);
|
||||
$agent_name = get_parameter('agent_name', __('Agent check connectivity'));
|
||||
|
||||
$array_other['data'] = [
|
||||
$agent_name,
|
||||
'',
|
||||
2,
|
||||
$id_group,
|
||||
0,
|
||||
30,
|
||||
30,
|
||||
9,
|
||||
$name,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
__('Basic connectivity'),
|
||||
];
|
||||
|
||||
$id_agent = api_set_new_agent(0, '', $array_other, '', true);
|
||||
if ($id_agent > 0) {
|
||||
$ip_target = get_parameter('ip_target', '127.0.0.1');
|
||||
$basic_network = create_module_basic_network($id_agent, $id_group, $ip_target);
|
||||
$latency_network = create_module_latency_network($id_agent, $id_group, $ip_target);
|
||||
$packet_lost = create_module_packet_lost($id_agent, $id_group, $ip_target);
|
||||
if ($basic_network > 0 && $latency_network > 0 && $packet_lost > 0) {
|
||||
ui_print_success_message(__('Your check has been created, <a href='.ui_get_full_url('index.php?sec=gagente&sec2=godmode/agentes/configurar_agente&tab=module&id_agente='.$id_agent).'>click here to view the data</a>. Please note that it may take a few seconds to see data if your server is busy'));
|
||||
}
|
||||
} else {
|
||||
ui_print_error_message(__('The Name is not valid for the modules.'));
|
||||
}
|
||||
} else {
|
||||
ui_print_error_message(__('Web server is not enabled.'));
|
||||
}
|
||||
}
|
||||
|
||||
if ($create_net_scan) {
|
||||
$ip_target = get_parameter('ip_target', '192.168.10.0/24');
|
||||
$id_net_scan = create_net_scan($ip_target);
|
||||
if ($id_net_scan > 0) {
|
||||
$id_recon_server = db_get_row_filter('tserver', ['server_type' => SERVER_TYPE_DISCOVERY], 'id_server')['id_server'];
|
||||
ui_print_success_message(__('Basic net created and scan in progress. <a href='.ui_get_full_url('index.php?sec=gservers&sec2=godmode/servers/discovery&wiz=tasklist&server_id='.$id_recon_server.'&force='.$id_net_scan).'>Click here to view the data</a>. Please note that it may take a few seconds to see data if your server is busy'));
|
||||
} else {
|
||||
ui_print_error_message(__('Basic net already exists. <a href='.ui_get_full_url('index.php?sec=gservers&sec2=godmode/servers/discovery&wiz=tasklist').'>Click here to view the data</a>'));
|
||||
}
|
||||
}
|
||||
|
||||
if ($create_mail_alert) {
|
||||
include_once '../functions_alerts.php';
|
||||
$id_action = db_get_row_filter('talert_actions', ['name' => 'Email to '.$config['id_user']], 'id')['id'];
|
||||
if (!$id_action) {
|
||||
$al_action = alerts_get_alert_action($id);
|
||||
$id_action = alerts_clone_alert_action(1, $al_action['id_group'], 'Email to '.$config['id_user']);
|
||||
}
|
||||
|
||||
$id_alert_template = get_parameter('id_condition', 0);
|
||||
$id_agent_module = get_parameter('id_agent_module', 0);
|
||||
|
||||
$exist = db_get_value_sql(
|
||||
sprintf(
|
||||
'SELECT COUNT(id)
|
||||
FROM talert_template_modules
|
||||
WHERE id_agent_module = %d
|
||||
AND id_alert_template = %d
|
||||
AND id_policy_alerts = 0
|
||||
',
|
||||
$id_agent_module,
|
||||
$id_alert_template
|
||||
)
|
||||
);
|
||||
|
||||
if ($exist > 0) {
|
||||
ui_print_error_message(__('Alert already exists. <a href='.ui_get_full_url('index.php?sec=galertas&sec2=godmode/alerts/alert_list&tab=list&pure=0').'>Click here to view the data</a>'));
|
||||
} else {
|
||||
$id = alerts_create_alert_agent_module($id_agent_module, $id_alert_template);
|
||||
if ($id !== false) {
|
||||
$values = [];
|
||||
$values['fires_min'] = (int) get_parameter('fires_min');
|
||||
$values['fires_max'] = (int) get_parameter('fires_max');
|
||||
$values['module_action_threshold'] = (int) 300;
|
||||
|
||||
$alert_created = alerts_add_alert_agent_module_action($id, $id_action, $values);
|
||||
}
|
||||
}
|
||||
|
||||
if ($alert_created === true) {
|
||||
ui_print_success_message(__('Congratulations, you have already created a simple alert. <a href='.ui_get_full_url('index.php?sec=galertas&sec2=godmode/alerts/alert_list&tab=list&pure=0').'>You can see it.</a> Pandora FMS alerts are very flexible, you can do many more things with them, we recommend you to read the <a href="https://pandorafms.com/manual/start?id=en/documentation/04_using/01_alerts">documentation</a> for more information. You can create advanced alerts from <a href='.ui_get_full_url('index.php?sec=galertas&sec2=godmode/alerts/alert_actions').'>here</a>.'));
|
||||
}
|
||||
}
|
|
@ -374,34 +374,37 @@ class WelcomeWindow extends Wizard
|
|||
$flag_su = false;
|
||||
$flag_lv = false;
|
||||
|
||||
$btn_update_manager_class = ' pending';
|
||||
$btn_configure_mail_class = ' pending';
|
||||
$btn_servers_up_class = ' pending';
|
||||
$btn_license_valid_class = ' pending';
|
||||
$btn_update_manager_class = ' fail';
|
||||
$btn_configure_mail_class = ' fail';
|
||||
$btn_servers_up_class = ' fail';
|
||||
$btn_license_valid_class = ' fail';
|
||||
|
||||
$li_update_manager_class = 'row_grey';
|
||||
$li_configure_mail_class = 'row_grey';
|
||||
$li_servers_up_class = 'row_grey';
|
||||
$li_license_valid_class = 'row_grey';
|
||||
|
||||
if ($config['pandora_uid'] === 'ONLINE') {
|
||||
$btn_update_manager_class = ' completed';
|
||||
include_once 'include/functions_update_manager.php';
|
||||
if (update_manager_verify_registration()) {
|
||||
$btn_update_manager_class = '';
|
||||
$li_update_manager_class = 'row_green';
|
||||
$flag_um = true;
|
||||
}
|
||||
|
||||
if (empty($config['welcome_mail_configured']) === false) {
|
||||
$btn_configure_mail_class = ' completed';
|
||||
$btn_configure_mail_class = '';
|
||||
$li_configure_mail_class = 'row_green';
|
||||
$flag_cm = true;
|
||||
}
|
||||
|
||||
include_once 'include/functions_servers.php';
|
||||
if (check_all_servers_up() === true) {
|
||||
$btn_servers_up_class = ' completed';
|
||||
$btn_servers_up_class = '';
|
||||
$li_servers_up_class = 'row_green';
|
||||
$flag_su = true;
|
||||
}
|
||||
|
||||
$show_license = true;
|
||||
if (enterprise_installed()) {
|
||||
$license_valid = true;
|
||||
enterprise_include_once('include/functions_license.php');
|
||||
|
@ -412,10 +415,12 @@ class WelcomeWindow extends Wizard
|
|||
}
|
||||
|
||||
if ($license_valid === true) {
|
||||
$btn_license_valid_class = ' completed';
|
||||
$btn_license_valid_class = '';
|
||||
$li_license_valid_class = 'row_green';
|
||||
$flag_lv = true;
|
||||
}
|
||||
} else {
|
||||
$show_license = false;
|
||||
}
|
||||
|
||||
$inputs[] = [
|
||||
|
@ -425,7 +430,7 @@ class WelcomeWindow extends Wizard
|
|||
'direct' => 1,
|
||||
'block_content' => [
|
||||
[
|
||||
'label' => __('Mini-diagnosis'),
|
||||
'label' => __('Post-installation status diagnostic'),
|
||||
'arguments' => [
|
||||
'class' => 'first_lbl',
|
||||
'name' => 'lbl_diagnosis',
|
||||
|
@ -443,7 +448,7 @@ class WelcomeWindow extends Wizard
|
|||
'direct' => 1,
|
||||
'block_content' => [
|
||||
[
|
||||
'label' => __('Verification update manager register'),
|
||||
'label' => __('Warp Update registration'),
|
||||
'arguments' => [
|
||||
'class' => 'first_lbl',
|
||||
'name' => 'lbl_update_manager',
|
||||
|
@ -471,7 +476,7 @@ class WelcomeWindow extends Wizard
|
|||
'direct' => 1,
|
||||
'block_content' => [
|
||||
[
|
||||
'label' => __('Please ensure mail configuration matches your needs'),
|
||||
'label' => __('Default mail to send alerts'),
|
||||
'arguments' => [
|
||||
'class' => 'first_lbl',
|
||||
'name' => 'lbl_create_agent',
|
||||
|
@ -499,7 +504,7 @@ class WelcomeWindow extends Wizard
|
|||
'direct' => 1,
|
||||
'block_content' => [
|
||||
[
|
||||
'label' => __('All servers up'),
|
||||
'label' => __('All servers running'),
|
||||
'arguments' => [
|
||||
'class' => 'first_lbl',
|
||||
'name' => 'lbl_servers_up',
|
||||
|
@ -520,36 +525,37 @@ class WelcomeWindow extends Wizard
|
|||
],
|
||||
],
|
||||
];
|
||||
$inputs[] = [
|
||||
'wrapper' => 'div',
|
||||
'block_id' => 'div_license_valid',
|
||||
'class' => 'hole flex-row flex-items-center w98p '.$li_license_valid_class,
|
||||
'direct' => 1,
|
||||
'block_content' => [
|
||||
[
|
||||
'label' => __('Valid license verification and expiration greater than 30 days'),
|
||||
'arguments' => [
|
||||
'class' => 'first_lbl',
|
||||
'name' => 'lbl_license_valid',
|
||||
'id' => 'lbl_license_valid',
|
||||
],
|
||||
],
|
||||
[
|
||||
'arguments' => [
|
||||
'label' => '',
|
||||
'type' => 'button',
|
||||
'attributes' => [
|
||||
'class' => (empty($btn_license_valid_class) === false) ? $btn_license_valid_class : 'invisible_important',
|
||||
'mode' => 'onlyIcon',
|
||||
if ($show_license) {
|
||||
$inputs[] = [
|
||||
'wrapper' => 'div',
|
||||
'block_id' => 'div_license_valid',
|
||||
'class' => 'hole flex-row flex-items-center w98p '.$li_license_valid_class,
|
||||
'direct' => 1,
|
||||
'block_content' => [
|
||||
[
|
||||
'label' => __('Enterprise licence valid'),
|
||||
'arguments' => [
|
||||
'class' => 'first_lbl',
|
||||
'name' => 'lbl_license_valid',
|
||||
'id' => 'lbl_license_valid',
|
||||
],
|
||||
],
|
||||
[
|
||||
'arguments' => [
|
||||
'label' => '',
|
||||
'type' => 'button',
|
||||
'attributes' => [
|
||||
'class' => (empty($btn_license_valid_class) === false) ? $btn_license_valid_class : 'invisible_important',
|
||||
'mode' => 'onlyIcon',
|
||||
],
|
||||
'name' => 'btn_license_valid_conf',
|
||||
'id' => 'btn_license_valid_conf',
|
||||
],
|
||||
'name' => 'btn_license_valid_conf',
|
||||
'id' => 'btn_license_valid_conf',
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
];
|
||||
}
|
||||
} else {
|
||||
$key = db_get_value_sql('SELECT `value` FROM tupdate_settings WHERE `key` = "customer_key"');
|
||||
$inputs[] = [
|
||||
'wrapper' => 'div',
|
||||
'block_id' => 'div_all_correct',
|
||||
|
@ -557,7 +563,7 @@ class WelcomeWindow extends Wizard
|
|||
'direct' => 1,
|
||||
'block_content' => [
|
||||
[
|
||||
'label' => __('It seems that your Pandora FMS is working correctly and registered with ID:<br> #'.$key.'.<br>For more information use the self-diagnosis tool.'),
|
||||
'label' => __('It seems that your Pandora FMS is working correctly and registered with ID:<br> #'.$config['pandora_uid'].'.<br>For more information use the self-diagnosis tool.'),
|
||||
'arguments' => [
|
||||
'class' => 'first_lbl w98p',
|
||||
'name' => 'lbl_all_correct',
|
||||
|
@ -591,159 +597,39 @@ class WelcomeWindow extends Wizard
|
|||
],
|
||||
];
|
||||
|
||||
$fields['wizard_agent'] = __('Agent installation wizard');
|
||||
$fields['check_web'] = __('Create WEB monitoring');
|
||||
$fields['check_connectivity'] = __('Create network monitoring');
|
||||
$fields['check_net'] = __('Discover my network');
|
||||
$fields['check_mail_alert'] = __('Create email alert');
|
||||
|
||||
$inputs[] = [
|
||||
'wrapper' => 'div',
|
||||
'block_id' => 'div_wizard_agent',
|
||||
'class' => 'hole flex-row flex-items-center w98p row_grey',
|
||||
'class' => 'flex space-between w98p',
|
||||
'direct' => 1,
|
||||
'block_content' => [
|
||||
[
|
||||
'label' => __('Wizard install agent'),
|
||||
'arguments' => [
|
||||
'class' => 'first_lbl row_grey',
|
||||
'name' => 'lbl_wizard_agent',
|
||||
'id' => 'lbl_wizard_agent',
|
||||
'type' => 'select',
|
||||
'fields' => $fields,
|
||||
'name' => 'task_to_perform',
|
||||
'selected' => '',
|
||||
'return' => true,
|
||||
'nothing' => \__('Please select one'),
|
||||
'nothing_value' => '',
|
||||
],
|
||||
],
|
||||
[
|
||||
'arguments' => [
|
||||
'label' => '',
|
||||
'label' => __('Let`s do it!'),
|
||||
'type' => 'button',
|
||||
'attributes' => [
|
||||
'class' => 'completed',
|
||||
'mode' => 'onlyIcon',
|
||||
'class' => 'secondary',
|
||||
'icon' => 'next',
|
||||
],
|
||||
'name' => 'btn_wizard_agent_conf',
|
||||
'id' => 'btn_wizard_agent_conf',
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
$status_webserver = db_get_row_filter('tserver', ['server_type' => SERVER_TYPE_WEB], 'status')['status'];
|
||||
$check_web_color = 'row_grey';
|
||||
if ($status_webserver === '1') {
|
||||
$check_web_color = 'row_green';
|
||||
}
|
||||
|
||||
$inputs[] = [
|
||||
'wrapper' => 'div',
|
||||
'block_id' => 'div_check_web',
|
||||
'class' => 'hole flex-row flex-items-center w98p '.$check_web_color,
|
||||
'direct' => 1,
|
||||
'block_content' => [
|
||||
[
|
||||
'label' => __('Create check web'),
|
||||
'arguments' => [
|
||||
'class' => 'first_lbl row_grey',
|
||||
'name' => 'lbl_check_web',
|
||||
'id' => 'lbl_check_web',
|
||||
],
|
||||
],
|
||||
[
|
||||
'arguments' => [
|
||||
'label' => '',
|
||||
'type' => 'button',
|
||||
'attributes' => [
|
||||
'class' => 'completed',
|
||||
'mode' => 'onlyIcon',
|
||||
],
|
||||
'name' => 'btn_check_web_conf',
|
||||
'id' => 'btn_check_web_conf',
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
$status_newtwork = db_get_row_filter('tserver', ['server_type' => SERVER_TYPE_NETWORK], 'status')['status'];
|
||||
$status_pluggin = db_get_row_filter('tserver', ['server_type' => SERVER_TYPE_PLUGIN], 'status')['status'];
|
||||
$check_connectivity = 'row_grey';
|
||||
if ($status_newtwork === '1' && $status_pluggin === '1') {
|
||||
$check_connectivity = 'row_green';
|
||||
}
|
||||
|
||||
$inputs[] = [
|
||||
'wrapper' => 'div',
|
||||
'block_id' => 'div_check_connectivity',
|
||||
'class' => 'hole flex-row flex-items-center w98p '.$check_connectivity,
|
||||
'direct' => 1,
|
||||
'block_content' => [
|
||||
[
|
||||
'label' => __('Create basic connectivity'),
|
||||
'arguments' => [
|
||||
'class' => 'first_lbl row_grey',
|
||||
'name' => 'lbl_check_connectivity',
|
||||
'id' => 'lbl_check_connectivity',
|
||||
],
|
||||
],
|
||||
[
|
||||
'arguments' => [
|
||||
'label' => '',
|
||||
'type' => 'button',
|
||||
'attributes' => [
|
||||
'class' => 'completed',
|
||||
'mode' => 'onlyIcon',
|
||||
],
|
||||
'name' => 'btn_check_connectivity_conf',
|
||||
'id' => 'btn_check_connectivity_conf',
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
$inputs[] = [
|
||||
'wrapper' => 'div',
|
||||
'block_id' => 'div_check_net',
|
||||
'class' => 'hole flex-row flex-items-center w98p row_green',
|
||||
'direct' => 1,
|
||||
'block_content' => [
|
||||
[
|
||||
'label' => __('Create basic net'),
|
||||
'arguments' => [
|
||||
'class' => 'first_lbl row_grey',
|
||||
'name' => 'lbl_check_net',
|
||||
'id' => 'lbl_check_net',
|
||||
],
|
||||
],
|
||||
[
|
||||
'arguments' => [
|
||||
'label' => '',
|
||||
'type' => 'button',
|
||||
'attributes' => [
|
||||
'class' => 'completed',
|
||||
'mode' => 'onlyIcon',
|
||||
],
|
||||
'name' => 'btn_check_net_conf',
|
||||
'id' => 'btn_check_net_conf',
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
$inputs[] = [
|
||||
'wrapper' => 'div',
|
||||
'block_id' => 'div_check_mail_alert',
|
||||
'class' => 'hole flex-row flex-items-center w98p row_green',
|
||||
'direct' => 1,
|
||||
'block_content' => [
|
||||
[
|
||||
'label' => __('Create Alert Mail'),
|
||||
'arguments' => [
|
||||
'class' => 'first_lbl row_grey',
|
||||
'name' => 'lbl_check_mail_alert',
|
||||
'id' => 'lbl_check_mail_alert',
|
||||
],
|
||||
],
|
||||
[
|
||||
'arguments' => [
|
||||
'label' => '',
|
||||
'type' => 'button',
|
||||
'attributes' => [
|
||||
'class' => 'completed',
|
||||
'mode' => 'onlyIcon',
|
||||
],
|
||||
'name' => 'btn_check_mail_alert_conf',
|
||||
'id' => 'btn_check_mail_alert_conf',
|
||||
'name' => 'go_wizard',
|
||||
'id' => 'go_wizard',
|
||||
],
|
||||
],
|
||||
],
|
||||
|
@ -759,7 +645,233 @@ class WelcomeWindow extends Wizard
|
|||
|
||||
$output .= $this->loadJS($flag_task);
|
||||
echo $output;
|
||||
?>
|
||||
<div id="dialog_goliat" class="invisible">
|
||||
<?php
|
||||
echo html_print_input_hidden('check_web', 1);
|
||||
echo html_print_label_input_block(
|
||||
__('URL'),
|
||||
html_print_input_text(
|
||||
'url_goliat',
|
||||
'',
|
||||
'',
|
||||
false,
|
||||
255,
|
||||
true,
|
||||
false,
|
||||
true,
|
||||
'',
|
||||
'w100p'
|
||||
)
|
||||
);
|
||||
echo html_print_label_input_block(
|
||||
__('Text to search'),
|
||||
html_print_input_text(
|
||||
'text_to_search',
|
||||
'',
|
||||
'',
|
||||
false,
|
||||
255,
|
||||
true,
|
||||
false,
|
||||
false,
|
||||
'',
|
||||
'w100p'
|
||||
)
|
||||
);
|
||||
echo html_print_label_input_block(
|
||||
__('Modules name'),
|
||||
html_print_input_text(
|
||||
'module_name',
|
||||
'',
|
||||
'',
|
||||
false,
|
||||
255,
|
||||
true,
|
||||
false,
|
||||
false,
|
||||
'',
|
||||
'w100p'
|
||||
)
|
||||
);
|
||||
echo html_print_label_input_block(
|
||||
__('Module group'),
|
||||
html_print_select_from_sql(
|
||||
'SELECT * FROM tgrupo ORDER BY nombre',
|
||||
'id_group',
|
||||
'',
|
||||
'',
|
||||
'',
|
||||
false,
|
||||
true,
|
||||
false,
|
||||
true,
|
||||
false,
|
||||
'width: 100%;'
|
||||
)
|
||||
);
|
||||
|
||||
echo html_print_submit_button(__('Create'), 'create_goliat', false, ['icon' => 'next', 'style' => 'margin-top:15px; float:right;']);
|
||||
?>
|
||||
</div>
|
||||
<div id="dialog_connectivity" class="invisible">
|
||||
<?php
|
||||
echo html_print_input_hidden('check_connectivity', 1);
|
||||
echo html_print_label_input_block(
|
||||
__('Ip target'),
|
||||
html_print_input_text(
|
||||
'ip_target',
|
||||
'',
|
||||
'',
|
||||
false,
|
||||
15,
|
||||
true,
|
||||
false,
|
||||
true,
|
||||
'',
|
||||
'w100p'
|
||||
)
|
||||
);
|
||||
echo html_print_label_input_block(
|
||||
__('Agent name'),
|
||||
html_print_input_text(
|
||||
'agent_name',
|
||||
'',
|
||||
'',
|
||||
false,
|
||||
255,
|
||||
true,
|
||||
false,
|
||||
false,
|
||||
'',
|
||||
'w100p'
|
||||
)
|
||||
);
|
||||
echo html_print_label_input_block(
|
||||
__('Module group'),
|
||||
html_print_select_from_sql(
|
||||
'SELECT * FROM tgrupo ORDER BY nombre',
|
||||
'id_group',
|
||||
'',
|
||||
'',
|
||||
'',
|
||||
false,
|
||||
true,
|
||||
false,
|
||||
true,
|
||||
false,
|
||||
'width: 100%;'
|
||||
)
|
||||
);
|
||||
|
||||
echo html_print_submit_button(__('Create'), 'create_conectivity', false, ['icon' => 'next', 'style' => 'margin-top:15px; float:right;']);
|
||||
?>
|
||||
</div>
|
||||
<div id="dialog_basic_net" class="invisible">
|
||||
<?php
|
||||
echo html_print_input_hidden('create_net_scan', 1);
|
||||
echo html_print_label_input_block(
|
||||
__('Ip target'),
|
||||
html_print_input_text(
|
||||
'ip_target',
|
||||
'192.168.10.0/24',
|
||||
'192.168.10.0/24',
|
||||
false,
|
||||
18,
|
||||
true,
|
||||
false,
|
||||
true,
|
||||
'',
|
||||
'w100p',
|
||||
'',
|
||||
'off',
|
||||
false,
|
||||
'',
|
||||
'',
|
||||
'',
|
||||
false,
|
||||
'',
|
||||
'192.168.10.0/24'
|
||||
)
|
||||
);
|
||||
|
||||
echo html_print_submit_button(__('Create'), 'basic_net', false, ['icon' => 'next', 'style' => 'margin-top:15px; float:right;']);
|
||||
?>
|
||||
</div>
|
||||
<div id="dialog_alert_mail" class="invisible">
|
||||
<?php
|
||||
echo html_print_input_hidden('create_mail_alert', 1);
|
||||
$params = [];
|
||||
$params['return'] = true;
|
||||
$params['show_helptip'] = true;
|
||||
$params['input_name'] = 'id_agent';
|
||||
$params['selectbox_id'] = 'id_agent_module';
|
||||
$params['javascript_is_function_select'] = true;
|
||||
$params['metaconsole_enabled'] = false;
|
||||
$params['use_hidden_input_idagent'] = true;
|
||||
$params['print_hidden_input_idagent'] = true;
|
||||
echo html_print_label_input_block(
|
||||
__('Agent'),
|
||||
ui_print_agent_autocomplete_input($params)
|
||||
);
|
||||
echo html_print_label_input_block(
|
||||
__('Module'),
|
||||
html_print_select(
|
||||
$modules,
|
||||
'id_agent_module',
|
||||
'',
|
||||
true,
|
||||
'',
|
||||
'',
|
||||
true,
|
||||
false,
|
||||
true,
|
||||
'w100p',
|
||||
false,
|
||||
'width: 100%;',
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
'',
|
||||
false,
|
||||
false,
|
||||
true
|
||||
).'<span id="latest_value" class="invisible">'.__('Latest value').':
|
||||
<span id="value"> </span></span>
|
||||
<span id="module_loading" class="invisible">'.html_print_image('images/spinner.gif', true).'</span>'
|
||||
);
|
||||
|
||||
$condition = alerts_get_alert_templates(['id IN (1,3)'], ['id', 'name']);
|
||||
|
||||
echo html_print_label_input_block(
|
||||
__('Contition'),
|
||||
html_print_select(
|
||||
index_array($condition, 'id', 'name'),
|
||||
'id_condition',
|
||||
'',
|
||||
'',
|
||||
__('Select'),
|
||||
'',
|
||||
true,
|
||||
false,
|
||||
true,
|
||||
'w100p',
|
||||
false,
|
||||
'width: 100%;',
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
'',
|
||||
false,
|
||||
false,
|
||||
true
|
||||
)
|
||||
);
|
||||
|
||||
echo html_print_submit_button(__('Create'), 'alert_mail', false, ['icon' => 'next', 'style' => 'margin-top:15px; float:right;']);
|
||||
?>
|
||||
</div>
|
||||
<?php
|
||||
// Ajax methods does not continue.
|
||||
exit();
|
||||
}
|
||||
|
@ -1011,30 +1123,104 @@ class WelcomeWindow extends Wizard
|
|||
<?php } ?>
|
||||
|
||||
// Task to do buttons.
|
||||
document.getElementById("button-btn_wizard_agent_conf").setAttribute(
|
||||
'onclick',
|
||||
'deployAgent()'
|
||||
);
|
||||
$('#button-go_wizard').click(function(){
|
||||
if ($('#task_to_perform :selected').val() === '') {
|
||||
alert("<?php echo __('You must chose an option'); ?>");
|
||||
} else {
|
||||
switch($('#task_to_perform :selected').val()) {
|
||||
case 'wizard_agent':
|
||||
deployAgent();
|
||||
break;
|
||||
case 'check_mail_alert':
|
||||
openCreateAlertMailDialog();
|
||||
break;
|
||||
case 'check_connectivity':
|
||||
openCreateConnectivityDialog();
|
||||
break;
|
||||
case 'check_web':
|
||||
openCreateModulesDialog();
|
||||
break;
|
||||
case 'check_net':
|
||||
openCreateBasicNetDialog();
|
||||
break;
|
||||
};
|
||||
}
|
||||
});
|
||||
|
||||
document.getElementById("button-btn_check_web_conf").setAttribute(
|
||||
'onclick',
|
||||
'openCreateModulesDialog()'
|
||||
);
|
||||
// Task to do buttons.
|
||||
$('#button-go_wizard').click(function(){
|
||||
if ($('#task_to_perform :selected').val() === '') {
|
||||
alert("<?php echo __('You must chose an option'); ?>");
|
||||
} else {
|
||||
switch($('#task_to_perform :selected').val()) {
|
||||
case 'wizard_agent':
|
||||
deployAgent();
|
||||
break;
|
||||
case 'check_mail_alert':
|
||||
openCreateAlertMailDialog();
|
||||
break;
|
||||
case 'check_connectivity':
|
||||
openCreateConnectivityDialog();
|
||||
break;
|
||||
case 'check_web':
|
||||
openCreateModulesDialog();
|
||||
break;
|
||||
case 'check_net':
|
||||
openCreateBasicNetDialog();
|
||||
break;
|
||||
};
|
||||
}
|
||||
});
|
||||
|
||||
document.getElementById("button-btn_check_connectivity_conf").setAttribute(
|
||||
'onclick',
|
||||
'openCreateConnectivityDialog()'
|
||||
);
|
||||
// Task to do buttons.
|
||||
$('#button-go_wizard').click(function(){
|
||||
if ($('#task_to_perform :selected').val() === '') {
|
||||
alert("<?php echo __('You must chose an option'); ?>");
|
||||
} else {
|
||||
switch($('#task_to_perform :selected').val()) {
|
||||
case 'wizard_agent':
|
||||
deployAgent();
|
||||
break;
|
||||
case 'check_mail_alert':
|
||||
openCreateAlertMailDialog();
|
||||
break;
|
||||
case 'check_connectivity':
|
||||
openCreateConnectivityDialog();
|
||||
break;
|
||||
case 'check_web':
|
||||
openCreateModulesDialog();
|
||||
break;
|
||||
case 'check_net':
|
||||
openCreateBasicNetDialog();
|
||||
break;
|
||||
};
|
||||
}
|
||||
});
|
||||
|
||||
document.getElementById("button-btn_check_net_conf").setAttribute(
|
||||
'onclick',
|
||||
'openCreateBasicNetDialog()'
|
||||
);
|
||||
|
||||
document.getElementById("button-btn_check_mail_alert_conf").setAttribute(
|
||||
'onclick',
|
||||
'openCreateAlertMailDialog()'
|
||||
);
|
||||
// Task to do buttons.
|
||||
$('#button-go_wizard').click(function(){
|
||||
if ($('#task_to_perform :selected').val() === '') {
|
||||
alert("<?php echo __('You must chose an option'); ?>");
|
||||
} else {
|
||||
switch($('#task_to_perform :selected').val()) {
|
||||
case 'wizard_agent':
|
||||
deployAgent();
|
||||
break;
|
||||
case 'check_mail_alert':
|
||||
openCreateAlertMailDialog();
|
||||
break;
|
||||
case 'check_connectivity':
|
||||
openCreateConnectivityDialog();
|
||||
break;
|
||||
case 'check_web':
|
||||
openCreateModulesDialog();
|
||||
break;
|
||||
case 'check_net':
|
||||
openCreateBasicNetDialog();
|
||||
break;
|
||||
};
|
||||
}
|
||||
});
|
||||
|
||||
function configureUpdateManager() {
|
||||
window.location = '<?php echo ui_get_full_url('index.php?sec=messages&sec2=godmode/update_manager/update_manager&tab=online'); ?>';
|
||||
|
@ -1052,29 +1238,173 @@ class WelcomeWindow extends Wizard
|
|||
window.location = '<?php echo ui_get_full_url('index.php?sec=message_list&sec2=operation/messages/message_list'); ?>';
|
||||
}
|
||||
|
||||
// Task to do actions.
|
||||
function deployAgent() {
|
||||
window.location = '<?php echo ui_get_full_url('index.php?sec=gagente&sec2=godmode/agentes/modificar_agente&show_deploy_agent=1'); ?>';
|
||||
}
|
||||
|
||||
function openCreateModulesDialog() {
|
||||
window.location = '<?php echo ui_get_full_url('index.php?sec=wizard&sec2=godmode/wizards/task_to_perform&create_modules_dialog=1'); ?>';
|
||||
$('#dialog_goliat').dialog({
|
||||
title: '<?php echo __('Create WEB monitoring'); ?>',
|
||||
resizable: true,
|
||||
draggable: true,
|
||||
modal: true,
|
||||
close: false,
|
||||
height: 375,
|
||||
width: 480,
|
||||
overlay: {
|
||||
opacity: 0.5,
|
||||
background: "black"
|
||||
}
|
||||
})
|
||||
.show();
|
||||
}
|
||||
|
||||
function openCreateConnectivityDialog() {
|
||||
window.location = '<?php echo ui_get_full_url('index.php?sec=wizard&sec2=godmode/wizards/task_to_perform&create_connectivity_dialog=1'); ?>';
|
||||
$('#dialog_connectivity').dialog({
|
||||
title: '<?php echo __('Create network monitoring'); ?>',
|
||||
resizable: true,
|
||||
draggable: true,
|
||||
modal: true,
|
||||
close: false,
|
||||
height: 350,
|
||||
width: 480,
|
||||
overlay: {
|
||||
opacity: 0.5,
|
||||
background: "black"
|
||||
}
|
||||
})
|
||||
.show();
|
||||
}
|
||||
|
||||
function openCreateBasicNetDialog() {
|
||||
window.location = '<?php echo ui_get_full_url('index.php?sec=wizard&sec2=godmode/wizards/task_to_perform&create_net_scan_dialog=1'); ?>';
|
||||
$('#dialog_basic_net').dialog({
|
||||
title: '<?php echo __('Discover my network'); ?>',
|
||||
resizable: true,
|
||||
draggable: true,
|
||||
modal: true,
|
||||
close: false,
|
||||
height: 200,
|
||||
width: 480,
|
||||
overlay: {
|
||||
opacity: 0.5,
|
||||
background: "black"
|
||||
}
|
||||
})
|
||||
.show();
|
||||
}
|
||||
|
||||
function openCreateAlertMailDialog() {
|
||||
window.location = '<?php echo ui_get_full_url('index.php?sec=wizard&sec2=godmode/wizards/task_to_perform&create_alert_mail_dialog=1'); ?>';
|
||||
$('#dialog_alert_mail').dialog({
|
||||
title: '<?php echo __('Create email alert'); ?>',
|
||||
resizable: true,
|
||||
draggable: true,
|
||||
modal: true,
|
||||
close: false,
|
||||
height: 350,
|
||||
width: 480,
|
||||
overlay: {
|
||||
opacity: 0.5,
|
||||
background: "black"
|
||||
}
|
||||
})
|
||||
.show();
|
||||
}
|
||||
|
||||
function cierre_dialog(){
|
||||
this.dialog("close");
|
||||
}
|
||||
$('#button-create_goliat').click(function(){
|
||||
$.ajax({
|
||||
async: false,
|
||||
type: "POST",
|
||||
url: "include/ajax/task_to_perform.php",
|
||||
data: {
|
||||
check_web: 1,
|
||||
id_group: $('#id_group :selected').val(),
|
||||
module_name: $('#text-module_name').val(),
|
||||
text_to_search: $('#text-text_to_search').val(),
|
||||
url_goliat: $('#text-url_goliat').val(),
|
||||
},
|
||||
success: function(data) {
|
||||
if (data !== 0) {
|
||||
data = data.replace(/(\r\n|\n|\r)/gm, "");
|
||||
console.log(data);
|
||||
$('body').append(data);
|
||||
// Close dialog
|
||||
$('.ui-dialog-titlebar-close').trigger('click');
|
||||
return false;
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$('#button-create_conectivity').click(function(){
|
||||
$.ajax({
|
||||
async: false,
|
||||
type: "POST",
|
||||
url: "include/ajax/task_to_perform.php",
|
||||
data: {
|
||||
check_connectivity: 1,
|
||||
id_group: $('#id_group :selected').val(),
|
||||
ip_target: $('#text-ip_target').val(),
|
||||
agent_name: $('#text-agent_name').val(),
|
||||
},
|
||||
success: function(data) {
|
||||
if (data !== 0) {
|
||||
data = data.replace(/(\r\n|\n|\r)/gm, "");
|
||||
console.log(data);
|
||||
$('body').append(data);
|
||||
// Close dialog
|
||||
$('.ui-dialog-titlebar-close').trigger('click');
|
||||
return false;
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$('#button-basic_net').click(function(){
|
||||
$.ajax({
|
||||
async: false,
|
||||
type: "POST",
|
||||
url: "include/ajax/task_to_perform.php",
|
||||
data: {
|
||||
create_net_scan: 1,
|
||||
ip_target: $('#text-ip_target').val(),
|
||||
},
|
||||
success: function(data) {
|
||||
if (data !== 0) {
|
||||
data = data.replace(/(\r\n|\n|\r)/gm, "");
|
||||
console.log(data);
|
||||
$('body').append(data);
|
||||
// Close dialog
|
||||
$('.ui-dialog-titlebar-close').trigger('click');
|
||||
return false;
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$('#button-alert_mail').click(function(){
|
||||
$.ajax({
|
||||
async: false,
|
||||
type: "POST",
|
||||
url: "include/ajax/task_to_perform.php",
|
||||
data: {
|
||||
create_mail_alert: 1,
|
||||
id_condition: $('#text-ip_target').val(),
|
||||
id_agent_module: $('#text-ip_target').val(),
|
||||
},
|
||||
success: function(data) {
|
||||
if (data !== 0) {
|
||||
data = data.replace(/(\r\n|\n|\r)/gm, "");
|
||||
console.log(data);
|
||||
$('body').append(data);
|
||||
// Close dialog
|
||||
$('.ui-dialog-titlebar-close').trigger('click');
|
||||
return false;
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
</script>
|
||||
<?php
|
||||
return ob_get_clean();
|
||||
|
|
|
@ -326,6 +326,8 @@ function menu_print_menu(&$menu)
|
|||
|
||||
if (isset($sub['subtype']) && $sub['subtype'] == 'nolink') {
|
||||
$submenu_output .= '<div class=" SubNoLink '.$sub_tree_class.'"><span class="w70p span_has_menu_text">'.$sub['text'].'</span><div class="w21p arrow_menu_down"></div></div>';
|
||||
} else if (isset($sub['subtype']) && $sub['subtype'] == 'nolink_no_arrow') {
|
||||
$submenu_output .= '<div class=" SubNoLink '.$sub_tree_class.'"><span class="w70p span_has_menu_text">'.$sub['text'].'</span><div class="w21p"></div></div>';
|
||||
} else if (isset($sub['subtype']) && $sub['subtype'] == 'new_blank') {
|
||||
$submenu_output .= '<a href="'.$subsec2.'" target="_blank"><div class="'.$sub_tree_class.'">'.$sub['text'].'</div></a>';
|
||||
} else {
|
||||
|
|
|
@ -0,0 +1,537 @@
|
|||
<?php
|
||||
/**
|
||||
* Agents Functions.
|
||||
*
|
||||
* @category Agents functions.
|
||||
* @package Pandora FMS
|
||||
* @subpackage User interface.
|
||||
* @version 1.0.0
|
||||
* @license See below
|
||||
*
|
||||
* ______ ___ _______ _______ ________
|
||||
* | __ \.-----.--.--.--| |.-----.----.-----. | ___| | | __|
|
||||
* | __/| _ | | _ || _ | _| _ | | ___| |__ |
|
||||
* |___| |___._|__|__|_____||_____|__| |___._| |___| |__|_|__|_______|
|
||||
*
|
||||
* ============================================================================
|
||||
* Copyright (c) 2005-2023 PandoraFMS Soluciones Tecnologicas
|
||||
* Please see http://pandorafms.org for full contribution list
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation for version 2.
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
* ============================================================================
|
||||
*/
|
||||
|
||||
// Begin.
|
||||
|
||||
|
||||
/**
|
||||
* Create_module_latency_goliat and return module id.
|
||||
*
|
||||
* @param mixed $id_agent Id agent.
|
||||
* @param mixed $module_name Module name.
|
||||
* @param mixed $id_group Id group.
|
||||
* @param mixed $url_search Url to search.
|
||||
* @param mixed $string_search Text to search.
|
||||
*
|
||||
* @return interger Module id.
|
||||
*/
|
||||
function create_module_latency_goliat($id_agent, $module_name, $id_group, $url_search, $string_search='')
|
||||
{
|
||||
if ($string_search !== '') {
|
||||
$str_search = 'check_string '.$string_search.'';
|
||||
}
|
||||
|
||||
include_once 'include/functions_modules.php';
|
||||
|
||||
$array_values = [
|
||||
'id_tipo_modulo' => '30',
|
||||
'descripcion' => '',
|
||||
'max' => '0',
|
||||
'min' => '0',
|
||||
'snmp_oid' => '',
|
||||
'snmp_community' => 'public',
|
||||
'id_module_group' => $id_group,
|
||||
'module_interval' => '300',
|
||||
'module_ff_interval' => '0',
|
||||
'ip_target' => '',
|
||||
'tcp_port' => '0',
|
||||
'tcp_rcv' => '',
|
||||
'tcp_send' => '',
|
||||
'id_export' => '0',
|
||||
'plugin_user' => '',
|
||||
'plugin_pass' => '0',
|
||||
'plugin_parameter' => 'task_begin
|
||||
get '.$url_search.'
|
||||
resource 1
|
||||
'.$str_search.'
|
||||
task_end',
|
||||
'id_plugin' => '0',
|
||||
'post_process' => '0',
|
||||
'prediction_module' => '0',
|
||||
'max_timeout' => '0',
|
||||
'max_retries' => '0',
|
||||
'disabled' => '',
|
||||
'id_modulo' => '7',
|
||||
'custom_id' => '',
|
||||
'history_data' => '1',
|
||||
'dynamic_interval' => '0',
|
||||
'dynamic_max' => '0',
|
||||
'dynamic_min' => '0',
|
||||
'dynamic_two_tailed' => '0',
|
||||
'parent_module_id' => '0',
|
||||
'min_warning' => '0',
|
||||
'max_warning' => '0',
|
||||
'str_warning' => '',
|
||||
'min_critical' => '0',
|
||||
'max_critical' => '0',
|
||||
'str_critical' => '',
|
||||
'custom_string_1' => '',
|
||||
'custom_string_2' => '',
|
||||
'custom_string_3' => '',
|
||||
'custom_integer_1' => '0',
|
||||
'custom_integer_2' => '0',
|
||||
'min_ff_event' => '0',
|
||||
'min_ff_event_normal' => '0',
|
||||
'min_ff_event_warning' => '0',
|
||||
'min_ff_event_critical' => '0',
|
||||
'ff_type' => '0',
|
||||
'each_ff' => '0',
|
||||
'ff_timeout' => '0',
|
||||
'unit' => '',
|
||||
'macros' => '',
|
||||
'quiet' => '0',
|
||||
'cps' => '0',
|
||||
'critical_instructions' => '',
|
||||
'warning_instructions' => '',
|
||||
'unknown_instructions' => '',
|
||||
'critical_inverse' => '0',
|
||||
'warning_inverse' => '0',
|
||||
'percentage_critical' => '0',
|
||||
'percentage_warning' => '0',
|
||||
'cron_interval' => '* * * * *',
|
||||
'id_category' => '0',
|
||||
'disabled_types_event' => '{\"going_unknown\":0}',
|
||||
'module_macros' => 'W10=',
|
||||
'warning_time' => '0',
|
||||
];
|
||||
return modules_create_agent_module($id_agent, $module_name.'_latency', $array_values);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Create_module_status_goliat and return module id.
|
||||
*
|
||||
* @param mixed $id_agent Id agent.
|
||||
* @param mixed $module_name Module name.
|
||||
* @param mixed $id_group Id group.
|
||||
* @param mixed $url_search Url to search.
|
||||
* @param mixed $string_search Text to search.
|
||||
*
|
||||
* @return interger Module id.
|
||||
*/
|
||||
function create_module_status_goliat($id_agent, $module_name, $id_group, $url_search, $string_search='')
|
||||
{
|
||||
if ($string_search !== '') {
|
||||
$str_search = 'check_string '.$string_search.' ';
|
||||
}
|
||||
|
||||
include_once 'include/functions_modules.php';
|
||||
|
||||
$array_values = [
|
||||
'id_tipo_modulo' => '31',
|
||||
'descripcion' => '',
|
||||
'max' => '0',
|
||||
'min' => '0',
|
||||
'snmp_oid' => '',
|
||||
'snmp_community' => 'public',
|
||||
'id_module_group' => $id_group,
|
||||
'module_interval' => '300',
|
||||
'module_ff_interval' => '0',
|
||||
'ip_target' => '',
|
||||
'tcp_port' => '0',
|
||||
'tcp_rcv' => '',
|
||||
'tcp_send' => '',
|
||||
'id_export' => '0',
|
||||
'plugin_user' => '',
|
||||
'plugin_pass' => '0',
|
||||
'plugin_parameter' => 'task_begin
|
||||
get '.$url_search.'
|
||||
resource 1
|
||||
'.$str_search.'
|
||||
task_end',
|
||||
'id_plugin' => '0',
|
||||
'post_process' => '0',
|
||||
'prediction_module' => '0',
|
||||
'max_timeout' => '0',
|
||||
'max_retries' => '0',
|
||||
'disabled' => '',
|
||||
'id_modulo' => '7',
|
||||
'custom_id' => '',
|
||||
'history_data' => '1',
|
||||
'dynamic_interval' => '0',
|
||||
'dynamic_max' => '0',
|
||||
'dynamic_min' => '0',
|
||||
'dynamic_two_tailed' => '0',
|
||||
'parent_module_id' => '0',
|
||||
'min_warning' => '0',
|
||||
'max_warning' => '0',
|
||||
'str_warning' => '',
|
||||
'min_critical' => '0',
|
||||
'max_critical' => '0',
|
||||
'str_critical' => '',
|
||||
'custom_string_1' => '',
|
||||
'custom_string_2' => '',
|
||||
'custom_string_3' => '',
|
||||
'custom_integer_1' => '0',
|
||||
'custom_integer_2' => '0',
|
||||
'min_ff_event' => '0',
|
||||
'min_ff_event_normal' => '0',
|
||||
'min_ff_event_warning' => '0',
|
||||
'min_ff_event_critical' => '0',
|
||||
'ff_type' => '0',
|
||||
'each_ff' => '0',
|
||||
'ff_timeout' => '0',
|
||||
'unit' => '',
|
||||
'macros' => '',
|
||||
'quiet' => '0',
|
||||
'cps' => '0',
|
||||
'critical_instructions' => '',
|
||||
'warning_instructions' => '',
|
||||
'unknown_instructions' => '',
|
||||
'critical_inverse' => '0',
|
||||
'warning_inverse' => '0',
|
||||
'percentage_critical' => '0',
|
||||
'percentage_warning' => '0',
|
||||
'cron_interval' => '* * * * *',
|
||||
'id_category' => '0',
|
||||
'disabled_types_event' => '{\"going_unknown\":0}',
|
||||
'module_macros' => 'W10=',
|
||||
'warning_time' => '0',
|
||||
];
|
||||
return modules_create_agent_module($id_agent, $module_name.'_status', $array_values);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Create module basic network and return module id.
|
||||
*
|
||||
* @param mixed $id_agent Id agent.
|
||||
* @param mixed $id_group Id group.
|
||||
* @param mixed $ip_target Ip target.
|
||||
*
|
||||
* @return interger Module id.
|
||||
*/
|
||||
function create_module_basic_network($id_agent, $id_group, $ip_target)
|
||||
{
|
||||
include_once 'include/functions_modules.php';
|
||||
|
||||
$array_values = [
|
||||
'id_tipo_modulo' => '6',
|
||||
'descripcion' => 'Basic network check (ping)',
|
||||
'max' => '0',
|
||||
'min' => '0',
|
||||
'snmp_oid' => '',
|
||||
'snmp_community' => 'public',
|
||||
'id_module_group' => $id_group,
|
||||
'module_interval' => '300',
|
||||
'module_ff_interval' => '0',
|
||||
'ip_target' => $ip_target,
|
||||
'tcp_port' => '0',
|
||||
'tcp_rcv' => '',
|
||||
'tcp_send' => '',
|
||||
'id_export' => '0',
|
||||
'plugin_user' => '',
|
||||
'plugin_pass' => '0',
|
||||
'plugin_parameter' => '',
|
||||
'id_plugin' => '0',
|
||||
'post_process' => '0',
|
||||
'prediction_module' => '0',
|
||||
'max_timeout' => '0',
|
||||
'max_retries' => '0',
|
||||
'disabled' => '',
|
||||
'id_modulo' => '2',
|
||||
'custom_id' => '',
|
||||
'history_data' => '1',
|
||||
'dynamic_interval' => '0',
|
||||
'dynamic_max' => '0',
|
||||
'dynamic_min' => '0',
|
||||
'dynamic_two_tailed' => '0',
|
||||
'parent_module_id' => '0',
|
||||
'min_warning' => '0',
|
||||
'max_warning' => '0',
|
||||
'str_warning' => '',
|
||||
'min_critical' => '0',
|
||||
'max_critical' => '0',
|
||||
'str_critical' => '',
|
||||
'custom_string_1' => '',
|
||||
'custom_string_2' => '',
|
||||
'custom_string_3' => '',
|
||||
'custom_integer_1' => '0',
|
||||
'custom_integer_2' => '0',
|
||||
'min_ff_event' => '0',
|
||||
'min_ff_event_normal' => '0',
|
||||
'min_ff_event_warning' => '0',
|
||||
'min_ff_event_critical' => '0',
|
||||
'ff_type' => '0',
|
||||
'each_ff' => '0',
|
||||
'ff_timeout' => '0',
|
||||
'unit' => '',
|
||||
'macros' => '',
|
||||
'quiet' => '0',
|
||||
'cps' => '0',
|
||||
'critical_instructions' => '',
|
||||
'warning_instructions' => '',
|
||||
'unknown_instructions' => '',
|
||||
'critical_inverse' => '0',
|
||||
'warning_inverse' => '0',
|
||||
'percentage_critical' => '0',
|
||||
'percentage_warning' => '0',
|
||||
'cron_interval' => '* * * * *',
|
||||
'id_category' => '0',
|
||||
'disabled_types_event' => '{\"going_unknown\":0}',
|
||||
'module_macros' => 'W10=',
|
||||
'warning_time' => '0',
|
||||
];
|
||||
return modules_create_agent_module($id_agent, 'Basic_Network_Check', $array_values);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Create module latency network and return module id.
|
||||
*
|
||||
* @param mixed $id_agent Id agent.
|
||||
* @param mixed $id_group Id group.
|
||||
* @param mixed $ip_target Ip target.
|
||||
*
|
||||
* @return interger Module id.
|
||||
*/
|
||||
function create_module_latency_network($id_agent, $id_group, $ip_target)
|
||||
{
|
||||
include_once 'include/functions_modules.php';
|
||||
|
||||
$array_values = [
|
||||
'id_tipo_modulo' => '7',
|
||||
'descripcion' => 'Basic network connectivity check to measure network latency in miliseconds',
|
||||
'max' => '0',
|
||||
'min' => '0',
|
||||
'snmp_oid' => '',
|
||||
'snmp_community' => 'public',
|
||||
'id_module_group' => $id_group,
|
||||
'module_interval' => '300',
|
||||
'module_ff_interval' => '0',
|
||||
'ip_target' => $ip_target,
|
||||
'tcp_port' => '0',
|
||||
'tcp_rcv' => '',
|
||||
'tcp_send' => '',
|
||||
'id_export' => '0',
|
||||
'plugin_user' => '',
|
||||
'plugin_pass' => '0',
|
||||
'plugin_parameter' => '',
|
||||
'id_plugin' => '0',
|
||||
'post_process' => '0',
|
||||
'prediction_module' => '0',
|
||||
'max_timeout' => '0',
|
||||
'max_retries' => '0',
|
||||
'disabled' => '',
|
||||
'id_modulo' => '2',
|
||||
'custom_id' => '',
|
||||
'history_data' => '1',
|
||||
'dynamic_interval' => '0',
|
||||
'dynamic_max' => '0',
|
||||
'dynamic_min' => '0',
|
||||
'dynamic_two_tailed' => '1',
|
||||
'parent_module_id' => '0',
|
||||
'min_warning' => '0',
|
||||
'max_warning' => '0',
|
||||
'str_warning' => '',
|
||||
'min_critical' => '0',
|
||||
'max_critical' => '0',
|
||||
'str_critical' => '',
|
||||
'custom_string_1' => '',
|
||||
'custom_string_2' => '',
|
||||
'custom_string_3' => '',
|
||||
'custom_integer_1' => '0',
|
||||
'custom_integer_2' => '0',
|
||||
'min_ff_event' => '0',
|
||||
'min_ff_event_normal' => '0',
|
||||
'min_ff_event_warning' => '0',
|
||||
'min_ff_event_critical' => '0',
|
||||
'ff_type' => '0',
|
||||
'each_ff' => '0',
|
||||
'ff_timeout' => '0',
|
||||
'unit' => '',
|
||||
'macros' => '',
|
||||
'quiet' => '0',
|
||||
'cps' => '0',
|
||||
'critical_instructions' => '',
|
||||
'warning_instructions' => '',
|
||||
'unknown_instructions' => '',
|
||||
'critical_inverse' => '0',
|
||||
'warning_inverse' => '0',
|
||||
'percentage_critical' => '0',
|
||||
'percentage_warning' => '0',
|
||||
'cron_interval' => '* * * * *',
|
||||
'id_category' => '0',
|
||||
'disabled_types_event' => '{\"going_unknown\":0}',
|
||||
'module_macros' => 'W10=',
|
||||
'warning_time' => '0',
|
||||
];
|
||||
return modules_create_agent_module($id_agent, 'Basic_Network_Latency', $array_values);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Create module packet lost and return module id.
|
||||
*
|
||||
* @param mixed $id_agent Id agent.
|
||||
* @param mixed $id_group Id group.
|
||||
* @param mixed $ip_target Ip target.
|
||||
*
|
||||
* @return interger Module id.
|
||||
*/
|
||||
function create_module_packet_lost($id_agent, $id_group, $ip_target)
|
||||
{
|
||||
include_once 'include/functions_modules.php';
|
||||
|
||||
$array_values = [
|
||||
'id_tipo_modulo' => '1',
|
||||
'descripcion' => 'Basic network connectivity check to measure packet loss in %',
|
||||
'max' => '0',
|
||||
'min' => '0',
|
||||
'snmp_oid' => '',
|
||||
'snmp_community' => 'public',
|
||||
'id_module_group' => $id_group,
|
||||
'module_interval' => '300',
|
||||
'module_ff_interval' => '0',
|
||||
'ip_target' => '',
|
||||
'tcp_port' => '0',
|
||||
'tcp_rcv' => '',
|
||||
'tcp_send' => '',
|
||||
'id_export' => '0',
|
||||
'plugin_user' => '',
|
||||
'plugin_pass' => '0',
|
||||
'plugin_parameter' => '',
|
||||
'id_plugin' => '9',
|
||||
'post_process' => '0',
|
||||
'prediction_module' => '0',
|
||||
'max_timeout' => '0',
|
||||
'max_retries' => '0',
|
||||
'disabled' => '',
|
||||
'id_modulo' => '4',
|
||||
'custom_id' => '',
|
||||
'history_data' => '1',
|
||||
'dynamic_interval' => '0',
|
||||
'dynamic_max' => '0',
|
||||
'dynamic_min' => '0',
|
||||
'dynamic_two_tailed' => '1',
|
||||
'parent_module_id' => '0',
|
||||
'min_warning' => '0',
|
||||
'max_warning' => '0',
|
||||
'str_warning' => '',
|
||||
'min_critical' => '0',
|
||||
'max_critical' => '0',
|
||||
'str_critical' => '',
|
||||
'custom_string_1' => '',
|
||||
'custom_string_2' => '',
|
||||
'custom_string_3' => '',
|
||||
'custom_integer_1' => '0',
|
||||
'custom_integer_2' => '0',
|
||||
'min_ff_event' => '0',
|
||||
'min_ff_event_normal' => '0',
|
||||
'min_ff_event_warning' => '0',
|
||||
'min_ff_event_critical' => '0',
|
||||
'ff_type' => '0',
|
||||
'each_ff' => '0',
|
||||
'ff_timeout' => '0',
|
||||
'unit' => '',
|
||||
'macros' => '{"1":{"macro":"_field1_","desc":"Test time","help":"","value":"8","hide":""},"2":{"macro":"_field2_","desc":"Target IP","help":"","value":"'.$ip_target.'","hide":""}}',
|
||||
'quiet' => '0',
|
||||
'cps' => '0',
|
||||
'critical_instructions' => '',
|
||||
'warning_instructions' => '',
|
||||
'unknown_instructions' => '',
|
||||
'critical_inverse' => '0',
|
||||
'warning_inverse' => '0',
|
||||
'percentage_critical' => '0',
|
||||
'percentage_warning' => '0',
|
||||
'cron_interval' => '* * * * *',
|
||||
'id_category' => '0',
|
||||
'disabled_types_event' => '{\"going_unknown\":0}',
|
||||
'module_macros' => 'W10=',
|
||||
'warning_time' => '0',
|
||||
];
|
||||
return modules_create_agent_module($id_agent, 'Basic_Network_Packetloss', $array_values);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Create module packet lost and return module id.
|
||||
*
|
||||
* @param string $ip_target Ip and red mask.
|
||||
*
|
||||
* @return interger Module id.
|
||||
*/
|
||||
function create_net_scan($ip_target)
|
||||
{
|
||||
global $config;
|
||||
include_once 'HostDevices.class.php';
|
||||
$HostDevices = new HostDevices(1);
|
||||
$id_recon_server = db_get_row_filter('tserver', ['server_type' => SERVER_TYPE_DISCOVERY], 'id_server')['id_server'];
|
||||
|
||||
$_POST = [
|
||||
'page' => '1',
|
||||
'interval_manual_defined' => '1',
|
||||
'interval_select' => '-1',
|
||||
'interval_text' => '0',
|
||||
'interval' => '0',
|
||||
'interval_units' => '1',
|
||||
'taskname' => __('Basic network'),
|
||||
'id_recon_server' => $id_recon_server,
|
||||
'network' => $ip_target,
|
||||
'id_group' => '8',
|
||||
'comment' => __('Created on welcome'),
|
||||
];
|
||||
$task_created = $HostDevices->parseNetScan();
|
||||
if ($task_created === true) {
|
||||
$HostDevicesFinal = new HostDevices(2);
|
||||
$_POST = [
|
||||
'task' => $HostDevices->task['id_rt'],
|
||||
'page' => '2',
|
||||
'recon_ports' => '',
|
||||
'auto_monitor' => 'on',
|
||||
'id_network_profile' => ['0' => '2'],
|
||||
'review_results' => 'on',
|
||||
'review_limited' => '0',
|
||||
'snmp_enabled' => 'on',
|
||||
'snmp_version' => '1',
|
||||
'snmp_skip_non_enabled_ifs' => 'on',
|
||||
'community' => '',
|
||||
'snmp_context' => '',
|
||||
'snmp_auth_user' => '',
|
||||
'snmp_security_level' => 'authNoPriv',
|
||||
'snmp_auth_method' => 'MD5',
|
||||
'snmp_auth_pass' => '',
|
||||
'snmp_privacy_method' => 'AES',
|
||||
'snmp_privacy_pass' => '',
|
||||
'os_detect' => 'on',
|
||||
'resolve_names' => 'on',
|
||||
'parent_detection' => 'on',
|
||||
'parent_recursion' => 'on',
|
||||
'vlan_enabled' => 'on',
|
||||
];
|
||||
|
||||
$task_final_created = $HostDevicesFinal->parseNetScan();
|
||||
if ($task_final_created === true) {
|
||||
$net_scan_id = $HostDevices->task['id_rt'];
|
||||
unset($HostDevices, $HostDevicesFinal);
|
||||
return $net_scan_id;
|
||||
}
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
|
@ -88,7 +88,8 @@
|
|||
}
|
||||
|
||||
#li-div_diagnosis,
|
||||
#li-div_task_todo {
|
||||
#li-div_task_todo,
|
||||
#li-div_wizard_agent {
|
||||
border-left: unset !important;
|
||||
}
|
||||
|
||||
|
@ -96,3 +97,18 @@
|
|||
#div_task_todo > label {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
button.buttonButton.onlyIcon.fail,
|
||||
button.submitButton.onlyIcon.fail {
|
||||
mask: url(../../images/fail@svg.svg) no-repeat center / contain;
|
||||
-webkit-mask: url(../../images/fail@svg.svg) no-repeat center / contain;
|
||||
}
|
||||
|
||||
.select2-container .select2-container--default .select2-container--open {
|
||||
z-index: 2000;
|
||||
}
|
||||
|
||||
#div_wizard_agent > .select2 {
|
||||
width: 75% !important;
|
||||
max-width: 75% !important;
|
||||
}
|
||||
|
|
|
@ -11841,10 +11841,6 @@ span.help_icon_15px > img {
|
|||
height: 15px !important;
|
||||
}
|
||||
|
||||
.select2-dropdown {
|
||||
z-index: 1116 !important;
|
||||
}
|
||||
|
||||
.icon_connection_check {
|
||||
width: 65px !important;
|
||||
height: 65px !important;
|
||||
|
|
|
@ -71,7 +71,7 @@
|
|||
position: absolute;
|
||||
left: -100000px;
|
||||
width: 100%;
|
||||
z-index: 1115;
|
||||
z-index: 1118;
|
||||
}
|
||||
.select2-results {
|
||||
display: block;
|
||||
|
|
Loading…
Reference in New Issue