mirror of
https://github.com/pandorafms/pandorafms.git
synced 2025-07-28 08:14:38 +02:00
Merge remote-tracking branch 'origin/develop' into ent-9640-agrupacion-de-graficas-en-periodos-de-tiempo
Conflicts: pandora_console/include/styles/pandora.css
This commit is contained in:
commit
cc12c77008
@ -1,6 +1,6 @@
|
|||||||
# Base config file for Pandora FMS Windows Agent
|
# Base config file for Pandora FMS Windows Agent
|
||||||
# (c) 2006-2023 Pandora FMS
|
# (c) 2006-2023 Pandora FMS
|
||||||
# Version 7.0NG.774
|
# Version 7.0NG.774
|
||||||
# This program is Free Software, you can redistribute it and/or modify it
|
# This program is Free Software, you can redistribute it and/or modify it
|
||||||
# under the terms of the GNU General Public Licence as published by the Free Software
|
# under the terms of the GNU General Public Licence as published by the Free Software
|
||||||
# Foundation; either version 2 of the Licence or any later version
|
# Foundation; either version 2 of the Licence or any later version
|
||||||
|
@ -2179,16 +2179,7 @@ sub configure ($) {
|
|||||||
|
|
||||||
#Launch tentacle server in proxy mode if configured
|
#Launch tentacle server in proxy mode if configured
|
||||||
if ($Conf{'proxy_mode'}) {
|
if ($Conf{'proxy_mode'}) {
|
||||||
|
return 1 if (launch_tentacle_proxy() != 0);
|
||||||
#Check if user is root
|
|
||||||
if ($> != 0) {
|
|
||||||
if (launch_tentacle_proxy() != 0) {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
error ('Proxy mode can not be launched as root');
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# Add the plugins directory to the PATH
|
# Add the plugins directory to the PATH
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
package: pandorafms-agent-unix
|
package: pandorafms-agent-unix
|
||||||
Version: 7.0NG.774-231211
|
Version: 7.0NG.774-231213
|
||||||
Architecture: all
|
Architecture: all
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Section: admin
|
Section: admin
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
pandora_version="7.0NG.774-231211"
|
pandora_version="7.0NG.774-231213"
|
||||||
|
|
||||||
echo "Test if you has the tools for to make the packages."
|
echo "Test if you has the tools for to make the packages."
|
||||||
whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null
|
whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null
|
||||||
|
@ -1039,7 +1039,7 @@ my $Sem = undef;
|
|||||||
my $ThreadSem = undef;
|
my $ThreadSem = undef;
|
||||||
|
|
||||||
use constant AGENT_VERSION => '7.0NG.774';
|
use constant AGENT_VERSION => '7.0NG.774';
|
||||||
use constant AGENT_BUILD => '231211';
|
use constant AGENT_BUILD => '231213';
|
||||||
|
|
||||||
# Agent log default file size maximum and instances
|
# Agent log default file size maximum and instances
|
||||||
use constant DEFAULT_MAX_LOG_SIZE => 600000;
|
use constant DEFAULT_MAX_LOG_SIZE => 600000;
|
||||||
@ -4436,14 +4436,7 @@ my $PID = $$;
|
|||||||
|
|
||||||
#Launch tentacle server in proxy mode if configured
|
#Launch tentacle server in proxy mode if configured
|
||||||
if ($Conf{'proxy_mode'}) {
|
if ($Conf{'proxy_mode'}) {
|
||||||
|
launch_tentacle_proxy();
|
||||||
#Check if user is root
|
|
||||||
if ($> != 0) {
|
|
||||||
launch_tentacle_proxy();
|
|
||||||
} else {
|
|
||||||
log_message ('error', 'Proxy mode can not be launched as root');
|
|
||||||
exit 1;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# Advice if YAML::Tiny is allowed in this system
|
# Advice if YAML::Tiny is allowed in this system
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
%global __os_install_post %{nil}
|
%global __os_install_post %{nil}
|
||||||
%define name pandorafms_agent_linux
|
%define name pandorafms_agent_linux
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.774
|
||||||
%define release 231211
|
%define release 231213
|
||||||
|
|
||||||
Summary: Pandora FMS Linux agent, PERL version
|
Summary: Pandora FMS Linux agent, PERL version
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
%define name pandorafms_agent_linux_bin
|
%define name pandorafms_agent_linux_bin
|
||||||
%define source_name pandorafms_agent_linux
|
%define source_name pandorafms_agent_linux
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.774
|
||||||
%define release 231211
|
%define release 231213
|
||||||
%define debug_package %{nil}
|
%define debug_package %{nil}
|
||||||
|
|
||||||
Summary: Pandora FMS Linux agent, binary version
|
Summary: Pandora FMS Linux agent, binary version
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
%define name pandorafms_agent_linux_bin
|
%define name pandorafms_agent_linux_bin
|
||||||
%define source_name pandorafms_agent_linux
|
%define source_name pandorafms_agent_linux
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.774
|
||||||
%define release 231211
|
%define release 231213
|
||||||
%define debug_package %{nil}
|
%define debug_package %{nil}
|
||||||
|
|
||||||
Summary: Pandora FMS Linux agent, binary version
|
Summary: Pandora FMS Linux agent, binary version
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
%define name pandorafms_agent_linux_bin
|
%define name pandorafms_agent_linux_bin
|
||||||
%define source_name pandorafms_agent_linux
|
%define source_name pandorafms_agent_linux
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.774
|
||||||
%define release 231211
|
%define release 231213
|
||||||
|
|
||||||
Summary: Pandora FMS Linux agent, binary version
|
Summary: Pandora FMS Linux agent, binary version
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
%global __os_install_post %{nil}
|
%global __os_install_post %{nil}
|
||||||
%define name pandorafms_agent_linux
|
%define name pandorafms_agent_linux
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.774
|
||||||
%define release 231211
|
%define release 231213
|
||||||
|
|
||||||
Summary: Pandora FMS Linux agent, PERL version
|
Summary: Pandora FMS Linux agent, PERL version
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
# **********************************************************************
|
# **********************************************************************
|
||||||
|
|
||||||
PI_VERSION="7.0NG.774"
|
PI_VERSION="7.0NG.774"
|
||||||
PI_BUILD="231211"
|
PI_BUILD="231213"
|
||||||
OS_NAME=`uname -s`
|
OS_NAME=`uname -s`
|
||||||
|
|
||||||
FORCE=0
|
FORCE=0
|
||||||
|
@ -186,7 +186,7 @@ UpgradeApplicationID
|
|||||||
{}
|
{}
|
||||||
|
|
||||||
Version
|
Version
|
||||||
{231211}
|
{231213}
|
||||||
|
|
||||||
ViewReadme
|
ViewReadme
|
||||||
{Yes}
|
{Yes}
|
||||||
|
@ -30,7 +30,7 @@ using namespace Pandora;
|
|||||||
using namespace Pandora_Strutils;
|
using namespace Pandora_Strutils;
|
||||||
|
|
||||||
#define PATH_SIZE _MAX_PATH+1
|
#define PATH_SIZE _MAX_PATH+1
|
||||||
#define PANDORA_VERSION ("7.0NG.774 Build 231211")
|
#define PANDORA_VERSION ("7.0NG.774 Build 231213")
|
||||||
|
|
||||||
string pandora_path;
|
string pandora_path;
|
||||||
string pandora_dir;
|
string pandora_dir;
|
||||||
|
@ -11,7 +11,7 @@ BEGIN
|
|||||||
VALUE "LegalCopyright", "Pandora FMS"
|
VALUE "LegalCopyright", "Pandora FMS"
|
||||||
VALUE "OriginalFilename", "PandoraAgent.exe"
|
VALUE "OriginalFilename", "PandoraAgent.exe"
|
||||||
VALUE "ProductName", "Pandora FMS Windows Agent"
|
VALUE "ProductName", "Pandora FMS Windows Agent"
|
||||||
VALUE "ProductVersion", "(7.0NG.774(Build 231211))"
|
VALUE "ProductVersion", "(7.0NG.774(Build 231213))"
|
||||||
VALUE "FileVersion", "1.0.0.0"
|
VALUE "FileVersion", "1.0.0.0"
|
||||||
END
|
END
|
||||||
END
|
END
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
package: pandorafms-console
|
package: pandorafms-console
|
||||||
Version: 7.0NG.774-231211
|
Version: 7.0NG.774-231213
|
||||||
Architecture: all
|
Architecture: all
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Section: admin
|
Section: admin
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
pandora_version="7.0NG.774-231211"
|
pandora_version="7.0NG.774-231213"
|
||||||
|
|
||||||
package_pear=0
|
package_pear=0
|
||||||
package_pandora=1
|
package_pandora=1
|
||||||
|
@ -34,11 +34,11 @@ if ((bool) $config['metaconsole']) {
|
|||||||
include_once $config['homedir'].'/include/functions_modules.php';
|
include_once $config['homedir'].'/include/functions_modules.php';
|
||||||
include_once $config['homedir'].'/include/functions_users.php';
|
include_once $config['homedir'].'/include/functions_users.php';
|
||||||
} else {
|
} else {
|
||||||
include_once '../include/config.php';
|
include_once __DIR__.'/../include/config.php';
|
||||||
include_once '../include/functions_agents.php';
|
include_once __DIR__.'/../include/functions_agents.php';
|
||||||
include_once '../include/functions_reporting.php';
|
include_once __DIR__.'/../include/functions_reporting.php';
|
||||||
include_once '../include/functions_modules.php';
|
include_once __DIR__.'/../include/functions_modules.php';
|
||||||
include_once '../include/functions_users.php';
|
include_once __DIR__.'/../include/functions_users.php';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ function view_logfile($file_name, $toggle=false)
|
|||||||
} else {
|
} else {
|
||||||
$file_size = filesize($file_name);
|
$file_size = filesize($file_name);
|
||||||
|
|
||||||
if ($memory_limit < $file_size) {
|
if ($memory_limit < $file_size && $memory_limit !== '-1') {
|
||||||
$code .= '<pre><h2>'.$file_name.' ('.__('File is too large than PHP memory allocated in the system.').')</h2>';
|
$code .= '<pre><h2>'.$file_name.' ('.__('File is too large than PHP memory allocated in the system.').')</h2>';
|
||||||
$code .= '<h2>'.__('The preview file is imposible.').'</h2>';
|
$code .= '<h2>'.__('The preview file is imposible.').'</h2>';
|
||||||
} else if ($file_size > ($config['max_log_size'] * 1000)) {
|
} else if ($file_size > ($config['max_log_size'] * 1000)) {
|
||||||
@ -117,6 +117,7 @@ function pandoralogs_extension_main()
|
|||||||
view_logfile($config['homedir'].'/log/console.log', true);
|
view_logfile($config['homedir'].'/log/console.log', true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
view_logfile('/var/log/php-fpm/www-error.log', true);
|
||||||
view_logfile($logs_directory.'/pandora_server.log', true);
|
view_logfile($logs_directory.'/pandora_server.log', true);
|
||||||
view_logfile($logs_directory.'/pandora_server.error', true);
|
view_logfile($logs_directory.'/pandora_server.error', true);
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
pandorafms.vmware=9959cc3e5cc6bfcfadd6d05b56d4a11b
|
pandorafms.vmware=248788e0fb2cd4e11623e4a52ee7d05b
|
||||||
pandorafms.mysql=fadb4750d18285c0eca34f47c6aa3cfe
|
pandorafms.mysql=fadb4750d18285c0eca34f47c6aa3cfe
|
||||||
pandorafms.mssql=1cc215409741d19080269ffba112810e
|
pandorafms.mssql=1cc215409741d19080269ffba112810e
|
||||||
pandorafms.oracle=2d9320a514d1e48a0b2804e1653c31c6
|
pandorafms.oracle=2d9320a514d1e48a0b2804e1653c31c6
|
||||||
|
@ -52,4 +52,6 @@ UPDATE `tagente_modulo` INNER JOIN `tservice` ON `tagente_modulo`.`custom_intege
|
|||||||
UPDATE talert_actions SET field2='[PANDORA] Alert FIRED on _agent_ / _module_ / _timestamp_ / _data_' WHERE id=9;
|
UPDATE talert_actions SET field2='[PANDORA] Alert FIRED on _agent_ / _module_ / _timestamp_ / _data_' WHERE id=9;
|
||||||
UPDATE talert_actions SET field2='[PANDORA] Alert FIRED on _agent_ / _module_ / _timestamp_ / _data_' WHERE id=11;
|
UPDATE talert_actions SET field2='[PANDORA] Alert FIRED on _agent_ / _module_ / _timestamp_ / _data_' WHERE id=11;
|
||||||
|
|
||||||
|
UPDATE `tdiscovery_apps` SET `version` = '1.2' WHERE `short_name` = 'pandorafms.vmware';
|
||||||
|
|
||||||
COMMIT;
|
COMMIT;
|
||||||
|
@ -455,19 +455,28 @@ echo sprintf('<div id="header_table" class="header_table_%s">', $menuTypeClass);
|
|||||||
);
|
);
|
||||||
$header_logout .= '</a></div>';
|
$header_logout .= '</a></div>';
|
||||||
|
|
||||||
|
if (enterprise_installed()) {
|
||||||
|
$subtitle_header = $config['custom_subtitle_header'];
|
||||||
|
$class_header = '';
|
||||||
|
} else {
|
||||||
|
$subtitle_header = __('the Flexible Monitoring System (OpenSource version)');
|
||||||
|
echo '<div id="dialog_why_enterprise" class="invisible"></div>';
|
||||||
|
$class_header = 'underline-hover modal_module_list';
|
||||||
|
}
|
||||||
|
|
||||||
if (is_reporting_console_node() === true) {
|
if (is_reporting_console_node() === true) {
|
||||||
echo '<div class="header_left">';
|
echo '<div class="header_left '.$class_header.'">';
|
||||||
echo '<span class="header_title">';
|
echo '<span class="header_title">';
|
||||||
echo $config['custom_title_header'];
|
echo $config['custom_title_header'];
|
||||||
echo '</span>';
|
echo '</span>';
|
||||||
echo '<span class="header_subtitle">';
|
echo '<span class="header_subtitle">';
|
||||||
echo $config['custom_subtitle_header'];
|
echo $subtitle_header;
|
||||||
echo '</span>';
|
echo '</span>';
|
||||||
echo '</div>';
|
echo '</div>';
|
||||||
echo '<div class="header_center"></div>';
|
echo '<div class="header_center"></div>';
|
||||||
echo '<div class="header_right">'.$modal_help, $header_user, $header_logout.'</div>';
|
echo '<div class="header_right">'.$modal_help, $header_user, $header_logout.'</div>';
|
||||||
} else {
|
} else {
|
||||||
echo '<div class="header_left"><span class="header_title">'.$config['custom_title_header'].'</span><span class="header_subtitle">'.$config['custom_subtitle_header'].'</span></div>
|
echo '<div class="header_left '.$class_header.'"><span class="header_title">'.$config['custom_title_header'].'</span><span class="header_subtitle">'.$subtitle_header.'</span></div>
|
||||||
<div class="header_center">'.$header_searchbar.'</div>
|
<div class="header_center">'.$header_searchbar.'</div>
|
||||||
<div class="header_right">'.$header_autorefresh, $header_autorefresh_counter, $header_discovery, $header_welcome, $servers_list, $modal_help, $header_setup, $header_user, $header_logout.'</div>';
|
<div class="header_right">'.$header_autorefresh, $header_autorefresh_counter, $header_discovery, $header_welcome, $servers_list, $modal_help, $header_setup, $header_user, $header_logout.'</div>';
|
||||||
}
|
}
|
||||||
@ -916,6 +925,46 @@ echo sprintf('<div id="header_table" class="header_table_%s">', $menuTypeClass);
|
|||||||
|
|
||||||
$(document).ready (function () {
|
$(document).ready (function () {
|
||||||
|
|
||||||
|
<?php if (enterprise_installed() === false) { ?>
|
||||||
|
$('.header_left').on('click', function(){
|
||||||
|
// Hidden tips modal.
|
||||||
|
$(".window").css("display", "none");
|
||||||
|
jQuery.post(
|
||||||
|
"ajax.php",
|
||||||
|
{
|
||||||
|
page: "include/functions_menu",
|
||||||
|
'why_enterprise': "true"
|
||||||
|
},
|
||||||
|
function(data) {
|
||||||
|
if (data) {
|
||||||
|
$("#dialog_why_enterprise").html(data);
|
||||||
|
// Open dialog
|
||||||
|
$("#dialog_why_enterprise").dialog({
|
||||||
|
resizable: false,
|
||||||
|
draggable: false,
|
||||||
|
modal: true,
|
||||||
|
show: {
|
||||||
|
effect: "fade",
|
||||||
|
duration: 200
|
||||||
|
},
|
||||||
|
hide: {
|
||||||
|
effect: "fade",
|
||||||
|
duration: 200
|
||||||
|
},
|
||||||
|
closeOnEscape: true,
|
||||||
|
width: 700,
|
||||||
|
height: 450,
|
||||||
|
close: function(){
|
||||||
|
$('#dialog_why_enterprise').html('');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"html"
|
||||||
|
);
|
||||||
|
});
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
// Check new notifications on a periodic way
|
// Check new notifications on a periodic way
|
||||||
setInterval(check_new_notifications, 60000);
|
setInterval(check_new_notifications, 60000);
|
||||||
|
|
||||||
|
@ -566,10 +566,10 @@ if ($search != '') {
|
|||||||
if ($id != '') {
|
if ($id != '') {
|
||||||
$aux = $id[0]['id_agent'];
|
$aux = $id[0]['id_agent'];
|
||||||
$search_sql = sprintf(
|
$search_sql = sprintf(
|
||||||
' AND ( nombre LIKE "%%%s%%"
|
' AND ( REPLACE(nombre, " ", " ") LIKE "%%%s%%"
|
||||||
OR alias LIKE "%%%s%%"
|
OR REPLACE(alias, " ", " ") LIKE "%%%s%%"
|
||||||
OR comentarios LIKE "%%%s%%"
|
OR REPLACE(comentarios, " ", " ") LIKE "%%%s%%"
|
||||||
OR EXISTS (SELECT * FROM tagent_custom_data WHERE id_agent = id_agente AND description LIKE "%%%s%%")
|
OR EXISTS (SELECT * FROM tagent_custom_data WHERE id_agent = id_agente AND REPLACE(description, " ", " ") LIKE "%%%s%%")
|
||||||
OR tagente.id_agente = %d',
|
OR tagente.id_agente = %d',
|
||||||
$search,
|
$search,
|
||||||
$search,
|
$search,
|
||||||
@ -591,10 +591,10 @@ if ($search != '') {
|
|||||||
$search_sql .= ')';
|
$search_sql .= ')';
|
||||||
} else {
|
} else {
|
||||||
$search_sql = sprintf(
|
$search_sql = sprintf(
|
||||||
' AND ( nombre
|
' AND ( REPLACE(nombre, " ", " ")
|
||||||
LIKE "%%%s%%" OR alias
|
LIKE "%%%s%%" OR REPLACE(alias, " ", " ")
|
||||||
LIKE "%%%s%%" OR comentarios LIKE "%%%s%%"
|
LIKE "%%%s%%" OR REPLACE(comentarios, " ", " ") LIKE "%%%s%%"
|
||||||
OR EXISTS (SELECT * FROM tagent_custom_data WHERE id_agent = id_agente AND description LIKE "%%%s%%"))',
|
OR EXISTS (SELECT * FROM tagent_custom_data WHERE id_agent = id_agente AND REPLACE(description, " ", " ") LIKE "%%%s%%"))',
|
||||||
$search,
|
$search,
|
||||||
$search,
|
$search,
|
||||||
$search,
|
$search,
|
||||||
|
@ -575,7 +575,7 @@ $where = sprintf('delete_pending = 0 AND id_agente = %s', $id_agente);
|
|||||||
$search_string_entities = io_safe_input($search_string);
|
$search_string_entities = io_safe_input($search_string);
|
||||||
|
|
||||||
$basic_where = sprintf(
|
$basic_where = sprintf(
|
||||||
"(nombre LIKE '%%%s%%' OR nombre LIKE '%%%s%%' OR descripcion LIKE '%%%s%%' OR descripcion LIKE '%%%s%%') AND",
|
"(REPLACE(nombre, ' ', ' ') LIKE '%%%s%%' OR REPLACE(nombre, ' ', ' ') LIKE '%%%s%%' OR REPLACE(descripcion, ' ', ' ') LIKE '%%%s%%' OR REPLACE(descripcion, ' ', ' ') LIKE '%%%s%%') AND",
|
||||||
$search_string,
|
$search_string,
|
||||||
$search_string_entities,
|
$search_string_entities,
|
||||||
$search_string,
|
$search_string,
|
||||||
|
@ -575,12 +575,13 @@ if ($access_console_node === true) {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$extmenu = [];
|
||||||
if ($extension['godmode_menu']['name'] !== __('DB Schema check') && $extension['godmode_menu']['name'] !== __('DB interface')) {
|
if ($extension['godmode_menu']['name'] !== __('DB Schema check') && $extension['godmode_menu']['name'] !== __('DB interface')) {
|
||||||
$extmenu = $extension['godmode_menu'];
|
$extmenu = $extension['godmode_menu'];
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check the ACL for this user.
|
// Check the ACL for this user.
|
||||||
if ((bool) check_acl($config['id_user'], 0, $extmenu['acl']) === false) {
|
if ((bool) check_acl($config['id_user'], 0, ($extmenu['acl'] ?? '')) === false) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -729,7 +729,7 @@ if ($search_id_group) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($search_string != '') {
|
if ($search_string != '') {
|
||||||
$filter[] = '(name LIKE '."'%".$search_string."%'".'OR description LIKE '."'%".$search_string."%'".'OR tcp_send LIKE '."'%".$search_string."%'".'OR tcp_rcv LIKE '."'%".$search_string."%'".')';
|
$filter[] = '(REPLACE(name, " ", " ") LIKE '."'%".$search_string."%'".' OR REPLACE(REPLACE(description, " ", " "), " ", " ")LIKE '."'%".$search_string."%'".' OR REPLACE(tcp_send, " ", " ") LIKE '."'%".$search_string."%'".'OR REPLACE(tcp_rcv, " ", " ") LIKE '."'%".$search_string."%'".')';
|
||||||
}
|
}
|
||||||
|
|
||||||
$total_components = network_components_get_network_components(
|
$total_components = network_components_get_network_components(
|
||||||
|
@ -1658,7 +1658,7 @@ if (is_metaconsole() === true) {
|
|||||||
10,
|
10,
|
||||||
false,
|
false,
|
||||||
false,
|
false,
|
||||||
true,
|
false,
|
||||||
'',
|
'',
|
||||||
false,
|
false,
|
||||||
false,
|
false,
|
||||||
@ -1692,7 +1692,7 @@ if (is_metaconsole() === true) {
|
|||||||
10,
|
10,
|
||||||
false,
|
false,
|
||||||
false,
|
false,
|
||||||
true,
|
false,
|
||||||
'',
|
'',
|
||||||
false,
|
false,
|
||||||
false,
|
false,
|
||||||
@ -1746,7 +1746,7 @@ if (is_metaconsole() === true) {
|
|||||||
10,
|
10,
|
||||||
false,
|
false,
|
||||||
false,
|
false,
|
||||||
true,
|
false,
|
||||||
'',
|
'',
|
||||||
false,
|
false,
|
||||||
false,
|
false,
|
||||||
@ -1771,7 +1771,7 @@ if (is_metaconsole() === true) {
|
|||||||
<td >
|
<td >
|
||||||
<?php
|
<?php
|
||||||
html_print_extended_select_for_time(
|
html_print_extended_select_for_time(
|
||||||
'period',
|
'period3',
|
||||||
(string) $period,
|
(string) $period,
|
||||||
'onselect=loadLogAgents();',
|
'onselect=loadLogAgents();',
|
||||||
'',
|
'',
|
||||||
@ -1809,7 +1809,7 @@ if (is_metaconsole() === true) {
|
|||||||
10,
|
10,
|
||||||
false,
|
false,
|
||||||
false,
|
false,
|
||||||
true,
|
false,
|
||||||
'',
|
'',
|
||||||
false,
|
false,
|
||||||
false,
|
false,
|
||||||
@ -7167,7 +7167,7 @@ function loadLogAgents() {
|
|||||||
params["get_agent_source"] = 1;
|
params["get_agent_source"] = 1;
|
||||||
params["log_alert"] = 1;
|
params["log_alert"] = 1;
|
||||||
params["page"] = "enterprise/include/ajax/log_viewer.ajax";
|
params["page"] = "enterprise/include/ajax/log_viewer.ajax";
|
||||||
params["date"] = $('#period_select').val();
|
params["date"] = $('#period3_select').val();
|
||||||
jQuery.ajax({
|
jQuery.ajax({
|
||||||
data: params,
|
data: params,
|
||||||
dataType: "json",
|
dataType: "json",
|
||||||
|
@ -1643,7 +1643,7 @@ switch ($action) {
|
|||||||
$es['log_number'] = $log_number;
|
$es['log_number'] = $log_number;
|
||||||
|
|
||||||
$values['external_source'] = json_encode($es);
|
$values['external_source'] = json_encode($es);
|
||||||
$values['period'] = get_parameter('period');
|
$values['period'] = get_parameter('period3');
|
||||||
$good_format = true;
|
$good_format = true;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -1661,7 +1661,7 @@ switch ($action) {
|
|||||||
$es['log_number'] = $log_number;
|
$es['log_number'] = $log_number;
|
||||||
|
|
||||||
$values['external_source'] = json_encode($es);
|
$values['external_source'] = json_encode($es);
|
||||||
$values['period'] = get_parameter('period');
|
$values['period'] = get_parameter('period3');
|
||||||
$values['period_range'] = get_parameter('period_range');
|
$values['period_range'] = get_parameter('period_range');
|
||||||
$values['show_graph'] = get_parameter('combo_graph_options');
|
$values['show_graph'] = get_parameter('combo_graph_options');
|
||||||
$values['group_by_agent'] = get_parameter('checkbox_row_group_by_agent');
|
$values['group_by_agent'] = get_parameter('checkbox_row_group_by_agent');
|
||||||
@ -2764,7 +2764,7 @@ switch ($action) {
|
|||||||
$es['log_number'] = $log_number;
|
$es['log_number'] = $log_number;
|
||||||
|
|
||||||
$values['external_source'] = json_encode($es);
|
$values['external_source'] = json_encode($es);
|
||||||
$values['period'] = get_parameter('period');
|
$values['period'] = get_parameter('period3');
|
||||||
$good_format = true;
|
$good_format = true;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -2782,7 +2782,7 @@ switch ($action) {
|
|||||||
$es['log_number'] = $log_number;
|
$es['log_number'] = $log_number;
|
||||||
|
|
||||||
$values['external_source'] = json_encode($es);
|
$values['external_source'] = json_encode($es);
|
||||||
$values['period'] = get_parameter('period');
|
$values['period'] = get_parameter('period3');
|
||||||
$values['period_range'] = get_parameter('period_range');
|
$values['period_range'] = get_parameter('period_range');
|
||||||
$values['show_graph'] = get_parameter('combo_graph_options');
|
$values['show_graph'] = get_parameter('combo_graph_options');
|
||||||
$values['group_by_agent'] = get_parameter('checkbox_row_group_by_agent');
|
$values['group_by_agent'] = get_parameter('checkbox_row_group_by_agent');
|
||||||
|
@ -539,6 +539,7 @@ foreach ($layoutDatas as $layoutData) {
|
|||||||
$table->data[($i + 1)][5] .= html_print_checkbox('multiple_delete_items', $idLayoutData, false, true);
|
$table->data[($i + 1)][5] .= html_print_checkbox('multiple_delete_items', $idLayoutData, false, true);
|
||||||
$table->data[($i + 1)][5] .= '<a href="'.$url_delete.'"onclick="javascript: if (!confirm(\''.__('Are you sure?').'\')) return false;">'.html_print_image('images/delete.svg', true, ['class' => 'main_menu_icon invert_filter']).'</a>';
|
$table->data[($i + 1)][5] .= '<a href="'.$url_delete.'"onclick="javascript: if (!confirm(\''.__('Are you sure?').'\')) return false;">'.html_print_image('images/delete.svg', true, ['class' => 'main_menu_icon invert_filter']).'</a>';
|
||||||
$table->data[($i + 1)][5] .= html_print_input_hidden('updated_'.$idLayoutData, '0', true);
|
$table->data[($i + 1)][5] .= html_print_input_hidden('updated_'.$idLayoutData, '0', true);
|
||||||
|
$table->data[($i + 1)][5] .= html_print_input_hidden('rowtype_'.$idLayoutData, $layoutData['type'], true);
|
||||||
|
|
||||||
// Second row
|
// Second row
|
||||||
$table->data[($i + 2)]['icon'] = '';
|
$table->data[($i + 2)]['icon'] = '';
|
||||||
@ -789,14 +790,6 @@ if ($x > ini_get('max_input_vars')) {
|
|||||||
|
|
||||||
$pure = get_parameter('pure', 0);
|
$pure = get_parameter('pure', 0);
|
||||||
|
|
||||||
if (is_metaconsole() === false) {
|
|
||||||
echo '<form id="vc_elem_form" method="post" action="index.php?sec=network&sec2=godmode/reporting/visual_console_builder&tab='.$activeTab.'&id_visual_console='.$visualConsole['id'].'">';
|
|
||||||
html_print_input_hidden('action', 'update');
|
|
||||||
} else {
|
|
||||||
echo "<form id='vc_elem_form' method='post' action='index.php?operation=edit_visualmap&sec=screen&sec2=screens/screens&action=visualmap&pure=0&tab=list_elements&id_visual_console=".$idVisualConsole."'>";
|
|
||||||
html_print_input_hidden('action2', 'update');
|
|
||||||
}
|
|
||||||
|
|
||||||
html_print_table($table);
|
html_print_table($table);
|
||||||
|
|
||||||
// Form for multiple delete.
|
// Form for multiple delete.
|
||||||
@ -806,15 +799,14 @@ if (is_metaconsole() === false) {
|
|||||||
$url_multiple_delete = 'index.php?sec=screen&sec2=screens/screens&action=visualmap&tab='.$activeTab.'&id_visual_console='.$visualConsole['id'];
|
$url_multiple_delete = 'index.php?sec=screen&sec2=screens/screens&action=visualmap&tab='.$activeTab.'&id_visual_console='.$visualConsole['id'];
|
||||||
}
|
}
|
||||||
|
|
||||||
echo '</form>';
|
|
||||||
|
|
||||||
$buttons = html_print_submit_button(
|
$buttons = html_print_submit_button(
|
||||||
__('Update'),
|
__('Update'),
|
||||||
'go',
|
'go',
|
||||||
false,
|
false,
|
||||||
[
|
[
|
||||||
'icon' => 'next',
|
'icon' => 'next',
|
||||||
'form' => 'vc_elem_form',
|
'form' => 'vc_elem_form',
|
||||||
|
'onclick' => 'submit_update_json()',
|
||||||
],
|
],
|
||||||
true
|
true
|
||||||
);
|
);
|
||||||
@ -976,4 +968,76 @@ ui_require_javascript_file('tinymce', 'vendor/tinymce/tinymce/');
|
|||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function submit_update_json() {
|
||||||
|
var array_update = [];
|
||||||
|
$('input[id^=hidden-updated_]').each(function(){
|
||||||
|
var id = $(this).attr('id').split('_')[1];
|
||||||
|
|
||||||
|
var label = $('#hidden-label_'+id).val();
|
||||||
|
var image = $('#image_'+id).val();
|
||||||
|
var width = $('#text-width_'+id).val();
|
||||||
|
var height = $('#text-height_'+id).val();
|
||||||
|
var pos_x = $('#text-left_'+id).val();
|
||||||
|
var pos_y = $('#text-top_'+id).val();
|
||||||
|
var parent = $('#parent_'+id).val();
|
||||||
|
var agent = $('#hidden-agent_'+id).val();
|
||||||
|
var module = $('#module_'+id).val();
|
||||||
|
var period = $('#hidden-period_'+id).val();
|
||||||
|
var map_linked = $('#map_linked_'+id).val();
|
||||||
|
var id_server = $('#id_server_id_'+id).val();
|
||||||
|
var rowtype = $('rowtype_'+id).val();
|
||||||
|
var custom_graph = $('#custom_graph_'+id).val();
|
||||||
|
|
||||||
|
array_update.push({
|
||||||
|
'id': id,
|
||||||
|
'label': label,
|
||||||
|
'image': image,
|
||||||
|
'width': width,
|
||||||
|
'height': height,
|
||||||
|
'pos_x': pos_x,
|
||||||
|
'pos_y': pos_y,
|
||||||
|
'parent': parent,
|
||||||
|
'agent': agent,
|
||||||
|
'module': module,
|
||||||
|
'period': period,
|
||||||
|
'map_linked': map_linked,
|
||||||
|
'rowtype': rowtype,
|
||||||
|
'custom_graph': custom_graph,
|
||||||
|
'id_server': id_server,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
var background_width = $('#text-width').val();
|
||||||
|
var background_height = $('#text-height').val();
|
||||||
|
|
||||||
|
if (background_height > 0 && background_width > 0){
|
||||||
|
$.ajax({
|
||||||
|
type: "POST",
|
||||||
|
url: "ajax.php",
|
||||||
|
data: {
|
||||||
|
page: "godmode/reporting/visual_console_builder",
|
||||||
|
action: "update_json",
|
||||||
|
tab: "list_elements",
|
||||||
|
array_update: JSON.stringify(array_update),
|
||||||
|
id_visual_console: "<?php echo (is_metaconsole() === true) ? $idVisualConsole : $visualConsole['id']; ?>",
|
||||||
|
background: $('#background').val(),
|
||||||
|
background_width: $('#text-width').val(),
|
||||||
|
background_height: $('#text-height').val(),
|
||||||
|
},
|
||||||
|
dataType: "json",
|
||||||
|
complete: function (data) {
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
confirmDialog({
|
||||||
|
title: "<?php echo __('Error.'); ?>",
|
||||||
|
message: "<?php echo __('The width and height property is required and should greater than 0'); ?>",
|
||||||
|
strOKButton: "<?php echo __('Close'); ?>",
|
||||||
|
hideCancelButton: true,
|
||||||
|
size: 300,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
@ -78,6 +78,7 @@ $action = get_parameterBetweenListValues(
|
|||||||
'update',
|
'update',
|
||||||
'delete',
|
'delete',
|
||||||
'multiple_delete',
|
'multiple_delete',
|
||||||
|
'update_json',
|
||||||
],
|
],
|
||||||
'new'
|
'new'
|
||||||
);
|
);
|
||||||
@ -526,6 +527,110 @@ switch ($activeTab) {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 'update_json':
|
||||||
|
// Update background.
|
||||||
|
$background = get_parameter('background');
|
||||||
|
$width = get_parameter('background_width');
|
||||||
|
$height = get_parameter('background_height');
|
||||||
|
|
||||||
|
if ($width == 0 && $height == 0) {
|
||||||
|
$sizeBackground = getimagesize(
|
||||||
|
$config['homedir'].'/images/console/background/'.$background
|
||||||
|
);
|
||||||
|
$width = $sizeBackground[0];
|
||||||
|
$height = $sizeBackground[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
db_process_sql_update(
|
||||||
|
'tlayout',
|
||||||
|
[
|
||||||
|
'background' => $background,
|
||||||
|
'width' => $width,
|
||||||
|
'height' => $height,
|
||||||
|
],
|
||||||
|
['id' => $idVisualConsole]
|
||||||
|
);
|
||||||
|
|
||||||
|
// Return the updated visual console.
|
||||||
|
$visualConsole = db_get_row_filter(
|
||||||
|
'tlayout',
|
||||||
|
['id' => $idVisualConsole]
|
||||||
|
);
|
||||||
|
|
||||||
|
// Update elements in visual map.
|
||||||
|
$idsElements = db_get_all_rows_filter(
|
||||||
|
'tlayout_data',
|
||||||
|
['id_layout' => $idVisualConsole],
|
||||||
|
[
|
||||||
|
'id',
|
||||||
|
'type',
|
||||||
|
]
|
||||||
|
);
|
||||||
|
|
||||||
|
$array_update = json_decode(io_safe_output(get_parameter('array_update')), true);
|
||||||
|
|
||||||
|
if (count($array_update)) {
|
||||||
|
foreach ($array_update as $row) {
|
||||||
|
$id = $row['id'];
|
||||||
|
$values = [];
|
||||||
|
$values['label'] = $row['label'];
|
||||||
|
$values['image'] = $row['image'];
|
||||||
|
$values['width'] = $row['width'];
|
||||||
|
$values['height'] = $row['height'];
|
||||||
|
$values['pos_x'] = $row['pos_x'];
|
||||||
|
$values['pos_y'] = $row['pos_y'];
|
||||||
|
|
||||||
|
switch ($row['rowtype']) {
|
||||||
|
case NETWORK_LINK:
|
||||||
|
case LINE_ITEM:
|
||||||
|
continue 2;
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
case SIMPLE_VALUE_MAX:
|
||||||
|
case SIMPLE_VALUE_MIN:
|
||||||
|
case SIMPLE_VALUE_AVG:
|
||||||
|
$values['period'] = $row['period'];
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MODULE_GRAPH:
|
||||||
|
$values['period'] = $row['period'];
|
||||||
|
unset($values['image']);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GROUP_ITEM:
|
||||||
|
$values['id_group'] = $row['group'];
|
||||||
|
break;
|
||||||
|
|
||||||
|
case CIRCULAR_PROGRESS_BAR:
|
||||||
|
case CIRCULAR_INTERIOR_PROGRESS_BAR:
|
||||||
|
case PERCENTILE_BUBBLE:
|
||||||
|
case PERCENTILE_BAR:
|
||||||
|
unset($values['height']);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (defined('METACONSOLE')) {
|
||||||
|
$values['id_metaconsole'] = $row['id_server'];
|
||||||
|
}
|
||||||
|
|
||||||
|
$values['id_agent'] = $row['agent'];
|
||||||
|
$values['id_agente_modulo'] = $row['module'];
|
||||||
|
$values['id_custom_graph'] = $row['custom_graph'];
|
||||||
|
$values['parent_item'] = $row['parent'];
|
||||||
|
$values['id_layout_linked'] = $row['map_linked'];
|
||||||
|
|
||||||
|
if (enterprise_installed()) {
|
||||||
|
enterprise_visual_map_update_action_from_list_elements($row['rowtype'], $values, $id);
|
||||||
|
}
|
||||||
|
|
||||||
|
db_process_sql_update('tlayout_data', $values, ['id' => $id]);
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case 'delete':
|
case 'delete':
|
||||||
$id_element = get_parameter('id_element');
|
$id_element = get_parameter('id_element');
|
||||||
$result = db_process_sql_delete('tlayout_data', ['id' => $id_element]);
|
$result = db_process_sql_delete('tlayout_data', ['id' => $id_element]);
|
||||||
|
@ -1113,9 +1113,9 @@ $(document).ready (function () {
|
|||||||
id_imodule = $(value).attr('value');
|
id_imodule = $(value).attr('value');
|
||||||
$("select[name='inventory_changes_blacklist[]']")
|
$("select[name='inventory_changes_blacklist[]']")
|
||||||
.append(
|
.append(
|
||||||
$("<option></option>")
|
$("<option selected='selected'></option>")
|
||||||
.val(id_imodule)
|
.val(id_imodule)
|
||||||
.html('<i>' + imodule_name + '</i>')
|
.text(imodule_name)
|
||||||
);
|
);
|
||||||
$("#inventory_changes_blacklist_out")
|
$("#inventory_changes_blacklist_out")
|
||||||
.find("option[value='" + id_imodule + "']").remove();
|
.find("option[value='" + id_imodule + "']").remove();
|
||||||
@ -1141,7 +1141,7 @@ $(document).ready (function () {
|
|||||||
.append(
|
.append(
|
||||||
$("<option></option>")
|
$("<option></option>")
|
||||||
.val(id_imodule)
|
.val(id_imodule)
|
||||||
.html('<i>' + imodule_name + '</i>')
|
.text(imodule_name)
|
||||||
);
|
);
|
||||||
$("#inventory_changes_blacklist")
|
$("#inventory_changes_blacklist")
|
||||||
.find("option[value='" + id_imodule + "']").remove();
|
.find("option[value='" + id_imodule + "']").remove();
|
||||||
@ -1157,12 +1157,15 @@ $(document).ready (function () {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$("#inventory_changes_blacklist > option").each(function(key, value) {
|
||||||
|
$(value).prop('selected',true).trigger('change');
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#submit-update_button").click(function () {
|
$("#inventory_changes_blacklist > option").each(function(key, value) {
|
||||||
$('#inventory_changes_blacklist option').map(function(){
|
$(value).prop('selected',true).trigger('change');
|
||||||
$(this).prop('selected', true);
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
@ -652,30 +652,30 @@ if ($get_agent_alerts_datatable === true) {
|
|||||||
if (is_metaconsole() === true) {
|
if (is_metaconsole() === true) {
|
||||||
include_once $config['homedir'].'/enterprise/meta/include/functions_alerts_meta.php';
|
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);
|
$alerts['alerts_simple'] = alerts_meta_get_alerts($agents, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, false, false, $tag_filter, $action_filter);
|
||||||
|
|
||||||
$countAlertsSimple = alerts_meta_get_alerts($agents, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, true, $strict_user, $tag_filter, $action_filter);
|
$countAlertsSimple = alerts_meta_get_alerts($agents, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, true, false, $tag_filter, $action_filter);
|
||||||
} else {
|
} else {
|
||||||
$id_groups = array_keys(
|
$id_groups = array_keys(
|
||||||
users_get_groups($config['id_user'], 'AR', false)
|
users_get_groups($config['id_user'], 'AR', false)
|
||||||
);
|
);
|
||||||
$alerts['alerts_simple'] = alerts_meta_get_group_alerts($id_groups, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, false, $strict_user, $tag_filter, $action_filter, $search_sg);
|
$alerts['alerts_simple'] = alerts_meta_get_group_alerts($id_groups, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, false, false, $tag_filter, $action_filter, $search_sg);
|
||||||
|
|
||||||
$countAlertsSimple = alerts_meta_get_group_alerts($id_groups, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, true, $strict_user, $tag_filter, $action_filter, $search_sg);
|
$countAlertsSimple = alerts_meta_get_group_alerts($id_groups, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, true, false, $tag_filter, $action_filter, $search_sg);
|
||||||
}
|
}
|
||||||
} else {
|
} 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);
|
$alerts['alerts_simple'] = agents_get_alerts_simple($idAgent, $filter_alert, $options_simple, $whereAlertSimple, false, false, $idGroup, false, false, $tag_filter);
|
||||||
|
|
||||||
$countAlertsSimple = agents_get_alerts_simple($idAgent, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, true, $strict_user, $tag_filter);
|
$countAlertsSimple = agents_get_alerts_simple($idAgent, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, true, false, $tag_filter);
|
||||||
} else {
|
} else {
|
||||||
$id_groups = array_keys(
|
$id_groups = array_keys(
|
||||||
users_get_groups($config['id_user'], $access, false)
|
users_get_groups($config['id_user'], $access, false)
|
||||||
);
|
);
|
||||||
|
|
||||||
$alerts['alerts_simple'] = get_group_alerts($id_groups, $filter_alert, $options_simple, $whereAlertSimple, false, false, $idGroup, false, $strict_user, $tag_filter, $action_filter, false, $search_sg);
|
$alerts['alerts_simple'] = get_group_alerts($id_groups, $filter_alert, $options_simple, $whereAlertSimple, false, false, $idGroup, false, false, $tag_filter, $action_filter, false, $search_sg);
|
||||||
|
|
||||||
$countAlertsSimple = get_group_alerts($id_groups, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, true, $strict_user, $tag_filter, $action_filter, false, $search_sg);
|
$countAlertsSimple = get_group_alerts($id_groups, $filter_alert, false, $whereAlertSimple, false, false, $idGroup, true, false, $tag_filter, $action_filter, false, $search_sg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -756,6 +756,7 @@ if (check_login()) {
|
|||||||
$access = ($agent_a === true) ? 'AR' : (($agent_w === true) ? 'AW' : 'AR');
|
$access = ($agent_a === true) ? 'AR' : (($agent_w === true) ? 'AW' : 'AR');
|
||||||
$id_agent = (int) get_parameter('id_agente');
|
$id_agent = (int) get_parameter('id_agente');
|
||||||
$id_agente = $id_agent;
|
$id_agente = $id_agent;
|
||||||
|
$id_grupo = agents_get_agent_group($id_agent);
|
||||||
$show_notinit = (bool) get_parameter('show_notinit');
|
$show_notinit = (bool) get_parameter('show_notinit');
|
||||||
$cluster_list = (int) get_parameter('cluster_list');
|
$cluster_list = (int) get_parameter('cluster_list');
|
||||||
$sortField = (string) get_parameter('sort_field');
|
$sortField = (string) get_parameter('sort_field');
|
||||||
|
@ -118,7 +118,7 @@ class ConfigPEN extends HTML
|
|||||||
if (is_array($filter)) {
|
if (is_array($filter)) {
|
||||||
if (!empty($filter['free_search'])) {
|
if (!empty($filter['free_search'])) {
|
||||||
$sql_filters[] = vsprintf(
|
$sql_filters[] = vsprintf(
|
||||||
' AND (lower(`manufacturer`) like lower("%%%s%%")
|
' AND (lower(REPLACE(manufacturer, " ", " ")) like lower("%%%s%%")
|
||||||
OR pen = "%s") ',
|
OR pen = "%s") ',
|
||||||
array_fill(0, 2, $filter['free_search'])
|
array_fill(0, 2, $filter['free_search'])
|
||||||
);
|
);
|
||||||
|
@ -701,6 +701,10 @@ class Diagnostics extends Wizard
|
|||||||
{
|
{
|
||||||
global $config;
|
global $config;
|
||||||
|
|
||||||
|
// Get version comment DB.
|
||||||
|
$sql_version_comment = 'select @@version_comment as version_comment';
|
||||||
|
$version_comment = db_get_sql($sql_version_comment);
|
||||||
|
|
||||||
$result = [
|
$result = [
|
||||||
'error' => false,
|
'error' => false,
|
||||||
'data' => [
|
'data' => [
|
||||||
@ -716,6 +720,14 @@ class Diagnostics extends Wizard
|
|||||||
'name' => __('DB Schema Build'),
|
'name' => __('DB Schema Build'),
|
||||||
'value' => $config['db_scheme_build'],
|
'value' => $config['db_scheme_build'],
|
||||||
],
|
],
|
||||||
|
'dbVersion' => [
|
||||||
|
'name' => __('Engine version'),
|
||||||
|
'value' => $config['dbconnection']->server_info,
|
||||||
|
],
|
||||||
|
'dbVersionComment' => [
|
||||||
|
'name' => __('Version comment'),
|
||||||
|
'value' => $version_comment,
|
||||||
|
],
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -333,6 +333,7 @@ class TreeService extends Tree
|
|||||||
$services[$service['id']]['id'] = $service['id'];
|
$services[$service['id']]['id'] = $service['id'];
|
||||||
$services[$service['id']]['description'] = $service['description'];
|
$services[$service['id']]['description'] = $service['description'];
|
||||||
$services[$service['id']]['serviceDetail'] = 'index.php?sec=network&sec2=enterprise/operation/services/services&tab=service_map&id_service='.(int) $service['id'];
|
$services[$service['id']]['serviceDetail'] = 'index.php?sec=network&sec2=enterprise/operation/services/services&tab=service_map&id_service='.(int) $service['id'];
|
||||||
|
$services[$service['id']]['title'] = services_get_parents_title((int) $service['id']);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $services;
|
return $services;
|
||||||
@ -627,6 +628,7 @@ class TreeService extends Tree
|
|||||||
$tmp['type'] = 'services';
|
$tmp['type'] = 'services';
|
||||||
$tmp['rootType'] = 'services';
|
$tmp['rootType'] = 'services';
|
||||||
$tmp['children'] = [];
|
$tmp['children'] = [];
|
||||||
|
$tmp['servicesChildren'] = services_get_services_children($item->service()->id());
|
||||||
$tmp['serviceDetail'] = ui_get_full_url(
|
$tmp['serviceDetail'] = ui_get_full_url(
|
||||||
'index.php?sec=network&sec2=enterprise/operation/services/services&tab=service_map&id_service='.$item->service()->id()
|
'index.php?sec=network&sec2=enterprise/operation/services/services&tab=service_map&id_service='.$item->service()->id()
|
||||||
);
|
);
|
||||||
@ -731,7 +733,10 @@ class TreeService extends Tree
|
|||||||
if (isset($this->filter['searchService']) === true
|
if (isset($this->filter['searchService']) === true
|
||||||
&& empty($this->filter['searchService']) === false
|
&& empty($this->filter['searchService']) === false
|
||||||
) {
|
) {
|
||||||
return " AND (ts.name LIKE '%".$this->filter['searchService']."%' OR ts.description LIKE '%".$this->filter['searchService']."%')";
|
$whereAncestors = ' AND ts.name LIKE "%'.$this->filter['searchService'].'%"
|
||||||
|
OR ts.description LIKE "%'.$this->filter['searchService'].'%"';
|
||||||
|
|
||||||
|
return $whereAncestors;
|
||||||
}
|
}
|
||||||
|
|
||||||
return '';
|
return '';
|
||||||
|
@ -606,7 +606,7 @@ class WelcomeWindow extends Wizard
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
'arguments' => [
|
'arguments' => [
|
||||||
'label' => __("Let's do it!"),
|
'label' => __('Let's do it!'),
|
||||||
'type' => 'button',
|
'type' => 'button',
|
||||||
'attributes' => [
|
'attributes' => [
|
||||||
'class' => 'secondary',
|
'class' => 'secondary',
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
/**
|
/**
|
||||||
* Pandora build version and version
|
* Pandora build version and version
|
||||||
*/
|
*/
|
||||||
$build_version = 'PC231211';
|
$build_version = 'PC231213';
|
||||||
$pandora_version = 'v7.0NG.774';
|
$pandora_version = 'v7.0NG.774';
|
||||||
|
|
||||||
// Do not overwrite default timezone set if defined.
|
// Do not overwrite default timezone set if defined.
|
||||||
|
@ -10301,8 +10301,7 @@ function api_set_module_data($id, $thrash2, $other, $trash1)
|
|||||||
modules_get_type_name($agentModule['id_tipo_modulo']),
|
modules_get_type_name($agentModule['id_tipo_modulo']),
|
||||||
$data
|
$data
|
||||||
);
|
);
|
||||||
|
if (false === @file_put_contents($config['remote_config'].'/'.io_safe_output($agent['nombre']).'.'.$idAgentModule.'.'.$time.'.data', $xml)) {
|
||||||
if (false === @file_put_contents($config['remote_config'].'/'.io_safe_output($agent['nombre']).'.'.$time.'.data', $xml)) {
|
|
||||||
returnError(sprintf('XML file could not be generated in path: %s', $config['remote_config']));
|
returnError(sprintf('XML file could not be generated in path: %s', $config['remote_config']));
|
||||||
} else {
|
} else {
|
||||||
echo __('XML file was generated successfully in path: ').$config['remote_config'];
|
echo __('XML file was generated successfully in path: ').$config['remote_config'];
|
||||||
|
@ -194,11 +194,11 @@ function custom_graphs_get_user($id_user=0, $only_names=false, $returnAllGroup=t
|
|||||||
function custom_graphs_search($id_group, $search)
|
function custom_graphs_search($id_group, $search)
|
||||||
{
|
{
|
||||||
if ($id_group != '' && $search != '') {
|
if ($id_group != '' && $search != '') {
|
||||||
$all_graphs = db_get_all_rows_sql('select * from tgraph where id_group = '.$id_group.' AND (name LIKE "%'.$search.'%" OR description LIKE "'.$search.'")');
|
$all_graphs = db_get_all_rows_sql('select * from tgraph where id_group = '.$id_group.' AND (REPLACE(name, " ", " ") LIKE "%'.$search.'%" OR REPLACE(description, " ", " ") LIKE "'.$search.'")');
|
||||||
} else if ($id_group != '') {
|
} else if ($id_group != '') {
|
||||||
$all_graphs = db_get_all_rows_sql('select * from tgraph where id_group = '.$id_group.'');
|
$all_graphs = db_get_all_rows_sql('select * from tgraph where id_group = '.$id_group.'');
|
||||||
} else {
|
} else {
|
||||||
$all_graphs = db_get_all_rows_sql('select * from tgraph where name LIKE "%'.$search.'%" OR description LIKE "'.$search.'"');
|
$all_graphs = db_get_all_rows_sql('select * from tgraph where REPLACE(name, " ", " ") LIKE "%'.$search.'%" OR REPLACE(description, " ", " ") LIKE "'.$search.'"');
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($all_graphs === false) {
|
if ($all_graphs === false) {
|
||||||
|
@ -128,19 +128,18 @@ function upload_file($upload_file_or_zip, $default_real_directory, $destination_
|
|||||||
$extension = pathinfo($filename, PATHINFO_EXTENSION);
|
$extension = pathinfo($filename, PATHINFO_EXTENSION);
|
||||||
|
|
||||||
$umask = io_safe_output((string) get_parameter('umask'));
|
$umask = io_safe_output((string) get_parameter('umask'));
|
||||||
$parse_all_queries = explode('&', parse_url($_SERVER['HTTP_REFERER'], PHP_URL_QUERY));
|
// $parse_all_queries = explode('&', parse_url($_SERVER['HTTP_REFERER'], PHP_URL_QUERY));
|
||||||
$parse_sec2_query = explode('=', $parse_all_queries[1]);
|
// $parse_sec2_query = explode('=', $parse_all_queries[1]);
|
||||||
$check_extension = true;
|
// $check_extension = true;
|
||||||
if ($parse_sec2_query[1] === 'operation/snmpconsole/snmp_mib_uploader') {
|
// if ($parse_sec2_query[1] === 'operation/snmpconsole/snmp_mib_uploader') {
|
||||||
if ((strtolower($extension) !== 'mib' && strtolower($extension) !== 'zip')) {
|
// if ((strtolower($extension) !== 'mib' && strtolower($extension) !== 'zip')) {
|
||||||
$check_extension = false;
|
// $check_extension = false;
|
||||||
} else {
|
// } else {
|
||||||
$check_extension = true;
|
// $check_extension = true;
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
|
||||||
// (strtolower($extension) !== 'mib' && strtolower($extension) !== 'zip')
|
// (strtolower($extension) !== 'mib' && strtolower($extension) !== 'zip')
|
||||||
if (strpos($real_directory, $default_real_directory) !== 0 || $check_extension === false) {
|
if (strpos($real_directory, $default_real_directory) !== 0) {
|
||||||
// Perform security check to determine whether received upload
|
// Perform security check to determine whether received upload
|
||||||
// directory is part of the default path for caller uploader and
|
// directory is part of the default path for caller uploader and
|
||||||
// user is not trying to access an external path (avoid
|
// user is not trying to access an external path (avoid
|
||||||
@ -152,12 +151,12 @@ function upload_file($upload_file_or_zip, $default_real_directory, $destination_
|
|||||||
// Copy file to directory and change name.
|
// Copy file to directory and change name.
|
||||||
$nombre_archivo = sprintf('%s/%s', $real_directory, $filename);
|
$nombre_archivo = sprintf('%s/%s', $real_directory, $filename);
|
||||||
try {
|
try {
|
||||||
$mimeContentType = mime_content_type($_FILES['file']['tmp_name']);
|
$ext = strtolower(pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION));
|
||||||
|
if (empty($filterFilesType) === true || in_array($ext, $filterFilesType) === true) {
|
||||||
if (empty($filterFilesType) === true || in_array($mimeContentType, $filterFilesType) === true) {
|
|
||||||
$result = copy($_FILES['file']['tmp_name'], $nombre_archivo);
|
$result = copy($_FILES['file']['tmp_name'], $nombre_archivo);
|
||||||
} else {
|
} else {
|
||||||
$error_message = 'The uploaded file is not allowed. Only gif, png or jpg files can be uploaded.';
|
$types_allowed = implode(', ', $filterFilesType);
|
||||||
|
$error_message = 'The uploaded file is not allowed. Only '.$types_allowed.' files can be uploaded.';
|
||||||
throw new Exception(__($error_message));
|
throw new Exception(__($error_message));
|
||||||
}
|
}
|
||||||
} catch (Exception $ex) {
|
} catch (Exception $ex) {
|
||||||
@ -199,19 +198,29 @@ function upload_file($upload_file_or_zip, $default_real_directory, $destination_
|
|||||||
$filepath = $_FILES['file']['tmp_name'];
|
$filepath = $_FILES['file']['tmp_name'];
|
||||||
$real_directory = filemanager_safe_directory($destination_directory);
|
$real_directory = filemanager_safe_directory($destination_directory);
|
||||||
$secure = true;
|
$secure = true;
|
||||||
if ($parse_sec2_query[1] === 'operation/snmpconsole/snmp_mib_uploader') {
|
try {
|
||||||
// Security control structure.
|
$ext = strtolower(pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION));
|
||||||
$zip = new \ZipArchive;
|
if (empty($filterFilesType) === true || in_array($ext, $filterFilesType) === true) {
|
||||||
if ($zip->open($filepath) === true) {
|
// Security control structure.
|
||||||
for ($i = 0; $i < $zip->numFiles; $i++) {
|
$zip = new \ZipArchive;
|
||||||
$unzip_filename = $zip->getNameIndex($i);
|
if ($zip->open($filepath) === true) {
|
||||||
$extension = pathinfo($unzip_filename, PATHINFO_EXTENSION);
|
for ($i = 0; $i < $zip->numFiles; $i++) {
|
||||||
if (strtolower($extension) !== 'mib') {
|
$unzip_filename = $zip->getNameIndex($i);
|
||||||
$secure = false;
|
$extension = pathinfo($unzip_filename, PATHINFO_EXTENSION);
|
||||||
break;
|
if (in_array(strtolower($extension), $filterFilesType) === false) {
|
||||||
|
$error_message = 'The uploaded file is not allowed. Only '.$types_allowed.' files can be uploaded.';
|
||||||
|
$secure = false;
|
||||||
|
throw new Exception(__($error_message));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} catch (Exception $ex) {
|
||||||
|
db_pandora_audit(
|
||||||
|
AUDIT_LOG_FILE_MANAGER,
|
||||||
|
'Error Uploading files: '.$ex->getMessage()
|
||||||
|
);
|
||||||
|
$config['filemanager']['message'] = ui_print_error_message(__('Upload error').': '.$ex->getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (strpos($real_directory, $default_real_directory) !== 0 || $secure === false) {
|
if (strpos($real_directory, $default_real_directory) !== 0 || $secure === false) {
|
||||||
|
@ -77,7 +77,7 @@ function inventory_get_data(
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($inventory_search_string != '') {
|
if ($inventory_search_string != '') {
|
||||||
array_push($where, "tagent_module_inventory.data LIKE '%".$inventory_search_string."%'");
|
array_push($where, "REPLACE(tagent_module_inventory.data, ' ', ' ') LIKE '%".$inventory_search_string."%'");
|
||||||
}
|
}
|
||||||
|
|
||||||
$offset = (int) get_parameter('offset');
|
$offset = (int) get_parameter('offset');
|
||||||
@ -746,7 +746,7 @@ function inventory_get_datatable(
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($inventory_search_string != '') {
|
if ($inventory_search_string != '') {
|
||||||
array_push($where, "tagent_module_inventory.data LIKE '%".$inventory_search_string."%'");
|
array_push($where, "REPLACE(tagente_datos_inventory.data, ' ', ' ') LIKE '%".$inventory_search_string."%'");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($utimestamp > 0) {
|
if ($utimestamp > 0) {
|
||||||
@ -786,7 +786,6 @@ function inventory_get_datatable(
|
|||||||
}
|
}
|
||||||
|
|
||||||
$rows = db_get_all_rows_sql($sql);
|
$rows = db_get_all_rows_sql($sql);
|
||||||
|
|
||||||
if ($order_by_agent === false) {
|
if ($order_by_agent === false) {
|
||||||
$modules = [];
|
$modules = [];
|
||||||
foreach ($rows as $row) {
|
foreach ($rows as $row) {
|
||||||
@ -796,7 +795,13 @@ function inventory_get_datatable(
|
|||||||
|
|
||||||
$data_rows = explode(PHP_EOL, $row['data_inventory']);
|
$data_rows = explode(PHP_EOL, $row['data_inventory']);
|
||||||
foreach ($data_rows as $data_key => $data_value) {
|
foreach ($data_rows as $data_key => $data_value) {
|
||||||
if (empty($data_value) === false) {
|
if (empty($inventory_search_string) !== true) {
|
||||||
|
$search_check = strpos(str_replace(' ', ' ', $data_value), $inventory_search_string);
|
||||||
|
} else {
|
||||||
|
$search_check = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (empty($data_value) === false && $search_check !== false) {
|
||||||
$row['data'] = $data_value;
|
$row['data'] = $data_value;
|
||||||
$modules[$row['name']][$row['name_agent'].'-'.$data_key.'-'.$data_value] = $row;
|
$modules[$row['name']][$row['name_agent'].'-'.$data_key.'-'.$data_value] = $row;
|
||||||
}
|
}
|
||||||
@ -889,7 +894,7 @@ function get_data_basic_info_sql($params, $count=false)
|
|||||||
|
|
||||||
if ($params['search'] > 0) {
|
if ($params['search'] > 0) {
|
||||||
$where .= sprintf(
|
$where .= sprintf(
|
||||||
' AND ( alias LIKE "%%%s%%" )',
|
' AND ( REPLACE(alias, " ", " ") LIKE "%%%s%%" )',
|
||||||
$params['search']
|
$params['search']
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -330,7 +330,7 @@ function menu_print_menu(&$menu)
|
|||||||
|
|
||||||
if (isset($sub['type']) && $sub['type'] == 'direct') {
|
if (isset($sub['type']) && $sub['type'] == 'direct') {
|
||||||
// This is an external link.
|
// This is an external link.
|
||||||
$submenu_output .= '<li title="'.$sub['id'].'" id="'.str_replace(' ', '_', $sub['id']).'" class="'.$class.'">';
|
$submenu_output .= '<li title="'.$sub['text'].'" id="'.str_replace(' ', '_', $sub['id']).'" class="'.$class.'">';
|
||||||
|
|
||||||
if (isset($sub['subtype']) && $sub['subtype'] == 'nolink') {
|
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>';
|
$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>';
|
||||||
@ -875,6 +875,7 @@ function menu_pepare_acl_select_data($pages, $sec)
|
|||||||
if (is_ajax()) {
|
if (is_ajax()) {
|
||||||
$about = (bool) get_parameter('about');
|
$about = (bool) get_parameter('about');
|
||||||
$about_operation = (bool) get_parameter('about_operation');
|
$about_operation = (bool) get_parameter('about_operation');
|
||||||
|
$why_enterprise = (bool) get_parameter('why_enterprise');
|
||||||
if ($about) {
|
if ($about) {
|
||||||
global $config;
|
global $config;
|
||||||
global $pandora_version;
|
global $pandora_version;
|
||||||
@ -1107,10 +1108,10 @@ if (is_ajax()) {
|
|||||||
</tr>
|
</tr>
|
||||||
<tr class="about-last-tr">
|
<tr class="about-last-tr">
|
||||||
<th style="width: 50%;">
|
<th style="width: 50%;">
|
||||||
<p class="about-last-p"><span>'.$db_info->data->dbSize->name.'</span></p>
|
<p class="about-last-p"><span>'.$db_info->data->dbVersion->name.'</span></p>
|
||||||
</th>
|
</th>
|
||||||
<th style="width: 50%;">
|
<th style="width: 50%;">
|
||||||
<p class="about-last-p" style="font-size: 10pt;">'.$db_info->data->dbSize->value.'</p>
|
<p class="about-last-p" style="font-size: 10pt;">'.$db_info->data->dbVersion->value.'</p>
|
||||||
</th>
|
</th>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
@ -1370,4 +1371,50 @@ if (is_ajax()) {
|
|||||||
|
|
||||||
echo $dialog;
|
echo $dialog;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($why_enterprise) {
|
||||||
|
global $config;
|
||||||
|
global $pandora_version;
|
||||||
|
$product_name = io_safe_output(get_product_name());
|
||||||
|
|
||||||
|
$lts_name = '';
|
||||||
|
if (empty($config['lts_name']) === false) {
|
||||||
|
$lts_name = ' <i>'.$config['lts_name'].'</i>';
|
||||||
|
}
|
||||||
|
|
||||||
|
$image_about = ui_get_full_url('/images/custom_logo/logo-default-pandorafms-collapsed.svg', false, false, false);
|
||||||
|
$url_why_enterprise = 'https://pandorafms.com/en/why-enterprise/';
|
||||||
|
$lang = users_get_user_by_id($config['id_user'])['language'];
|
||||||
|
if ($lang === 'es') {
|
||||||
|
$url_why_enterprise = 'https://pandorafms.com/es/por-que-pandora-fms-enterprise/';
|
||||||
|
}
|
||||||
|
|
||||||
|
$dialog = '
|
||||||
|
<div id="about-tabs" class="overflow-hidden">
|
||||||
|
<div id="tab-general-view">
|
||||||
|
<table class="table-about">
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<th style="width: 40%; border: 0px;">
|
||||||
|
<a href="https://pandorafms.com/" target="_blank">
|
||||||
|
<img src="'.$image_about.'" alt="logo" width="50%">
|
||||||
|
</a>
|
||||||
|
</th>
|
||||||
|
<th style="width: 60%; text-align: left; border: 0px;">
|
||||||
|
<h1>'.$product_name.'</h1>
|
||||||
|
<p><span>'.__('Version').' '.$pandora_version.$lts_name.' - '.(enterprise_installed() ? 'Enterprise' : 'Community').'</span></p>
|
||||||
|
<p>'.__('You are using the free, OpenSource version of Pandora FMS.').'</p>
|
||||||
|
<p>'.__('This version has no official support or warranty, you can purchase the Enterprise version, which offers support, warranty and additional features to the Opensource version.').'</p>
|
||||||
|
<p><span><a href="'.$url_why_enterprise.'">'.__('Click on this link for more information.').'</a></span></p>
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<p class="trademark-copyright">Trademark and copyright 2004 - '.date('Y').' <a href="https://pandorafms.com/" target="_blank">Pandora FMS</a>. All rights reserved</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
';
|
||||||
|
|
||||||
|
echo $dialog;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -2624,12 +2624,26 @@ function modules_get_agentmodule_data_for_humans($module)
|
|||||||
$salida = human_milliseconds_to_string($module['datos']);
|
$salida = human_milliseconds_to_string($module['datos']);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$salida = remove_right_zeros(number_format($module['datos'], $config['graph_precision'], $config['decimal_separator'], $config['thousand_separator']));
|
$salida = remove_right_zeros(
|
||||||
|
number_format(
|
||||||
|
$module['datos'],
|
||||||
|
$config['graph_precision'],
|
||||||
|
$config['decimal_separator'],
|
||||||
|
($config['thousand_separator'] ?? null)
|
||||||
|
)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
$salida = remove_right_zeros(number_format($module['datos'], $config['graph_precision'], $config['decimal_separator'], $config['thousand_separator']));
|
$salida = remove_right_zeros(
|
||||||
|
number_format(
|
||||||
|
$module['datos'],
|
||||||
|
$config['graph_precision'],
|
||||||
|
$config['decimal_separator'],
|
||||||
|
($config['thousand_separator'] ?? null)
|
||||||
|
)
|
||||||
|
);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -2648,12 +2662,26 @@ function modules_get_agentmodule_data_for_humans($module)
|
|||||||
$salida = human_milliseconds_to_string($module['datos']);
|
$salida = human_milliseconds_to_string($module['datos']);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$salida = remove_right_zeros(number_format($module['datos'], $config['graph_precision'], $config['decimal_separator'], $config['thousand_separator']));
|
$salida = remove_right_zeros(
|
||||||
|
number_format(
|
||||||
|
$module['datos'],
|
||||||
|
$config['graph_precision'],
|
||||||
|
$config['decimal_separator'],
|
||||||
|
($config['thousand_separator'] ?? null)
|
||||||
|
)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
$salida = remove_right_zeros(number_format($module['datos'], $config['graph_precision'], $config['decimal_separator'], $config['thousand_separator']));
|
$salida = remove_right_zeros(
|
||||||
|
number_format(
|
||||||
|
$module['datos'],
|
||||||
|
$config['graph_precision'],
|
||||||
|
$config['decimal_separator'],
|
||||||
|
($config['thousand_separator'] ?? null)
|
||||||
|
)
|
||||||
|
);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2935,7 +2963,14 @@ function modules_get_status($id_agent_module, $db_status, $data, &$status, &$tit
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (is_numeric($data)) {
|
if (is_numeric($data)) {
|
||||||
$title .= ': '.remove_right_zeros(number_format($data, $config['graph_precision'], $config['decimal_separator'], $config['thousand_separator']));
|
$title .= ': '.remove_right_zeros(
|
||||||
|
number_format(
|
||||||
|
$data,
|
||||||
|
$config['graph_precision'],
|
||||||
|
$config['decimal_separator'],
|
||||||
|
($config['thousand_separator'] ?? null)
|
||||||
|
)
|
||||||
|
);
|
||||||
} else {
|
} else {
|
||||||
$text = io_safe_output($data);
|
$text = io_safe_output($data);
|
||||||
|
|
||||||
|
@ -1275,7 +1275,7 @@ function reporting_html_SLA($table, $item, $mini, $pdf=0)
|
|||||||
$table3->headstyle[5] = 'text-align: right';
|
$table3->headstyle[5] = 'text-align: right';
|
||||||
|
|
||||||
foreach ($item['data'] as $sla) {
|
foreach ($item['data'] as $sla) {
|
||||||
if (isset($sla) === true) {
|
if (isset($sla) === true && empty($sla['agent']) === false) {
|
||||||
// First_table.
|
// First_table.
|
||||||
$row = [];
|
$row = [];
|
||||||
$row[] = $sla['agent'];
|
$row[] = $sla['agent'];
|
||||||
|
@ -1486,6 +1486,11 @@ var TreeController = {
|
|||||||
return 0;
|
return 0;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
//Search service criterion
|
||||||
|
const searchFilter = controller.filter.searchService;
|
||||||
|
if (searchFilter && controller.finded !== 1) {
|
||||||
|
rawTree = _filterItems(rawTree, searchFilter);
|
||||||
|
}
|
||||||
_.each(rawTree, function(element) {
|
_.each(rawTree, function(element) {
|
||||||
element.jqObject = _processNode($group, element);
|
element.jqObject = _processNode($group, element);
|
||||||
});
|
});
|
||||||
@ -1551,6 +1556,67 @@ var TreeController = {
|
|||||||
|
|
||||||
// Add again the hover event to the 'force_callback' elements
|
// Add again the hover event to the 'force_callback' elements
|
||||||
forced_title_callback();
|
forced_title_callback();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter the tree based on a search criterion
|
||||||
|
*/
|
||||||
|
function _filterItems(rawTree, searched) {
|
||||||
|
const ancestors = [];
|
||||||
|
const father = [];
|
||||||
|
const newTree = [];
|
||||||
|
const tmpTree = [];
|
||||||
|
rawTree.map((raw, index) => {
|
||||||
|
if (raw.type === "services") {
|
||||||
|
if (raw.servicesChildren.length !== 0) {
|
||||||
|
// search at parent level
|
||||||
|
let descr = raw.description.toLowerCase();
|
||||||
|
let sear = searched.toLowerCase();
|
||||||
|
let findedPadre = descr.indexOf(sear);
|
||||||
|
if (findedPadre === -1) {
|
||||||
|
father.push(raw.id);
|
||||||
|
} else if (findedPadre >= 0) {
|
||||||
|
ancestors.push(raw.id);
|
||||||
|
} else {
|
||||||
|
//we mark the father as found
|
||||||
|
controller.finded = 1;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
let finded = raw.description.indexOf(searched);
|
||||||
|
if (finded === -1) {
|
||||||
|
delete rawTree[index];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
if (ancestors.length >= 1) {
|
||||||
|
ancestors.map(ancestor => {
|
||||||
|
newTree.push(
|
||||||
|
rawTree.filter(item => item.id === parseInt(ancestor))
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
|
return newTree[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (father.length >= 1) {
|
||||||
|
let filterfather = [...new Set(father)];
|
||||||
|
|
||||||
|
filterfather.map(father => {
|
||||||
|
tmpTree.push(rawTree.filter(raw => raw.id == father));
|
||||||
|
});
|
||||||
|
|
||||||
|
let tree = [...new Set(tmpTree)];
|
||||||
|
tree.map(item => {
|
||||||
|
let tmpItem = item[0];
|
||||||
|
newTree.push(tmpItem);
|
||||||
|
});
|
||||||
|
|
||||||
|
return newTree;
|
||||||
|
}
|
||||||
|
|
||||||
|
return rawTree.filter(item => item);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
load: function() {
|
load: function() {
|
||||||
this.reload();
|
this.reload();
|
||||||
|
@ -8764,6 +8764,10 @@ div.graph div.legend table {
|
|||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.underline-hover:hover {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
.w105px {
|
.w105px {
|
||||||
width: 105px;
|
width: 105px;
|
||||||
}
|
}
|
||||||
@ -10266,6 +10270,14 @@ div#err_msg_centralised {
|
|||||||
align-items: flex-start;
|
align-items: flex-start;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.div-col-4 {
|
||||||
|
width: 25%;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: flex-start;
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
.div-span {
|
.div-span {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
color: #161628;
|
color: #161628;
|
||||||
@ -12903,6 +12915,14 @@ tr.shown td.details-control {
|
|||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.span_as_label {
|
||||||
|
font-size: 13px;
|
||||||
|
line-height: 16px;
|
||||||
|
color: #161628;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
.basic-options-disabled tr > td,
|
.basic-options-disabled tr > td,
|
||||||
.basic-options-disabled tr > td > div > label {
|
.basic-options-disabled tr > td > div > label {
|
||||||
color: gray;
|
color: gray;
|
||||||
|
@ -743,6 +743,9 @@ p {
|
|||||||
margin-block-end: 1em;
|
margin-block-end: 1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
strong {
|
||||||
|
font-size: inherit;
|
||||||
|
}
|
||||||
/* Styles for the solid icons */
|
/* Styles for the solid icons */
|
||||||
|
|
||||||
.fa {
|
.fa {
|
||||||
|
File diff suppressed because one or more lines are too long
@ -131,7 +131,7 @@
|
|||||||
<div style='padding-bottom: 50px'>
|
<div style='padding-bottom: 50px'>
|
||||||
<?php
|
<?php
|
||||||
$version = '7.0NG.774';
|
$version = '7.0NG.774';
|
||||||
$build = '231211';
|
$build = '231213';
|
||||||
$banner = "v$version Build $build";
|
$banner = "v$version Build $build";
|
||||||
error_reporting(0);
|
error_reporting(0);
|
||||||
|
|
||||||
|
@ -320,6 +320,7 @@ $table->size[0] = '50%';
|
|||||||
$table->size[1] = '50%';
|
$table->size[1] = '50%';
|
||||||
$table->class = 'filter-table-adv';
|
$table->class = 'filter-table-adv';
|
||||||
|
|
||||||
|
$table->cellstyle['group'][0] = 'display: flex;width: 95% !important;';
|
||||||
$table->data['group'][0] = html_print_label_input_block(
|
$table->data['group'][0] = html_print_label_input_block(
|
||||||
__('Group'),
|
__('Group'),
|
||||||
html_print_select_groups(
|
html_print_select_groups(
|
||||||
@ -336,7 +337,8 @@ $table->data['group'][0] = html_print_label_input_block(
|
|||||||
true,
|
true,
|
||||||
'',
|
'',
|
||||||
false
|
false
|
||||||
)
|
),
|
||||||
|
['div_class' => 'w100p']
|
||||||
);
|
);
|
||||||
|
|
||||||
$table->data['group'][0] .= html_print_label_input_block(
|
$table->data['group'][0] .= html_print_label_input_block(
|
||||||
@ -346,11 +348,7 @@ $table->data['group'][0] .= html_print_label_input_block(
|
|||||||
1,
|
1,
|
||||||
$recursion,
|
$recursion,
|
||||||
true
|
true
|
||||||
),
|
)
|
||||||
[
|
|
||||||
'div_class' => 'add-input-reverse',
|
|
||||||
'label_class' => 'label-thin',
|
|
||||||
]
|
|
||||||
);
|
);
|
||||||
|
|
||||||
$table->data['group'][1] = html_print_label_input_block(
|
$table->data['group'][1] = html_print_label_input_block(
|
||||||
@ -405,7 +403,7 @@ foreach ($pre_fields as $key => $value) {
|
|||||||
|
|
||||||
$table->data[1][0] = html_print_label_input_block(
|
$table->data[1][0] = html_print_label_input_block(
|
||||||
__('Operating System'),
|
__('Operating System'),
|
||||||
html_print_select($fields, 'os', $os, '', 'All', 0, true)
|
html_print_select($fields, 'os', $os, '', 'All', 0, true, false, true, 'w100p', false, 'width:100%')
|
||||||
);
|
);
|
||||||
|
|
||||||
$table->data[1][1] = html_print_label_input_block(
|
$table->data[1][1] = html_print_label_input_block(
|
||||||
@ -428,9 +426,22 @@ if (function_exists('policies_get_policies') === true) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$table->data[2][0] = html_print_label_input_block(
|
$table->data[2][1] = html_print_label_input_block(
|
||||||
__('Policies'),
|
__('Policies'),
|
||||||
html_print_select($fields, 'policies[]', $policies, '', 'All', 0, true, true)
|
html_print_select(
|
||||||
|
$fields,
|
||||||
|
'policies',
|
||||||
|
$policies,
|
||||||
|
'this.form.submit()',
|
||||||
|
__('All'),
|
||||||
|
0,
|
||||||
|
true,
|
||||||
|
false,
|
||||||
|
true,
|
||||||
|
'w100p',
|
||||||
|
false,
|
||||||
|
'width: 100%'
|
||||||
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
$custom_fields = db_get_all_fields_in_table('tagent_custom_fields');
|
$custom_fields = db_get_all_fields_in_table('tagent_custom_fields');
|
||||||
@ -438,7 +449,7 @@ if ($custom_fields === false) {
|
|||||||
$custom_fields = [];
|
$custom_fields = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
$div_custom_fields = '<div class="flex-row">';
|
$div_custom_fields = '<div class="flex-row w100p" style="justify-content: unset;">';
|
||||||
foreach ($custom_fields as $custom_field) {
|
foreach ($custom_fields as $custom_field) {
|
||||||
$custom_field_value = '';
|
$custom_field_value = '';
|
||||||
if (empty($ag_custom_fields) === false) {
|
if (empty($ag_custom_fields) === false) {
|
||||||
@ -448,10 +459,10 @@ foreach ($custom_fields as $custom_field) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$div_custom_fields .= '<div class="div-col">';
|
$div_custom_fields .= '<div class="div-col-4">';
|
||||||
|
|
||||||
$div_custom_fields .= '<div class="div-span">';
|
$div_custom_fields .= '<div class="div-span">';
|
||||||
$div_custom_fields .= '<span >'.$custom_field['name'].'</span>';
|
$div_custom_fields .= '<span class="span_as_label">'.$custom_field['name'].'</span>';
|
||||||
$div_custom_fields .= '</div>';
|
$div_custom_fields .= '</div>';
|
||||||
|
|
||||||
$div_custom_fields .= '<div class="div-input">';
|
$div_custom_fields .= '<div class="div-input">';
|
||||||
@ -890,7 +901,11 @@ if ($group_id > 0) {
|
|||||||
$groups = array_keys($user_groups);
|
$groups = array_keys($user_groups);
|
||||||
}
|
}
|
||||||
|
|
||||||
$all_policies = in_array(0, ($policies ?? []));
|
if (is_array($policies)) {
|
||||||
|
$all_policies = in_array(0, ($policies ?? []));
|
||||||
|
} else {
|
||||||
|
$all_policies = [];
|
||||||
|
}
|
||||||
|
|
||||||
$id_os_sql = '';
|
$id_os_sql = '';
|
||||||
$policies_sql = '';
|
$policies_sql = '';
|
||||||
|
@ -121,8 +121,11 @@ if (empty($agent['os_version']) !== true) {
|
|||||||
$os_agent_text = $os_version.' ('.$os_version_name[1].')';
|
$os_agent_text = $os_version.' ('.$os_version_name[1].')';
|
||||||
} else {
|
} else {
|
||||||
$os_name = preg_split('/[0-9]/', $agent['os_version'])[0];
|
$os_name = preg_split('/[0-9]/', $agent['os_version'])[0];
|
||||||
$os_version = explode($os_name, explode('(', $agent['os_version'])[0])[1];
|
$os_agent_text = $agent['os_version'];
|
||||||
$os_agent_text = $os_version;
|
if (empty($os_name) === false) {
|
||||||
|
$os_version = explode($os_name, explode('(', $agent['os_version'])[0])[1];
|
||||||
|
$os_agent_text = $os_version;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1289,6 +1289,10 @@ if ($inventory_module !== 'basic') {
|
|||||||
$style = 'width: 100%';
|
$style = 'width: 100%';
|
||||||
$ordering = true;
|
$ordering = true;
|
||||||
$searching = false;
|
$searching = false;
|
||||||
|
$search = [];
|
||||||
|
if (strlen($inventory_search_string) > 0) {
|
||||||
|
$search['value'] = $inventory_search_string;
|
||||||
|
}
|
||||||
|
|
||||||
$columns = [
|
$columns = [
|
||||||
'alias',
|
'alias',
|
||||||
@ -1338,6 +1342,7 @@ if ($inventory_module !== 'basic') {
|
|||||||
'get_data_basic_info' => 1,
|
'get_data_basic_info' => 1,
|
||||||
'id_agent' => $id_agente,
|
'id_agent' => $id_agente,
|
||||||
'id_group' => $inventory_id_group,
|
'id_group' => $inventory_id_group,
|
||||||
|
'search' => $search,
|
||||||
],
|
],
|
||||||
'zeroRecords' => __('Agent info not found'),
|
'zeroRecords' => __('Agent info not found'),
|
||||||
'emptyTable' => __('Agent info not found'),
|
'emptyTable' => __('Agent info not found'),
|
||||||
|
@ -76,15 +76,15 @@ if ($searchAgents) {
|
|||||||
$sql = "SELECT DISTINCT taddress_agent.id_agent FROM taddress
|
$sql = "SELECT DISTINCT taddress_agent.id_agent FROM taddress
|
||||||
INNER JOIN taddress_agent ON
|
INNER JOIN taddress_agent ON
|
||||||
taddress.id_a = taddress_agent.id_a
|
taddress.id_a = taddress_agent.id_a
|
||||||
WHERE taddress.ip LIKE '$stringSearchSQL'";
|
WHERE LOWER(REPLACE(taddress.ip, ' ', ' ')) LIKE LOWER('$stringSearchSQL')";
|
||||||
|
|
||||||
$id = db_get_all_rows_sql($sql);
|
$id = db_get_all_rows_sql($sql);
|
||||||
if ($id != '') {
|
if ($id != '') {
|
||||||
$aux = $id[0]['id_agent'];
|
$aux = $id[0]['id_agent'];
|
||||||
$search_sql = " t1.nombre LIKE '".$stringSearchSQL."' OR
|
$search_sql = " LOWER(REPLACE(t1.nombre, ' ', ' ')) LIKE LOWER('".$stringSearchSQL."') OR
|
||||||
t2.nombre LIKE '".$stringSearchSQL."' OR
|
LOWER(REPLACE(t2.nombre, ' ', ' ')) LIKE LOWER('".$stringSearchSQL."') OR
|
||||||
t1.alias LIKE '".$stringSearchSQL."' OR
|
LOWER(REPLACE(t1.alias, ' ', ' ')) LIKE LOWER('".$stringSearchSQL."') OR
|
||||||
t1.comentarios LIKE '".$stringSearchSQL."' OR
|
LOWER(REPLACE(t1.comentarios, ' ', ' ')) LIKE LOWER('".$stringSearchSQL."') OR
|
||||||
t1.id_agente =".$aux;
|
t1.id_agente =".$aux;
|
||||||
|
|
||||||
$idCount = count($id);
|
$idCount = count($id);
|
||||||
@ -96,16 +96,16 @@ if ($searchAgents) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$search_sql = " t1.nombre LIKE '".$stringSearchSQL."' OR
|
$search_sql = " LOWER(REPLACE(t1.nombre, ' ', ' ')) LIKE LOWER('".$stringSearchSQL."') OR
|
||||||
t2.nombre LIKE '".$stringSearchSQL."' OR
|
LOWER(REPLACE(t2.nombre, ' ', ' ')) LIKE LOWER('".$stringSearchSQL."') OR
|
||||||
t1.direccion LIKE '".$stringSearchSQL."' OR
|
LOWER(REPLACE(t1.direccion, ' ', ' ')) LIKE LOWER('".$stringSearchSQL."') OR
|
||||||
t1.comentarios LIKE '".$stringSearchSQL."' OR
|
LOWER(REPLACE(t1.comentarios, ' ', ' ')) LIKE LOWER('".$stringSearchSQL."') OR
|
||||||
t1.alias LIKE '".$stringSearchSQL."'";
|
LOWER(REPLACE(t1.alias, ' ', ' ')) LIKE LOWER('".$stringSearchSQL."')";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($has_secondary === true) {
|
if ($has_secondary === true) {
|
||||||
$search_sql .= " OR (tasg.id_group IS NOT NULL AND
|
$search_sql .= " OR (tasg.id_group IS NOT NULL AND
|
||||||
tasg.id_group IN (SELECT id_grupo FROM tgrupo WHERE nombre LIKE '".$stringSearchSQL."'))";
|
tasg.id_group IN (SELECT id_grupo FROM tgrupo WHERE LOWER(REPLACE(nombre, ' ', ' ')) LIKE LOWER('".$stringSearchSQL."')))";
|
||||||
}
|
}
|
||||||
|
|
||||||
$sql = "
|
$sql = "
|
||||||
|
@ -139,64 +139,64 @@ if ($searchAlerts) {
|
|||||||
switch ($config['dbtype']) {
|
switch ($config['dbtype']) {
|
||||||
case 'mysql':
|
case 'mysql':
|
||||||
$whereAlerts = 'AND (
|
$whereAlerts = 'AND (
|
||||||
id_alert_template IN (SELECT id FROM talert_templates WHERE name LIKE "%'.$stringSearchSQL.'%") OR
|
id_alert_template IN (SELECT id FROM talert_templates WHERE REPLACE(name, " ", " ") LIKE "%'.$stringSearchSQL.'%") OR
|
||||||
id_alert_template IN (
|
id_alert_template IN (
|
||||||
SELECT id
|
SELECT id
|
||||||
FROM talert_templates
|
FROM talert_templates
|
||||||
WHERE id_alert_action IN (
|
WHERE id_alert_action IN (
|
||||||
SELECT id
|
SELECT id
|
||||||
FROM talert_actions
|
FROM talert_actions
|
||||||
WHERE name LIKE "%'.$stringSearchSQL.'%")) OR
|
WHERE REPLACE(name, " ", " ") LIKE "%'.$stringSearchSQL.'%")) OR
|
||||||
talert_template_modules.id IN (
|
talert_template_modules.id IN (
|
||||||
SELECT id_alert_template_module
|
SELECT id_alert_template_module
|
||||||
FROM talert_template_module_actions
|
FROM talert_template_module_actions
|
||||||
WHERE id_alert_action IN (
|
WHERE id_alert_action IN (
|
||||||
SELECT id
|
SELECT id
|
||||||
FROM talert_actions
|
FROM talert_actions
|
||||||
WHERE name LIKE "%'.$stringSearchSQL.'%")) OR
|
WHERE REPLACE(name, " ", " ") LIKE "%'.$stringSearchSQL.'%")) OR
|
||||||
id_agent_module IN (
|
id_agent_module IN (
|
||||||
SELECT id_agente_modulo
|
SELECT id_agente_modulo
|
||||||
FROM tagente_modulo
|
FROM tagente_modulo
|
||||||
WHERE nombre LIKE "%'.$stringSearchSQL.'%") OR
|
WHERE REPLACE(nombre, " ", " ") LIKE "%'.$stringSearchSQL.'%") OR
|
||||||
id_agent_module IN (
|
id_agent_module IN (
|
||||||
SELECT id_agente_modulo
|
SELECT id_agente_modulo
|
||||||
FROM tagente_modulo
|
FROM tagente_modulo
|
||||||
WHERE id_agente IN (
|
WHERE id_agente IN (
|
||||||
SELECT id_agente
|
SELECT id_agente
|
||||||
FROM tagente
|
FROM tagente
|
||||||
WHERE nombre LIKE "%'.$stringSearchSQL.'%" '.$extra_sql.'))
|
WHERE REPLACE(nombre, " ", " ") LIKE "%'.$stringSearchSQL.'%" '.$extra_sql.'))
|
||||||
)';
|
)';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'postgresql':
|
case 'postgresql':
|
||||||
case 'oracle':
|
case 'oracle':
|
||||||
$whereAlerts = 'AND (
|
$whereAlerts = 'AND (
|
||||||
id_alert_template IN (SELECT id FROM talert_templates WHERE upper(name) LIKE \'%'.strtolower($stringSearchSQL).'%\') OR
|
id_alert_template IN (SELECT id FROM talert_templates WHERE upper(REPLACE(name, " ", " ")) LIKE \'%'.strtolower($stringSearchSQL).'%\') OR
|
||||||
id_alert_template IN (
|
id_alert_template IN (
|
||||||
SELECT id
|
SELECT id
|
||||||
FROM talert_templates
|
FROM talert_templates
|
||||||
WHERE id_alert_action IN (
|
WHERE id_alert_action IN (
|
||||||
SELECT id
|
SELECT id
|
||||||
FROM talert_actions
|
FROM talert_actions
|
||||||
WHERE upper(name) LIKE \'%'.strtolower($stringSearchSQL).'%\')) OR
|
WHERE upper(REPLACE(name, " ", " ")) LIKE \'%'.strtolower($stringSearchSQL).'%\')) OR
|
||||||
talert_template_modules.id IN (
|
talert_template_modules.id IN (
|
||||||
SELECT id_alert_template_module
|
SELECT id_alert_template_module
|
||||||
FROM talert_template_module_actions
|
FROM talert_template_module_actions
|
||||||
WHERE id_alert_action IN (
|
WHERE id_alert_action IN (
|
||||||
SELECT id
|
SELECT id
|
||||||
FROM talert_actions
|
FROM talert_actions
|
||||||
WHERE upper(name) LIKE \'%'.strtolower($stringSearchSQL).'%\')) OR
|
WHERE upper(REPLACE(name, " ", " ")) LIKE \'%'.strtolower($stringSearchSQL).'%\')) OR
|
||||||
id_agent_module IN (
|
id_agent_module IN (
|
||||||
SELECT id_agente_modulo
|
SELECT id_agente_modulo
|
||||||
FROM tagente_modulo
|
FROM tagente_modulo
|
||||||
WHERE upper(nombre) LIKE \'%'.strtolower($stringSearchSQL).'%\') OR
|
WHERE upper(REPLACE(nombre, " ", " ")) LIKE \'%'.strtolower($stringSearchSQL).'%\') OR
|
||||||
id_agent_module IN (
|
id_agent_module IN (
|
||||||
SELECT id_agente_modulo
|
SELECT id_agente_modulo
|
||||||
FROM tagente_modulo
|
FROM tagente_modulo
|
||||||
WHERE id_agente IN (
|
WHERE id_agente IN (
|
||||||
SELECT id_agente
|
SELECT id_agente
|
||||||
FROM tagente
|
FROM tagente
|
||||||
WHERE upper(nombre) LIKE \'%'.strtolower($stringSearchSQL).'%\' '.$extra_sql.'))
|
WHERE upper(REPLACE(nombre, " ", " ")) LIKE \'%'.strtolower($stringSearchSQL).'%\' '.$extra_sql.'))
|
||||||
)';
|
)';
|
||||||
$agents = false;
|
$agents = false;
|
||||||
break;
|
break;
|
||||||
|
@ -31,7 +31,7 @@ if ($searchGraphs) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$filter = [];
|
$filter = [];
|
||||||
$filter[] = "(upper(name) LIKE '%".strtolower($stringSearchSQL)."%' OR upper(description) LIKE '%$".strtolower($stringSearchSQL)."%')";
|
$filter[] = "(upper(REPLACE(name, ' ', ' ')) LIKE '%".strtolower($stringSearchSQL)."%' OR upper(REPLACE(description, ' ', ' ')) LIKE '%$".strtolower($stringSearchSQL)."%')";
|
||||||
$filter['id_graph'] = $usergraphs_id;
|
$filter['id_graph'] = $usergraphs_id;
|
||||||
|
|
||||||
$columns = [
|
$columns = [
|
||||||
|
@ -62,10 +62,10 @@ $sql = "SELECT DISTINCT taddress_agent.id_agent FROM taddress
|
|||||||
$id = db_get_all_rows_sql($sql);
|
$id = db_get_all_rows_sql($sql);
|
||||||
if ($id != '') {
|
if ($id != '') {
|
||||||
$aux = $id[0]['id_agent'];
|
$aux = $id[0]['id_agent'];
|
||||||
$search_sql = " t1.nombre LIKE '".$stringSearchSQL."' OR
|
$search_sql = " REPLACE(t1.nombre, ' ', ' ') LIKE '".$stringSearchSQL."' OR
|
||||||
t2.nombre LIKE '".$stringSearchSQL."' OR
|
REPLACE(t2.nombre, ' ', ' ') LIKE '".$stringSearchSQL."' OR
|
||||||
t1.alias LIKE '".$stringSearchSQL."' OR
|
REPLACE(t1.alias, ' ', ' ') LIKE '".$stringSearchSQL."' OR
|
||||||
t1.comentarios LIKE '".$stringSearchSQL."' OR
|
REPLACE(t1.comentarios, ' ', ' ') LIKE '".$stringSearchSQL."' OR
|
||||||
t1.id_agente =".$aux;
|
t1.id_agente =".$aux;
|
||||||
|
|
||||||
$idCount = count($id);
|
$idCount = count($id);
|
||||||
@ -77,16 +77,16 @@ if ($id != '') {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$search_sql = " t1.nombre LIKE '".$stringSearchSQL."' OR
|
$search_sql = " REPLACE(t1.nombre, ' ', ' ') LIKE '".$stringSearchSQL."' OR
|
||||||
t2.nombre LIKE '".$stringSearchSQL."' OR
|
REPLACE(t2.nombre, ' ', ' ') LIKE '".$stringSearchSQL."' OR
|
||||||
t1.direccion LIKE '".$stringSearchSQL."' OR
|
REPLACE(t1.direccion, ' ', ' ') LIKE '".$stringSearchSQL."' OR
|
||||||
t1.comentarios LIKE '".$stringSearchSQL."' OR
|
REPLACE(t1.comentarios, ' ', ' ') LIKE '".$stringSearchSQL."' OR
|
||||||
t1.alias LIKE '".$stringSearchSQL."'";
|
REPLACE(t1.alias, ' ', ' ') LIKE '".$stringSearchSQL."'";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($has_secondary === true) {
|
if ($has_secondary === true) {
|
||||||
$search_sql .= " OR (tasg.id_group IS NOT NULL AND
|
$search_sql .= " OR (tasg.id_group IS NOT NULL AND
|
||||||
tasg.id_group IN (SELECT id_grupo FROM tgrupo WHERE nombre LIKE '".$stringSearchSQL."'))";
|
tasg.id_group IN (SELECT id_grupo FROM tgrupo WHERE REPLACE(nombre, ' ', ' ') LIKE '".$stringSearchSQL."'))";
|
||||||
}
|
}
|
||||||
|
|
||||||
$sql = "
|
$sql = "
|
||||||
|
@ -32,7 +32,7 @@ if ((bool) $searchMaps === true) {
|
|||||||
FROM tlayout tl
|
FROM tlayout tl
|
||||||
LEFT JOIN tlayout_data tld
|
LEFT JOIN tlayout_data tld
|
||||||
ON tl.id = tld.id_layout
|
ON tl.id = tld.id_layout
|
||||||
WHERE tl.name LIKE "%%%s%%"
|
WHERE REPLACE(tl.name, " ", " ") LIKE "%%%s%%"
|
||||||
AND tl.id_group IN (%s)
|
AND tl.id_group IN (%s)
|
||||||
GROUP BY tl.id, tl.name, tl.id_group',
|
GROUP BY tl.id, tl.name, tl.id_group',
|
||||||
$stringSearchSQL,
|
$stringSearchSQL,
|
||||||
|
@ -142,8 +142,8 @@ if ($searchModules) {
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
AND
|
AND
|
||||||
(t1.nombre LIKE "%'.$stringSearchSQL.'%" OR
|
(REPLACE(t1.nombre, " ", " ") LIKE "%'.$stringSearchSQL.'%" OR
|
||||||
t3.nombre LIKE "%'.$stringSearchSQL.'%")
|
REPLACE(t3.nombre, " ", " ") LIKE "%'.$stringSearchSQL.'%")
|
||||||
AND t1.disabled = 0';
|
AND t1.disabled = 0';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -172,8 +172,8 @@ if ($searchModules) {
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
) AND
|
) AND
|
||||||
(t1.nombre LIKE \'%'.$stringSearchSQL.'%\' OR
|
(REPLACE(t1.nombre, " ", " ") LIKE \'%'.$stringSearchSQL.'%\' OR
|
||||||
t3.nombre LIKE \'%'.$stringSearchSQL.'%\')';
|
REPLACE(t3.nombre, " ", " ") LIKE \'%'.$stringSearchSQL.'%\')';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'oracle':
|
case 'oracle':
|
||||||
@ -201,8 +201,8 @@ if ($searchModules) {
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
) AND
|
) AND
|
||||||
(LOWER(t1.nombre) LIKE \'%'.strtolower($stringSearchSQL).'%\' OR
|
(LOWER(REPLACE(t1.nombre, " ", " ")) LIKE \'%'.strtolower($stringSearchSQL).'%\' OR
|
||||||
LOWER(t3.nombre) LIKE \'%'.strtolower($stringSearchSQL).'%\')';
|
LOWER(REPLACE(t3.nombre, " ", " ")) LIKE \'%'.strtolower($stringSearchSQL).'%\')';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -207,7 +207,7 @@ if ($searchpolicies === true) {
|
|||||||
|
|
||||||
$sql = "SELECT id, name, description, id_group, status
|
$sql = "SELECT id, name, description, id_group, status
|
||||||
FROM tpolicies
|
FROM tpolicies
|
||||||
WHERE name LIKE '$stringSearchSQL'
|
WHERE REPLACE(name, ' ', ' ') LIKE '$stringSearchSQL'
|
||||||
AND id_group IN ($id_user_groups_str)
|
AND id_group IN ($id_user_groups_str)
|
||||||
";
|
";
|
||||||
}
|
}
|
||||||
|
@ -46,13 +46,13 @@ if ($searchReports) {
|
|||||||
case 'postgresql':
|
case 'postgresql':
|
||||||
$sql = "SELECT id_report, name, description
|
$sql = "SELECT id_report, name, description
|
||||||
FROM treport
|
FROM treport
|
||||||
WHERE (name LIKE '%".$stringSearchSQL."%' OR description LIKE '%".$stringSearchSQL."%')".$reports_condition;
|
WHERE (REPLACE(name, ' ', ' ') LIKE '%".$stringSearchSQL."%' OR REPLACE(description, ' ', ' ') LIKE '%".$stringSearchSQL."%')".$reports_condition;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'oracle':
|
case 'oracle':
|
||||||
$sql = "SELECT id_report, name, description
|
$sql = "SELECT id_report, name, description
|
||||||
FROM treport
|
FROM treport
|
||||||
WHERE (upper(name) LIKE '%".strtolower($stringSearchSQL)."%' OR description LIKE '%".strtolower($stringSearchSQL)."%')".$reports_condition;
|
WHERE (upper(REPLACE(name, ' ', ' ') ) LIKE '%".strtolower($stringSearchSQL)."%' OR REPLACE(description, ' ', ' ') LIKE '%".strtolower($stringSearchSQL)."%')".$reports_condition;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -77,13 +77,13 @@ if ($searchReports) {
|
|||||||
case 'postgresql':
|
case 'postgresql':
|
||||||
$sql_count = "SELECT COUNT(id_report) AS count
|
$sql_count = "SELECT COUNT(id_report) AS count
|
||||||
FROM treport
|
FROM treport
|
||||||
WHERE (name LIKE '%".$stringSearchSQL."%' OR description LIKE '%".$stringSearchSQL."%')".$reports_condition;
|
WHERE (REPLACE(name, ' ', ' ') LIKE '%".$stringSearchSQL."%' OR REPLACE(description, ' ', ' ') LIKE '%".$stringSearchSQL."%')".$reports_condition;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'oracle':
|
case 'oracle':
|
||||||
$sql_count = "SELECT COUNT(id_report) AS count
|
$sql_count = "SELECT COUNT(id_report) AS count
|
||||||
FROM treport
|
FROM treport
|
||||||
WHERE (upper(name) LIKE '%".strtolower($stringSearchSQL)."%' OR upper(description) LIKE '%".strtolower($stringSearchSQL)."%')".$reports_condition;
|
WHERE (upper(REPLACE(name, ' ', ' ') ) LIKE '%".strtolower($stringSearchSQL)."%' OR upper(REPLACE(description, ' ', ' ') ) LIKE '%".strtolower($stringSearchSQL)."%')".$reports_condition;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -179,23 +179,23 @@ if ($searchUsers) {
|
|||||||
case 'mysql':
|
case 'mysql':
|
||||||
case 'postgresql':
|
case 'postgresql':
|
||||||
$sql = "SELECT id_user, fullname, firstname, lastname, middlename, email, last_connect, is_admin, comments FROM tusuario
|
$sql = "SELECT id_user, fullname, firstname, lastname, middlename, email, last_connect, is_admin, comments FROM tusuario
|
||||||
WHERE fullname LIKE '%".$stringSearchSQL."%' OR
|
WHERE REPLACE(fullname, ' ', ' ') LIKE '%".$stringSearchSQL."%' OR
|
||||||
id_user LIKE '%".$stringSearchSQL."%' OR
|
REPLACE(id_user, ' ', ' ') LIKE '%".$stringSearchSQL."%' OR
|
||||||
firstname LIKE '%".$stringSearchSQL."%' OR
|
REPLACE(firstname, ' ', ' ') LIKE '%".$stringSearchSQL."%' OR
|
||||||
lastname LIKE '%".$stringSearchSQL."%' OR
|
REPLACE(lastname, ' ', ' ') LIKE '%".$stringSearchSQL."%' OR
|
||||||
middlename LIKE '%".$stringSearchSQL."%' OR
|
REPLACE(middlename, ' ', ' ') LIKE '%".$stringSearchSQL."%' OR
|
||||||
email LIKE '%".$stringSearchSQL."%'
|
REPLACE(email, ' ', ' ') LIKE '%".$stringSearchSQL."%'
|
||||||
ORDER BY ".$order['field'].' '.$order['order'];
|
ORDER BY ".$order['field'].' '.$order['order'];
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'oracle':
|
case 'oracle':
|
||||||
$sql = "SELECT id_user, fullname, firstname, lastname, middlename, email, last_connect, is_admin, comments FROM tusuario
|
$sql = "SELECT id_user, fullname, firstname, lastname, middlename, email, last_connect, is_admin, comments FROM tusuario
|
||||||
WHERE upper(fullname) LIKE '%".strtolower($stringSearchSQL)."%' OR
|
WHERE upper(REPLACE(fullname, ' ', ' ') ) LIKE '%".strtolower($stringSearchSQL)."%' OR
|
||||||
upper(id_user) LIKE '%".strtolower($stringSearchSQL)."%' OR
|
upper(REPLACE(id_user, ' ', ' ') ) LIKE '%".strtolower($stringSearchSQL)."%' OR
|
||||||
upper(firstname) LIKE '%".strtolower($stringSearchSQL)."%' OR
|
upper(REPLACE(firstname, ' ', ' ') ) LIKE '%".strtolower($stringSearchSQL)."%' OR
|
||||||
upper(lastname) LIKE '%".strtolower($stringSearchSQL)."%' OR
|
upper(REPLACE(lastname, ' ', ' ') ) LIKE '%".strtolower($stringSearchSQL)."%' OR
|
||||||
upper(middlename) LIKE '%".strtolower($stringSearchSQL)."%' OR
|
upper(REPLACE(middlename, ' ', ' ') ) LIKE '%".strtolower($stringSearchSQL)."%' OR
|
||||||
upper(email) LIKE '%".strtolower($stringSearchSQL)."%'
|
upper(REPLACE(email, ' ', ' ') ) LIKE '%".strtolower($stringSearchSQL)."%'
|
||||||
ORDER BY ".$order['field'].' '.$order['order'];
|
ORDER BY ".$order['field'].' '.$order['order'];
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -91,7 +91,7 @@ $create_text_file = (bool) get_parameter('create_text_file');
|
|||||||
$default_real_directory = realpath($config['homedir'].'/'.$fallback_directory);
|
$default_real_directory = realpath($config['homedir'].'/'.$fallback_directory);
|
||||||
|
|
||||||
if ($upload_file_or_zip === true) {
|
if ($upload_file_or_zip === true) {
|
||||||
upload_file($upload_file_or_zip, $default_real_directory, $real_directory);
|
upload_file($upload_file_or_zip, $default_real_directory, $real_directory, ['mib', 'zip']);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($create_text_file === true) {
|
if ($create_text_file === true) {
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
%define debug_package %{nil}
|
%define debug_package %{nil}
|
||||||
%define name pandorafms_console
|
%define name pandorafms_console
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.774
|
||||||
%define release 231211
|
%define release 231213
|
||||||
|
|
||||||
# User and Group under which Apache is running
|
# User and Group under which Apache is running
|
||||||
%define httpd_name httpd
|
%define httpd_name httpd
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
%define debug_package %{nil}
|
%define debug_package %{nil}
|
||||||
%define name pandorafms_console
|
%define name pandorafms_console
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.774
|
||||||
%define release 231211
|
%define release 231213
|
||||||
|
|
||||||
# User and Group under which Apache is running
|
# User and Group under which Apache is running
|
||||||
%define httpd_name httpd
|
%define httpd_name httpd
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
#
|
#
|
||||||
%define name pandorafms_console
|
%define name pandorafms_console
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.774
|
||||||
%define release 231211
|
%define release 231213
|
||||||
%define httpd_name httpd
|
%define httpd_name httpd
|
||||||
# User and Group under which Apache is running
|
# User and Group under which Apache is running
|
||||||
%define httpd_name apache2
|
%define httpd_name apache2
|
||||||
|
@ -2730,7 +2730,7 @@ SET @short_name = 'pandorafms.vmware';
|
|||||||
SET @name = 'VMware';
|
SET @name = 'VMware';
|
||||||
SET @section = 'app';
|
SET @section = 'app';
|
||||||
SET @description = 'Monitor ESXi hosts, datastores and VMs from a specific datacenter';
|
SET @description = 'Monitor ESXi hosts, datastores and VMs from a specific datacenter';
|
||||||
SET @version = '1.1';
|
SET @version = '1.2';
|
||||||
INSERT IGNORE INTO `tdiscovery_apps` (`id_app`, `short_name`, `name`, `section`, `description`, `version`) VALUES ('', @short_name, @name, @section, @description, @version);
|
INSERT IGNORE INTO `tdiscovery_apps` (`id_app`, `short_name`, `name`, `section`, `description`, `version`) VALUES ('', @short_name, @name, @section, @description, @version);
|
||||||
SELECT @id_app := `id_app` FROM `tdiscovery_apps` WHERE `short_name` = @short_name;
|
SELECT @id_app := `id_app` FROM `tdiscovery_apps` WHERE `short_name` = @short_name;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
package: pandorafms-server
|
package: pandorafms-server
|
||||||
Version: 7.0NG.774-231211
|
Version: 7.0NG.774-231213
|
||||||
Architecture: all
|
Architecture: all
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Section: admin
|
Section: admin
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
pandora_version="7.0NG.774-231211"
|
pandora_version="7.0NG.774-231213"
|
||||||
|
|
||||||
package_cpan=0
|
package_cpan=0
|
||||||
package_pandora=1
|
package_pandora=1
|
||||||
|
@ -46,7 +46,7 @@ our @EXPORT = qw(
|
|||||||
|
|
||||||
# version: Defines actual version of Pandora Server for this module only
|
# version: Defines actual version of Pandora Server for this module only
|
||||||
my $pandora_version = "7.0NG.774";
|
my $pandora_version = "7.0NG.774";
|
||||||
my $pandora_build = "231211";
|
my $pandora_build = "231213";
|
||||||
our $VERSION = $pandora_version." ".$pandora_build;
|
our $VERSION = $pandora_version." ".$pandora_build;
|
||||||
|
|
||||||
# Setup hash
|
# Setup hash
|
||||||
|
@ -5786,9 +5786,9 @@ sub pandora_inhibit_alerts {
|
|||||||
sub pandora_cps_enabled($$) {
|
sub pandora_cps_enabled($$) {
|
||||||
my ($agent, $module) = @_;
|
my ($agent, $module) = @_;
|
||||||
|
|
||||||
return 1 if ($agent->{'cps'} > 0);
|
return 1 if ($agent->{'cps'} >= 0);
|
||||||
|
|
||||||
return 1 if ($module->{'cps'} > 0);
|
return 1 if ($module->{'cps'} >= 0);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -34,7 +34,7 @@ our @ISA = qw(Exporter);
|
|||||||
|
|
||||||
# version: Defines actual version of Pandora Server for this module only
|
# version: Defines actual version of Pandora Server for this module only
|
||||||
my $pandora_version = "7.0NG.774";
|
my $pandora_version = "7.0NG.774";
|
||||||
my $pandora_build = "231211";
|
my $pandora_build = "231213";
|
||||||
our $VERSION = $pandora_version." ".$pandora_build;
|
our $VERSION = $pandora_version." ".$pandora_build;
|
||||||
|
|
||||||
our %EXPORT_TAGS = ( 'all' => [ qw() ] );
|
our %EXPORT_TAGS = ( 'all' => [ qw() ] );
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
%define debug_package %{nil}
|
%define debug_package %{nil}
|
||||||
%define name pandorafms_server
|
%define name pandorafms_server
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.774
|
||||||
%define release 231211
|
%define release 231213
|
||||||
|
|
||||||
Summary: Pandora FMS Server
|
Summary: Pandora FMS Server
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
%global __os_install_post %{nil}
|
%global __os_install_post %{nil}
|
||||||
%define name pandorafms_server
|
%define name pandorafms_server
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.774
|
||||||
%define release 231211
|
%define release 231213
|
||||||
|
|
||||||
Summary: Pandora FMS Server
|
Summary: Pandora FMS Server
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
# **********************************************************************
|
# **********************************************************************
|
||||||
|
|
||||||
PI_VERSION="7.0NG.774"
|
PI_VERSION="7.0NG.774"
|
||||||
PI_BUILD="231211"
|
PI_BUILD="231213"
|
||||||
|
|
||||||
MODE=$1
|
MODE=$1
|
||||||
if [ $# -gt 1 ]; then
|
if [ $# -gt 1 ]; then
|
||||||
|
@ -38,7 +38,7 @@ use PandoraFMS::Config;
|
|||||||
use PandoraFMS::DB;
|
use PandoraFMS::DB;
|
||||||
|
|
||||||
# version: define current version
|
# version: define current version
|
||||||
my $version = "7.0NG.774 Build 231211";
|
my $version = "7.0NG.774 Build 231213";
|
||||||
|
|
||||||
# Pandora server configuration
|
# Pandora server configuration
|
||||||
my %conf;
|
my %conf;
|
||||||
|
@ -36,7 +36,7 @@ use Encode::Locale;
|
|||||||
Encode::Locale::decode_argv;
|
Encode::Locale::decode_argv;
|
||||||
|
|
||||||
# version: define current version
|
# version: define current version
|
||||||
my $version = "7.0NG.774 Build 231211";
|
my $version = "7.0NG.774 Build 231213";
|
||||||
|
|
||||||
# save program name for logging
|
# save program name for logging
|
||||||
my $progname = basename($0);
|
my $progname = basename($0);
|
||||||
|
@ -742,3 +742,7 @@ p {
|
|||||||
margin-block-start: 1em;
|
margin-block-start: 1em;
|
||||||
margin-block-end: 1em;
|
margin-block-end: 1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
strong {
|
||||||
|
font-size: inherit;
|
||||||
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user