diff --git a/pandora_agents/unix/DEBIAN/control b/pandora_agents/unix/DEBIAN/control index 5dc5e94154..ee79ad5790 100644 --- a/pandora_agents/unix/DEBIAN/control +++ b/pandora_agents/unix/DEBIAN/control @@ -1,5 +1,5 @@ package: pandorafms-agent-unix -Version: 7.0NG.727-181016 +Version: 7.0NG.727-181018 Architecture: all Priority: optional Section: admin diff --git a/pandora_agents/unix/DEBIAN/make_deb_package.sh b/pandora_agents/unix/DEBIAN/make_deb_package.sh index a68be5b5c0..800cd7c3c6 100644 --- a/pandora_agents/unix/DEBIAN/make_deb_package.sh +++ b/pandora_agents/unix/DEBIAN/make_deb_package.sh @@ -14,7 +14,7 @@ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. -pandora_version="7.0NG.727-181016" +pandora_version="7.0NG.727-181018" echo "Test if you has the tools for to make the packages." whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null diff --git a/pandora_agents/unix/pandora_agent b/pandora_agents/unix/pandora_agent index b633aec1cd..4c59adb6c3 100755 --- a/pandora_agents/unix/pandora_agent +++ b/pandora_agents/unix/pandora_agent @@ -42,7 +42,7 @@ my $Sem = undef; my $ThreadSem = undef; use constant AGENT_VERSION => '7.0NG.727'; -use constant AGENT_BUILD => '181016'; +use constant AGENT_BUILD => '181018'; # Agent log default file size maximum and instances use constant DEFAULT_MAX_LOG_SIZE => 600000; diff --git a/pandora_agents/unix/pandora_agent.redhat.spec b/pandora_agents/unix/pandora_agent.redhat.spec index d665624911..759f2b6bc6 100644 --- a/pandora_agents/unix/pandora_agent.redhat.spec +++ b/pandora_agents/unix/pandora_agent.redhat.spec @@ -3,7 +3,7 @@ # %define name pandorafms_agent_unix %define version 7.0NG.727 -%define release 181016 +%define release 181018 Summary: Pandora FMS Linux agent, PERL version Name: %{name} diff --git a/pandora_agents/unix/pandora_agent.spec b/pandora_agents/unix/pandora_agent.spec index 4bb07eb8fb..29425920c8 100644 --- a/pandora_agents/unix/pandora_agent.spec +++ b/pandora_agents/unix/pandora_agent.spec @@ -3,7 +3,7 @@ # %define name pandorafms_agent_unix %define version 7.0NG.727 -%define release 181016 +%define release 181018 Summary: Pandora FMS Linux agent, PERL version Name: %{name} diff --git a/pandora_agents/unix/pandora_agent_installer b/pandora_agents/unix/pandora_agent_installer index 96bdc17bcd..6ab24657a8 100755 --- a/pandora_agents/unix/pandora_agent_installer +++ b/pandora_agents/unix/pandora_agent_installer @@ -10,7 +10,7 @@ # ********************************************************************** PI_VERSION="7.0NG.727" -PI_BUILD="181016" +PI_BUILD="181018" OS_NAME=`uname -s` FORCE=0 diff --git a/pandora_agents/win32/installer/pandora.mpi b/pandora_agents/win32/installer/pandora.mpi index 5828bcccbd..cecca12124 100644 --- a/pandora_agents/win32/installer/pandora.mpi +++ b/pandora_agents/win32/installer/pandora.mpi @@ -186,7 +186,7 @@ UpgradeApplicationID {} Version -{181016} +{181018} ViewReadme {Yes} diff --git a/pandora_agents/win32/pandora.cc b/pandora_agents/win32/pandora.cc index 67c0832882..418d790c32 100644 --- a/pandora_agents/win32/pandora.cc +++ b/pandora_agents/win32/pandora.cc @@ -30,7 +30,7 @@ using namespace Pandora; using namespace Pandora_Strutils; #define PATH_SIZE _MAX_PATH+1 -#define PANDORA_VERSION ("7.0NG.727(Build 181016)") +#define PANDORA_VERSION ("7.0NG.727(Build 181018)") string pandora_path; string pandora_dir; diff --git a/pandora_agents/win32/versioninfo.rc b/pandora_agents/win32/versioninfo.rc index ca96131558..da043c19ce 100644 --- a/pandora_agents/win32/versioninfo.rc +++ b/pandora_agents/win32/versioninfo.rc @@ -11,7 +11,7 @@ BEGIN VALUE "LegalCopyright", "Artica ST" VALUE "OriginalFilename", "PandoraAgent.exe" VALUE "ProductName", "Pandora FMS Windows Agent" - VALUE "ProductVersion", "(7.0NG.727(Build 181016))" + VALUE "ProductVersion", "(7.0NG.727(Build 181018))" VALUE "FileVersion", "1.0.0.0" END END diff --git a/pandora_console/DEBIAN/control b/pandora_console/DEBIAN/control index f2395af9f5..a83794908d 100644 --- a/pandora_console/DEBIAN/control +++ b/pandora_console/DEBIAN/control @@ -1,5 +1,5 @@ package: pandorafms-console -Version: 7.0NG.727-181016 +Version: 7.0NG.727-181018 Architecture: all Priority: optional Section: admin diff --git a/pandora_console/DEBIAN/make_deb_package.sh b/pandora_console/DEBIAN/make_deb_package.sh index dfc84e2687..2badb5f231 100644 --- a/pandora_console/DEBIAN/make_deb_package.sh +++ b/pandora_console/DEBIAN/make_deb_package.sh @@ -14,7 +14,7 @@ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. -pandora_version="7.0NG.727-181016" +pandora_version="7.0NG.727-181018" package_pear=0 package_pandora=1 diff --git a/pandora_console/godmode/massive/massive_delete_modules.php b/pandora_console/godmode/massive/massive_delete_modules.php index be10127a80..8725c713aa 100755 --- a/pandora_console/godmode/massive/massive_delete_modules.php +++ b/pandora_console/godmode/massive/massive_delete_modules.php @@ -385,6 +385,9 @@ echo ''; echo ''; ui_require_jquery_file ('form'); +//Hack to translate text "none" in PHP to javascript +echo ''; +echo ''; ui_require_jquery_file ('pandora.controls'); if ($selection_mode == 'modules') { diff --git a/pandora_console/godmode/massive/massive_edit_modules.php b/pandora_console/godmode/massive/massive_edit_modules.php index b12093aaf5..a7056636b0 100755 --- a/pandora_console/godmode/massive/massive_edit_modules.php +++ b/pandora_console/godmode/massive/massive_edit_modules.php @@ -709,6 +709,7 @@ echo ''; echo ''; //Hack to translate text "none" in PHP to javascript echo ''; +echo ''; ui_require_jquery_file ('pandora.controls'); if ($selection_mode == 'modules') { diff --git a/pandora_console/godmode/reporting/reporting_builder.item_editor.php b/pandora_console/godmode/reporting/reporting_builder.item_editor.php index 9a2f5f3018..e7e5965946 100755 --- a/pandora_console/godmode/reporting/reporting_builder.item_editor.php +++ b/pandora_console/godmode/reporting/reporting_builder.item_editor.php @@ -1087,6 +1087,34 @@ You can of course remove the warnings, that's why we include the source and do n $agents2[$value['id_agente']] = $value['alias']; } + if ((empty($agents2)) || $agents2 == -1) $agents = array(); + + $agents_select = array(); + if (is_array($id_agents) || is_object($id_agents)){ + foreach ($id_agents as $id) { + foreach ($agents2 as $key => $a) { + if ($key == (int)$id) { + $agents_select[$key] = $key; + } + } + } + } + html_print_select($agents2, 'id_agents3[]', $agents_select, $script = '', "", 0, false, true, true, '', false, "min-width: 180px"); + echo ""; + ?> + + + + + + + $value) { + $agents2[$value['id_agente']] = $value['alias']; + } + // $agents = agents_get_group_agents($group); if ((empty($agents2)) || $agents2 == -1) $agents = array(); @@ -1101,7 +1129,6 @@ You can of course remove the warnings, that's why we include the source and do n } } html_print_select($agents2, 'id_agents2[]', $agents_select, $script = '', "", 0, false, true, true, '', false, "min-width: 180px"); - echo ""; ?> @@ -2862,6 +2889,7 @@ function chooseType() { $("#row_percentil").hide(); $("#log_help_tip").css("visibility", "hidden"); $("#agents_row").hide(); + $("#agents_modules_row").hide(); $("#select_agent_modules").hide(); $("#modules_row").hide(); $("#row_show_summary_group").hide(); @@ -3328,7 +3356,7 @@ function chooseType() { $("#row_group").show(); $("#row_module_group").show(); $("#select_agent_modules").show(); - $("#agents_row").show(); + $("#agents_modules_row").show(); $("#modules_row").show(); $("#row_historical_db_check").hide(); break; @@ -3499,7 +3527,7 @@ function set_last_value_period() { } function source_change_agents() { - $("#id_agents2").empty(); + $("#id_agents3").empty(); $("#spinner_hack").show(); jQuery.post ("ajax.php", {"page" : "operation/agentes/ver_agente", @@ -3508,7 +3536,7 @@ function source_change_agents() { }, function (data, status) { for (var clave in data) { - $("#id_agents2").append(''); + $("#id_agents3").append(''); } $("#spinner_hack").hide(); }, diff --git a/pandora_console/include/class/Tree.class.php b/pandora_console/include/class/Tree.class.php index 05c994df9e..af7cb2daf3 100644 --- a/pandora_console/include/class/Tree.class.php +++ b/pandora_console/include/class/Tree.class.php @@ -41,6 +41,8 @@ class Tree { protected $L2conditionInside = ''; protected $L2inner = ''; + protected $L3forceTagCondition = false; + const TV_DEFAULT_AGENT_STATUS = -1; public function __construct($type, $rootType = '', $id = -1, $rootID = -1, $serverID = false, $childrenMethod = "on_demand", $access = 'AR') { @@ -891,7 +893,9 @@ class Tree { $module_status_filter = $this->getModuleStatusFilterFromTestado(); $agent_filter = "AND ta.id_agente = " . $this->id; $tag_condition = $this->getTagCondition(); - $tag_join = empty($tag_condition) ? '' : $this->getTagJoin(); + $tag_join = empty($tag_condition) && (!$this->L3forceTagCondition) + ? '' + : $this->getTagJoin(); $condition = $this->L2condition; $inner = $this->L2inner; diff --git a/pandora_console/include/class/TreeTag.class.php b/pandora_console/include/class/TreeTag.class.php index c02fb7ba4a..374945005c 100644 --- a/pandora_console/include/class/TreeTag.class.php +++ b/pandora_console/include/class/TreeTag.class.php @@ -37,6 +37,8 @@ class TreeTag extends Tree { $this->L2condition = "AND ttm.id_tag = " . $this->rootID; $this->L2inner = $this->L1innerInside; + + $this->L3forceTagCondition = true; } protected function getData() { @@ -52,10 +54,6 @@ class TreeTag extends Tree { protected function getTagJoin () { return ''; } - - protected function getTagCondition () { - return ''; - } } ?> diff --git a/pandora_console/include/config_process.php b/pandora_console/include/config_process.php index 10b32d7a08..042502cb84 100644 --- a/pandora_console/include/config_process.php +++ b/pandora_console/include/config_process.php @@ -22,7 +22,7 @@ /** * Pandora build version and version */ -$build_version = 'PC181016'; +$build_version = 'PC181018'; $pandora_version = 'v7.0NG.727'; // Do not overwrite default timezone set if defined. diff --git a/pandora_console/include/functions_agents.php b/pandora_console/include/functions_agents.php index 2e9ef1f55f..a6ba0be9fb 100644 --- a/pandora_console/include/functions_agents.php +++ b/pandora_console/include/functions_agents.php @@ -1069,7 +1069,7 @@ function agents_get_group_agents ( */ function agents_get_modules ($id_agent = null, $details = false, $filter = false, $indexed = true, $get_not_init_modules = true, - $noACLs = false) { + $force_tags = false) { global $config; @@ -1205,7 +1205,7 @@ function agents_get_modules ($id_agent = null, $details = false, } $sql_tags_join = ""; - if (tags_has_user_acl_tags($config['id_user'])){ + if (tags_has_user_acl_tags($config['id_user']) || $force_tags){ $where_tags = tags_get_acl_tags($config['id_user'], $id_groups, 'AR', 'module_condition', 'AND', 'tagente_modulo', false, array(), true); diff --git a/pandora_console/include/javascript/pandora.js b/pandora_console/include/javascript/pandora.js index 0788f43c70..2b323a55f1 100644 --- a/pandora_console/include/javascript/pandora.js +++ b/pandora_console/include/javascript/pandora.js @@ -189,8 +189,10 @@ function agent_changed_by_multiple_agents (event, id_agent, selected) { $('#module').empty (); if (isEmptyObject(data)) { - var noneText = $("#none_text").html(); //Trick for catch the translate text. - + //Trick for catch the translate text. + var noneText = $("#id_agents").val() === null + ? $("#select_agent_first_text").html() + : $("#none_text").html(); if (noneText == null) { noneText = 'None'; } diff --git a/pandora_console/install.php b/pandora_console/install.php index c242ded2f8..1b5dbeeecc 100755 --- a/pandora_console/install.php +++ b/pandora_console/install.php @@ -71,7 +71,7 @@
0) { $connection = metaconsole_get_connection_by_id($server_id); } - - + if (metaconsole_load_external_db($connection) == NOERR) { /* Get all agents if no agent was given */ if ($id_agent == 0) $id_agent = array_keys( agents_get_group_agents( array_keys (users_get_groups ()), $search, "none")); - $agent_modules = agents_get_modules ($id_agent, $fields, $filter, $indexed, true, false, $tags); + $agent_modules = agents_get_modules ($id_agent, $fields, $filter, $indexed, true, $force_tags); } // Restore db connection metaconsole_restore_db(); @@ -703,35 +709,12 @@ if (is_ajax ()) { $id_agent = array_keys( agents_get_group_agents( array_keys(users_get_groups ()), $search, "none")); - $agent_modules = agents_get_modules ($id_agent, $fields, $filter, $indexed, true, false, $tags); + $agent_modules = agents_get_modules ($id_agent, $fields, $filter, $indexed, true, $force_tags); } - + if (empty($agent_modules)) $agent_modules = array(); - if (!empty($tags)) { - $implode_tags = implode(",", $tags); - $tag_modules = db_get_all_rows_sql("SELECT DISTINCT id_agente_modulo FROM ttag_module WHERE id_tag IN (" . $implode_tags . ")"); - if ($tag_modules) { - $final_modules = array(); - foreach ($agent_modules as $key => $module) { - $in_array = false; - foreach ($tag_modules as $t_module) { - if ($module['id_agente_modulo'] == $t_module['id_agente_modulo']) { - $in_array = true; - } - } - if ($in_array) { - $final_modules[] = $module; - } - } - $agent_modules = $final_modules; - } - else { - $agent_modules = array(); - } - } - foreach ($agent_modules as $key => $module) { $agent_modules[$key]['nombre'] = io_safe_output($module['nombre']); } diff --git a/pandora_console/pandora_console.redhat.spec b/pandora_console/pandora_console.redhat.spec index a012495a07..052b4f25de 100644 --- a/pandora_console/pandora_console.redhat.spec +++ b/pandora_console/pandora_console.redhat.spec @@ -3,7 +3,7 @@ # %define name pandorafms_console %define version 7.0NG.727 -%define release 181016 +%define release 181018 # User and Group under which Apache is running %define httpd_name httpd diff --git a/pandora_console/pandora_console.spec b/pandora_console/pandora_console.spec index 6db706448a..bf4eb79587 100644 --- a/pandora_console/pandora_console.spec +++ b/pandora_console/pandora_console.spec @@ -3,7 +3,7 @@ # %define name pandorafms_console %define version 7.0NG.727 -%define release 181016 +%define release 181018 %define httpd_name httpd # User and Group under which Apache is running %define httpd_name apache2 diff --git a/pandora_server/DEBIAN/control b/pandora_server/DEBIAN/control index 6f94b1e9df..1ccc2c4243 100644 --- a/pandora_server/DEBIAN/control +++ b/pandora_server/DEBIAN/control @@ -1,5 +1,5 @@ package: pandorafms-server -Version: 7.0NG.727-181016 +Version: 7.0NG.727-181018 Architecture: all Priority: optional Section: admin diff --git a/pandora_server/DEBIAN/make_deb_package.sh b/pandora_server/DEBIAN/make_deb_package.sh index 5e898d9567..6a8108f79d 100644 --- a/pandora_server/DEBIAN/make_deb_package.sh +++ b/pandora_server/DEBIAN/make_deb_package.sh @@ -14,7 +14,7 @@ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. -pandora_version="7.0NG.727-181016" +pandora_version="7.0NG.727-181018" package_cpan=0 package_pandora=1 diff --git a/pandora_server/lib/PandoraFMS/Config.pm b/pandora_server/lib/PandoraFMS/Config.pm index 469f0c8158..c53f168377 100644 --- a/pandora_server/lib/PandoraFMS/Config.pm +++ b/pandora_server/lib/PandoraFMS/Config.pm @@ -45,7 +45,7 @@ our @EXPORT = qw( # version: Defines actual version of Pandora Server for this module only my $pandora_version = "7.0NG.727"; -my $pandora_build = "181016"; +my $pandora_build = "181018"; our $VERSION = $pandora_version." ".$pandora_build; # Setup hash diff --git a/pandora_server/lib/PandoraFMS/PluginTools.pm b/pandora_server/lib/PandoraFMS/PluginTools.pm index ce85f49915..a126a680cf 100644 --- a/pandora_server/lib/PandoraFMS/PluginTools.pm +++ b/pandora_server/lib/PandoraFMS/PluginTools.pm @@ -32,7 +32,7 @@ our @ISA = qw(Exporter); # version: Defines actual version of Pandora Server for this module only my $pandora_version = "7.0NG.727"; -my $pandora_build = "181016"; +my $pandora_build = "181018"; our $VERSION = $pandora_version." ".$pandora_build; our %EXPORT_TAGS = ( 'all' => [ qw() ] ); diff --git a/pandora_server/pandora_server.redhat.spec b/pandora_server/pandora_server.redhat.spec index 7e1a467a12..38fd6092fa 100644 --- a/pandora_server/pandora_server.redhat.spec +++ b/pandora_server/pandora_server.redhat.spec @@ -3,7 +3,7 @@ # %define name pandorafms_server %define version 7.0NG.727 -%define release 181016 +%define release 181018 Summary: Pandora FMS Server Name: %{name} diff --git a/pandora_server/pandora_server.spec b/pandora_server/pandora_server.spec index 4cb9404ab6..7204453e87 100644 --- a/pandora_server/pandora_server.spec +++ b/pandora_server/pandora_server.spec @@ -3,7 +3,7 @@ # %define name pandorafms_server %define version 7.0NG.727 -%define release 181016 +%define release 181018 Summary: Pandora FMS Server Name: %{name} diff --git a/pandora_server/pandora_server_installer b/pandora_server/pandora_server_installer index 696a1d653b..8d02ff8cb0 100755 --- a/pandora_server/pandora_server_installer +++ b/pandora_server/pandora_server_installer @@ -9,7 +9,7 @@ # ********************************************************************** PI_VERSION="7.0NG.727" -PI_BUILD="181016" +PI_BUILD="181018" MODE=$1 if [ $# -gt 1 ]; then diff --git a/pandora_server/util/pandora_db.pl b/pandora_server/util/pandora_db.pl index 25ab98064a..3af53796c5 100644 --- a/pandora_server/util/pandora_db.pl +++ b/pandora_server/util/pandora_db.pl @@ -34,7 +34,7 @@ use PandoraFMS::Config; use PandoraFMS::DB; # version: define current version -my $version = "7.0NG.727 PS181016"; +my $version = "7.0NG.727 PS181018"; # Pandora server configuration my %conf; diff --git a/pandora_server/util/pandora_manage.pl b/pandora_server/util/pandora_manage.pl index f6d569b2f0..7df2a9a7be 100644 --- a/pandora_server/util/pandora_manage.pl +++ b/pandora_server/util/pandora_manage.pl @@ -36,7 +36,7 @@ use Encode::Locale; Encode::Locale::decode_argv; # version: define current version -my $version = "7.0NG.727 PS181016"; +my $version = "7.0NG.727 PS181018"; # save program name for logging my $progname = basename($0);