Merge branch 'develop' into feature/ticket#2491-features-dashboard

This commit is contained in:
mdtrooper 2015-08-12 13:03:50 +02:00
commit 0a0d9fad25
95 changed files with 1388 additions and 508 deletions

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev, AIX version
# Version 6.0RC1, AIX version
# Licensed under GPL license v2,
# Copyright (c) 2003-2010 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev, FreeBSD Version
# Version 6.0RC1, FreeBSD Version
# Licensed under GPL license v2,
# Copyright (c) 2003-2010 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev, HP-UX Version
# Version 6.0RC1, HP-UX Version
# Licensed under GPL license v2,
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev, GNU/Linux
# Version 6.0RC1, GNU/Linux
# Licensed under GPL license v2,
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev, GNU/Linux
# Version 6.0RC1, GNU/Linux
# Licensed under GPL license v2,
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev, Solaris Version
# Version 6.0RC1, Solaris Version
# Licensed under GPL license v2,
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,6 +1,6 @@
# Base config file for Pandora FMS Windows Agent
# (c) 2006-2010 Artica Soluciones Tecnologicas
# Version 6.0dev
# Version 6.0RC1
# 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

View File

@ -1,6 +1,6 @@
# Fichero de configuracion base de agentes de Pandora
# Base config file for Pandora agents
# Version 6.0dev, AIX version
# Version 6.0RC1, AIX version
# General Parameters
# ==================

View File

@ -1,6 +1,6 @@
# Fichero de configuracion base de agentes de Pandora
# Base config file for Pandora agents
# Version 6.0dev
# Version 6.0RC1
# FreeBSD/IPSO version
# Licenced under GPL licence, 2003-2007 Sancho Lerena

View File

@ -1,6 +1,6 @@
# Fichero de configuracion base de agentes de Pandora
# Base config file for Pandora agents
# Version 6.0dev, HPUX Version
# Version 6.0RC1, HPUX Version
# General Parameters
# ==================

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev
# Version 6.0RC1
# Licensed under GPL license v2,
# (c) 2003-2010 Artica Soluciones Tecnologicas
# please visit http://pandora.sourceforge.net

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev
# Version 6.0RC1
# Licensed under GPL license v2,
# (c) 2003-2009 Artica Soluciones Tecnologicas
# please visit http://pandora.sourceforge.net

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev
# Version 6.0RC1
# Licensed under GPL license v2,
# please visit http://pandora.sourceforge.net

View File

@ -1,6 +1,6 @@
# Fichero de configuracion base de agentes de Pandora
# Base config file for Pandora agents
# Version 6.0dev, Solaris version
# Version 6.0RC1, Solaris version
# General Parameters
# ==================

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev, AIX version
# Version 6.0RC1, AIX version
# Licensed under GPL license v2,
# Copyright (c) 2003-2010 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
package: pandorafms-agent-unix
Version: 6.0dev-150724
Version: 6.0RC1-150812
Architecture: all
Priority: optional
Section: admin

View File

@ -14,7 +14,7 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
pandora_version="6.0dev-150724"
pandora_version="6.0RC1-150812"
echo "Test if you has the tools for to make the packages."
whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev, GNU/Linux
# Version 6.0RC1, GNU/Linux
# Licensed under GPL license v2,
# Copyright (c) 2003-2012 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev, FreeBSD Version
# Version 6.0RC1, FreeBSD Version
# Licensed under GPL license v2,
# Copyright (c) 2003-2010 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev, HP-UX Version
# Version 6.0RC1, HP-UX Version
# Licensed under GPL license v2,
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev, GNU/Linux
# Version 6.0RC1, GNU/Linux
# Licensed under GPL license v2,
# Copyright (c) 2003-2014 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev, GNU/Linux
# Version 6.0RC1, GNU/Linux
# Licensed under GPL license v2,
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev, NetBSD Version
# Version 6.0RC1, NetBSD Version
# Licensed under GPL license v2,
# Copyright (c) 2003-2010 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 6.0dev, Solaris Version
# Version 6.0RC1, Solaris Version
# Licensed under GPL license v2,
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -40,8 +40,8 @@ my $Sem = undef;
# Semaphore used to control the number of threads
my $ThreadSem = undef;
use constant AGENT_VERSION => '6.0dev';
use constant AGENT_BUILD => '150724';
use constant AGENT_VERSION => '6.0RC1';
use constant AGENT_BUILD => '150812';
# Commands to retrieve total memory information in kB
use constant TOTALMEMORY_CMDS => {

View File

@ -2,8 +2,8 @@
#Pandora FMS Linux Agent
#
%define name pandorafms_agent_unix
%define version 6.0dev
%define release 150724
%define version 6.0RC1
%define release 150812
Summary: Pandora FMS Linux agent, PERL version
Name: %{name}

View File

@ -2,8 +2,8 @@
#Pandora FMS Linux Agent
#
%define name pandorafms_agent_unix
%define version 6.0dev
%define release 150724
%define version 6.0RC1
%define release 150812
Summary: Pandora FMS Linux agent, PERL version
Name: %{name}

View File

@ -1,6 +1,6 @@
# Base config file for Pandora FMS Windows Agent
# (c) 2006-2014 Artica Soluciones Tecnologicas
# Version 6.0dev
# Version 6.0RC1
# 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
@ -198,87 +198,73 @@ module_end
# Windows inventory module (This information will be displayed only in enterprise version)
module_begin
module_plugin cscript.exe //B "%PROGRAMFILES%\Pandora_Agent\util\cpuinfo.vbs"
module_plugin cscript.exe //B //t:20 "%PROGRAMFILES%\Pandora_Agent\util\cpuinfo.vbs"
module_crontab * 12-15 * * 1
module_timeout 50
module_end
module_begin
module_plugin cscript.exe //B "%PROGRAMFILES%\Pandora_Agent\util\moboinfo.vbs"
module_plugin cscript.exe //B //t:20 "%PROGRAMFILES%\Pandora_Agent\util\moboinfo.vbs"
module_crontab * 12-15 * * 1
module_timeout 50
module_end
module_begin
module_plugin cscript.exe //B "%PROGRAMFILES%\Pandora_Agent\util\diskdrives.vbs"
module_plugin cscript.exe //B //t:20 "%PROGRAMFILES%\Pandora_Agent\util\diskdrives.vbs"
module_crontab * 12-15 * * 1
module_timeout 50
module_end
module_begin
module_plugin cscript.exe //B "%PROGRAMFILES%\Pandora_Agent\util\cdromdrives.vbs"
module_plugin cscript.exe //B //t:20 "%PROGRAMFILES%\Pandora_Agent\util\cdromdrives.vbs"
module_crontab * 12-15 * * 1
module_timeout 50
module_end
module_begin
module_plugin cscript.exe //B "%PROGRAMFILES%\Pandora_Agent\util\videocardinfo.vbs"
module_plugin cscript.exe //B //t:20 "%PROGRAMFILES%\Pandora_Agent\util\videocardinfo.vbs"
module_crontab * 12-15 * * 1
module_timeout 50
module_end
module_begin
module_plugin cscript.exe //B "%PROGRAMFILES%\Pandora_Agent\util\ifaces.vbs"
module_plugin cscript.exe //B //t:20 "%PROGRAMFILES%\Pandora_Agent\util\ifaces.vbs"
module_crontab * 12-15 * * 1
module_timeout 50
module_end
module_begin
module_plugin cscript.exe //B "%PROGRAMFILES%\Pandora_Agent\util\monitors.vbs"
module_plugin cscript.exe //B //t:20 "%PROGRAMFILES%\Pandora_Agent\util\monitors.vbs"
module_crontab * 12-15 * * 1
module_timeout 50
module_end
module_begin
module_plugin cscript.exe //B "%PROGRAMFILES%\Pandora_Agent\util\printers.vbs"
module_plugin cscript.exe //B //t:20 "%PROGRAMFILES%\Pandora_Agent\util\printers.vbs"
module_crontab * 12-15 * * 1
module_timeout 50
module_end
module_begin
module_plugin cscript.exe //B "%PROGRAMFILES%\Pandora_Agent\util\raminfo.vbs"
module_plugin cscript.exe //B //t:20 "%PROGRAMFILES%\Pandora_Agent\util\raminfo.vbs"
module_crontab * 12-15 * * 1
module_timeout 50
module_end
module_begin
module_plugin cscript.exe //B "%PROGRAMFILES%\Pandora_Agent\util\software_installed.vbs"
module_plugin cscript.exe //B //t:20 "%PROGRAMFILES%\Pandora_Agent\util\software_installed.vbs"
module_crontab * 12-15 * * 1
module_timeout 50
module_end
module_begin
module_plugin cscript.exe //B "%PROGRAMFILES%\Pandora_Agent\util\userslogged.vbs"
module_plugin cscript.exe //B //t:20 "%PROGRAMFILES%\Pandora_Agent\util\userslogged.vbs"
module_crontab * 12-15 * * 1
module_timeout 50
module_end
module_begin
module_plugin cscript.exe //B "%PROGRAMFILES%\Pandora_Agent\util\productkey.vbs"
module_plugin cscript.exe //B //t:20 "%PROGRAMFILES%\Pandora_Agent\util\productkey.vbs"
module_crontab * 12-15 * * 1
module_timeout 50
module_end
module_begin
module_plugin cscript.exe //B "%PROGRAMFILES%\Pandora_Agent\util\productID.vbs"
module_plugin cscript.exe //B //t:20 "%PROGRAMFILES%\Pandora_Agent\util\productID.vbs"
module_crontab * 12-15 * * 1
module_timeout 50
module_end
module_begin
module_plugin cscript.exe //B "%PROGRAMFILES%\Pandora_Agent\util\win_cf.vbs"
module_plugin cscript.exe //B //t:20 "%PROGRAMFILES%\Pandora_Agent\util\win_cf.vbs"
module_crontab * 12-15 * * 1
module_timeout 50
module_end

View File

@ -3,7 +3,7 @@ AllowLanguageSelection
{Yes}
AppName
{Pandora FMS Windows Agent v6.0dev}
{Pandora FMS Windows Agent v6.0RC1}
ApplicationID
{17E3D2CF-CA02-406B-8A80-9D31C17BD08F}
@ -186,7 +186,7 @@ UpgradeApplicationID
{}
Version
{150724}
{150812}
ViewReadme
{Yes}

View File

@ -30,7 +30,7 @@ using namespace Pandora;
using namespace Pandora_Strutils;
#define PATH_SIZE _MAX_PATH+1
#define PANDORA_VERSION ("6.0dev(Build 150724)")
#define PANDORA_VERSION ("6.0RC1(Build 150812)")
string pandora_path;
string pandora_dir;

View File

@ -11,7 +11,7 @@ BEGIN
VALUE "LegalCopyright", "Artica ST"
VALUE "OriginalFilename", "PandoraAgent.exe"
VALUE "ProductName", "Pandora FMS Windows Agent"
VALUE "ProductVersion", "(6.0dev(Build 150724))"
VALUE "ProductVersion", "(6.0RC1(Build 150812))"
VALUE "FileVersion", "1.0.0.0"
END
END

View File

@ -1,5 +1,5 @@
package: pandorafms-console
Version: 6.0dev-150724
Version: 6.0RC1-150812
Architecture: all
Priority: optional
Section: admin

View File

@ -14,7 +14,7 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
pandora_version="6.0dev-150724"
pandora_version="6.0RC1-150812"
package_pear=0
package_pandora=1

View File

@ -67,7 +67,7 @@ function mainAgentsModules() {
$group_id = (int)get_parameter('group_id', 0);
$offset = (int)get_parameter('offset', 0);
$hor_offset = (int)get_parameter('hor_offset', 0);
$block = 20;
$block = $config['block_size'];
$groups = users_get_groups ();
@ -207,7 +207,7 @@ function mainAgentsModules() {
"offset=" . $offset . "&" .
"group_id=" . $group_id . "&" .
"modulegroup=" . $modulegroup . "'>" .
html_print_image("images/darrowleft.png", true,
html_print_image("images/arrow_left.png", true,
array('title' => __('Previous modules'))) .
"</a>" .
"</th>";
@ -245,7 +245,7 @@ function mainAgentsModules() {
"group_id=" . $group_id . "&" .
"modulegroup=" . $modulegroup . "'>" .
html_print_image(
"images/darrowright.png", true,
"images/arrow.png", true,
array('title' => __('More modules'))) .
"</a>" .
"</th>";

View File

@ -209,7 +209,7 @@ function mainInsertData() {
var inputs = [];
inputs.push ("agent_name=" + agent_name);
inputs.push ('filter=delete_pending = 0');
inputs.push ("delete_pending=0");
inputs.push ("get_agent_modules_json=1");
inputs.push ("page=operation/agentes/ver_agente");
jQuery.ajax ({

View File

@ -29,11 +29,8 @@ ui_print_info_message ( array('no_close'=>true, 'message'=> __('There are no cu
</div>
<div class="text_task">
<h3> <?php echo __('Create Custom Fields'); ?></h3>
<p id="description_task"> <?php echo __('The Recon Task definition of Pandora FMS is used to find new elements in the network.
If it detects any item, it will add that item to the monitoring, and if that item it is already being monitored, then it will
ignore it or will update its information.There are three types of detection: Based on <strong id="fuerte"> ICMP </strong>(pings),
<strong id="fuerte">SNMP</strong> (detecting the topology of networks and their interfaces), and other <strong id="fuerte"> customized </strong>
type. You can define your own customized recon script.'); ?></p>
<p id="description_task"> <?php echo __("Custom fields are an easy way to personalized agent's information.
You're able to create custom fields by klicking on 'Administration' -> 'Manage monitoring' -> 'Manage custom fields'. "); ?></p>
<form action="index.php?sec=gagente&sec2=godmode/agentes/configure_field" method="post">
<input type="submit" class="button_task" value="<?php echo __('Create Custom Fields'); ?>" />
</form>

View File

@ -26,11 +26,8 @@ ui_require_css_file ('firts_task');
</div>
<div class="text_task">
<h3> <?php echo __('Create Fields Manager'); ?></h3>
<p id="description_task"> <?php echo __('The Recon Task definition of Pandora FMS is used to find new elements in the network.
If it detects any item, it will add that item to the monitoring, and if that item it is already being monitored, then it will
ignore it or will update its information.There are three types of detection: Based on <strong id="fuerte"> ICMP </strong>(pings),
<strong id="fuerte">SNMP</strong> (detecting the topology of networks and their interfaces), and other <strong id="fuerte"> customized </strong>
type. You can define your own customized recon script.'); ?></p>
<p id="description_task"> <?php echo __("Custom fields are an easy way to personalized agent's information.
You're able to create custom fields by klicking on 'Administration' -> 'Manage monitoring' -> 'Manage custom fields'. "); ?></p>
<form action="index.php?sec=gservers&sec2=godmode/servers/manage_recontask_form&create" method="post">
<input type="submit" class="button_task" value="<?php echo __('Create Fields '); ?>" />
</form>

View File

@ -30,11 +30,11 @@ ui_print_info_message(
</div>
<div class="text_task">
<h3> <?php echo __('Create Visual Console'); ?></h3>
<p id="description_task"> <?php echo __('The Recon Task definition of Pandora FMS is used to find new elements in the network.
If it detects any item, it will add that item to the monitoring, and if that item it is already being monitored, then it will
ignore it or will update its information.There are three types of detection: Based on <strong id="fuerte"> ICMP </strong>(pings),
<strong id="fuerte">SNMP</strong> (detecting the topology of networks and their interfaces), and other <strong id="fuerte"> customized </strong>
type. You can define your own customized recon script.'); ?></p>
<p id="description_task"> <?php echo __("Pandora FMS allows you to create visual maps in which each user is able to create his own monitoring map.
The new visual console editor is much more practical, although the old visual console editor had its advantages.
Within the new visual console, we've been successful in imitating the sensation and touch of a drawing application like GIMP.
We've also simplified the editor by dividing it into several subject-matter tabs named 'Data', 'Preview', 'Wizard', 'List of Elements' and 'Editor'.
The elements the Pandora FMS Visual Map was designed to handle are 'static image', 'percentage bar', 'module graph' and 'simple value'. "); ?></p>
<form action="index.php?sec=reporting&amp;sec2=godmode/reporting/visual_console_builder" method="post">
<?php html_print_input_hidden ('edit_layout', 1); ?>
<input type="submit" class="button_task" value="<?php echo __('Create Visual Console'); ?>" />

View File

@ -26,11 +26,11 @@ ui_require_css_file ('firts_task');
</div>
<div class="text_task">
<h3> <?php echo __('Create SNMP Filter'); ?></h3>
<p id="description_task"> <?php echo __('The Recon Task definition of Pandora FMS is used to find new elements in the network.
If it detects any item, it will add that item to the monitoring, and if that item it is already being monitored, then it will
ignore it or will update its information.There are three types of detection: Based on <strong id="fuerte"> ICMP </strong>(pings),
<strong id="fuerte">SNMP</strong> (detecting the topology of networks and their interfaces), and other <strong id="fuerte"> customized </strong>
type. You can define your own customized recon script.'); ?></p>
<p id="description_task"> <?php echo __("Some systems receive a high number of traps.
We're only interested in monitoring a tiny percentage of them. From Pandora FMS versions 3.2 and above,
it's possible to filter the traps that the server obtains in order to avoid straining the application unnecessarily.
In order to define different filters, please go to 'Administration' -> 'Manage SNMP Console' and 'SNMP Filters'.
One trap which is going to run in conjunction with any of them - just the ones for the server are going to get ruled out automatically. "); ?></p>
<form action="index.php?sec=snmpconsole&sec2=godmode/snmpconsole/snmp_filters&edit_filter=-1" method="post">
<input type="submit" class="button_task" value="<?php echo __('Create SNMP Filter'); ?>" />
</form>

View File

@ -23,7 +23,7 @@ $ag_group = get_parameter ("ag_group_refresh", -1);
$sortField = get_parameter('sort_field');
$sort = get_parameter('sort', 'none');
$recursion = get_parameter('recursion');
$disabled = get_parameter('disabled');
$disabled = get_parameter('disabled', 0);
if ($ag_group == -1 )
$ag_group = (int) get_parameter ("ag_group", -1);

View File

@ -225,6 +225,10 @@ $table_simple->data[1][3] = html_print_select_from_sql ('SELECT id_mg, name FROM
'id_module_group', $id_module_group, '', __('Not assigned'), '0',
true, false, true, $disabledBecauseInPolicy);
if($disabledBecauseInPolicy){
$table_simple->data[1][3] .= html_print_input_hidden ('id_module_group', $id_module_group, true);
}
$table_simple->data[2][0] = __('Warning status').' ' . ui_print_help_icon ('warning_status', true);
$table_simple->data[2][1] = '';

View File

@ -177,26 +177,39 @@ $row[] = html_print_submit_button('Search', 'search', false, 'class="sub search"
$table_form->data[] = $row;
// End of table filter
// Useful to know if the user has done a form filtering
$filter_performed = false;
$groups = users_get_groups ();
if (!empty($groups)) {
$where_values = "1=1";
$groups_string = implode (",", array_keys ($groups));
$where_values .= " AND id_group IN ($groups_string)";
// WARNING: add $filter_performed = true; to any future filter
if (!empty($search_text)) {
$filter_performed = true;
$where_values .= " AND (name LIKE '%$search_text%' OR description LIKE '%$search_text%')";
}
if (!empty($execution_type)) {
$filter_performed = true;
$where_values .= " AND type_execution = '$execution_type'";
}
if (!empty($date_from)) {
$filter_performed = true;
$where_values .= " AND (type_execution = 'periodically' OR (type_execution = 'once' AND date_from >= '".strtotime("$date_from 00:00:00")."'))";
}
if (!empty($date_to)) {
$filter_performed = true;
$periodically_monthly_w = "type_periodicity = 'monthly'
AND ((periodically_day_from <= '".date('d', strtotime($date_from))."' AND periodically_day_to >= '".date('d', strtotime($date_to))."')
OR (periodically_day_from > periodically_day_to
@ -226,14 +239,20 @@ if (!empty($groups)) {
}
if (!$show_archived) {
$filter_performed = true;
$where_values .= " AND (type_execution = 'periodically' OR (type_execution = 'once' AND date_to >= '".time()."'))";
}
if (!empty($agent_id)) {
$filter_performed = true;
$where_values .= " AND id IN (SELECT id_downtime FROM tplanned_downtime_agents WHERE id_agent = $agent_id)";
}
if (!empty($module_id)) {
$filter_performed = true;
$where_values .= " AND (id IN (SELECT id_downtime
FROM tplanned_downtime_modules
WHERE id_agent_module = $module_id)
@ -322,9 +341,33 @@ else {
$downtimes = array();
}
if (!$downtimes) {
// No downtimes cause the user has not anyone
if (!$downtimes && !$filter_performed) {
require_once ($config['homedir'] . "/general/firts_task/planned_downtime.php");
}
// No downtimes cause the user performed a search
else if (!$downtimes) {
// Filter form
echo "<form method='post' action='index.php?sec=estado&sec2=godmode/agentes/planned_downtime.list'>";
html_print_table($table_form);
echo "</form>";
// Info message
echo '<div class="nf">'.__('No planned downtime').'</div>';
echo '<div class="action-buttons" style="width: 100%">';
// Create button
if ($write_permisson) {
echo '&nbsp;';
echo '<form method="post" action="index.php?sec=estado&amp;sec2=godmode/agentes/planned_downtime.editor" style="display: inline;">';
html_print_submit_button (__('Create'), 'create', false, 'class="sub next"');
echo '</form>';
}
echo '</div>';
}
// Has downtimes
else {
echo "<form method='post' action='index.php?sec=estado&sec2=godmode/agentes/planned_downtime.list'>";
html_print_table($table_form);

View File

@ -316,8 +316,8 @@ $(document).ready (function () {
{"page" : "operation/agentes/ver_agente",
"get_agent_modules_json" : 1,
"id_agent" : this.value,
"filter" : "disabled = 0",
"fields" : "id_agente_modulo,nombre"
"disabled" : 0,
"get_id_and_name" : 1
},
function (data, status) {
if (data.length == 0) {

View File

@ -412,25 +412,23 @@ $(document).ready (function () {
$("tr#delete_table-edit1, tr#delete_table-edit2, tr#delete_table-edit3, tr#delete_table-edit35, tr#delete_table-edit4, tr#delete_table-edit5, tr#delete_table-edit6, tr#delete_table-edit7, tr#delete_table-edit8")
.hide ();
if (this.value == '0') {
filter = '';
}
else {
filter = "id_tipo_modulo="+this.value;
}
var params = {
"page" : "operation/agentes/ver_agente",
"get_agent_modules_json" : 1,
"get_distinct_name" : 1,
"indexed" : 0,
"privilege" : "AW"
};
if (this.value != '0')
params['id_tipo_modulo'] = this.value;
$("#module_loading").show ();
$("tr#delete_table-edit1, tr#delete_table-edit2").hide ();
$("#module_name").attr ("disabled", "disabled")
$("#module_name option[value!=0]").remove ();
jQuery.post ("ajax.php",
{"page" : "operation/agentes/ver_agente",
"get_agent_modules_json" : 1,
"filter" : filter,
"fields" : "DISTINCT(nombre)",
"indexed" : 0,
"privilege" : "AW"
},
params,
function (data, status) {
jQuery.each (data, function (id, value) {
option = $("<option></option>")

View File

@ -675,24 +675,22 @@ $(document).ready (function () {
"tr#delete_table-edit13, " +
"tr#delete_table-edit14").hide ();
if (this.value == '0') {
filter = '';
}
else {
filter = "id_tipo_modulo="+this.value;
}
var params = {
"page" : "operation/agentes/ver_agente",
"get_agent_modules_json" : 1,
"get_distinct_name" : 1,
"indexed" : 0
};
if (this.value != '0')
params['id_tipo_modulo'] = this.value;
$("#module_loading").show ();
$("tr#delete_table-edit1, tr#delete_table-edit2").hide ();
$("#module_name").attr ("disabled", "disabled")
$("#module_name option[value!=0]").remove ();
jQuery.post ("ajax.php",
{"page" : "operation/agentes/ver_agente",
"get_agent_modules_json" : 1,
"filter" : filter,
"fields" : "DISTINCT(nombre)",
"indexed" : 0
},
params,
function (data, status) {
jQuery.each (data, function (id, value) {
option = $("<option></option>").attr ("value", value["nombre"]).html (value["nombre"]);

View File

@ -128,6 +128,7 @@ if (check_acl ($config['id_user'], 0, "LM") || check_acl ($config['id_user'], 0,
if (check_acl ($config['id_user'], 0, "LM")) {
$sub = array ();
$sub["godmode/alerts/alert_list"]["text"] = __('List of Alerts');
$sub["godmode/alerts/alert_templates"]["text"] = __('Templates');
$sub["godmode/alerts/alert_actions"]["text"] = __('Actions');

View File

@ -30,6 +30,13 @@ $meta = false;
if (($config['metaconsole'] == 1) && (defined('METACONSOLE'))) {
$meta = true;
}
$show_graph_options = Array();
$show_graph_options[0] = __('Only table');
$show_graph_options[1] = __('Table & Graph');
@ -126,6 +133,7 @@ switch ($action) {
// If we are creating a new report item then clean interface and display creation view
$type = get_parameter('type', 'SLA');
switch ($type) {
case 'SLA_monthly':
case 'SLA_services':
@ -137,6 +145,7 @@ switch ($action) {
case 'availability':
$get_data_editor = true;
break;
default:
$actionParameter = 'save';
$action = 'new';
@ -180,6 +189,7 @@ switch ($action) {
$idAgentModule = $item['id_agent_module'];
$idAgent = db_get_value_filter('id_agente', 'tagente_modulo', array('id_agente_modulo' => $idAgentModule));
break;
case 'simple_graph':
$only_avg = isset($style['only_avg']) ? (bool) $style['only_avg'] : true;
// The break hasn't be forgotten.
@ -198,6 +208,7 @@ switch ($action) {
// HACK it is saved in show_graph field.
$time_compare_overlapped = $item['show_graph'];
break;
case 'prediction_date':
$description = $item['description'];
$idAgentModule = $item['id_agent_module'];
@ -303,6 +314,13 @@ switch ($action) {
$idAgentModule = $item['id_agent_module'];
$period = $item['period'];
break;
case 'historical_data':
$description = $item['description'];
$idAgentModule = $item['id_agent_module'];
$idAgent = db_get_value_filter('id_agente', 'tagente_modulo', array('id_agente_modulo' => $idAgentModule));
$idAgentModule = $item['id_agent_module'];
$period = $item['period'];
break;
case 'text':
$description = $item['description'];
$text = $item['text'];
@ -497,6 +515,7 @@ switch ($action) {
$idAgent = $es['id_agents'];
$idAgentModule = $inventory_modules;
break;
case 'inventory_changes':
$period = $item['period'];
$description = $item['description'];
@ -504,12 +523,15 @@ switch ($action) {
$inventory_modules = $es['inventory_modules'];
$id_agents = $es['id_agents'];
break;
case 'agent_configuration':
$idAgent = $item['id_agent'];
break;
case 'group_configuration':
$group = $item['id_group'];
break;
case 'netflow_area':
case 'netflow_pie':
case 'netflow_data':
@ -532,6 +554,7 @@ switch ($action) {
break;
}
$urlForm = $config['homeurl'] .
'index.php?sec=reporting&sec2=godmode/reporting/reporting_builder&tab=item_editor&action=' . $actionParameter . '&id_report=' . $idReport;
@ -555,10 +578,12 @@ $class = 'databox filters';
?>
<tbody>
<tr id="row_type" style="" class="datos">
<td style="font-weight:bold; width: 220px;"><?php echo __('Type'); ?></td>
<td style="font-weight:bold; width: 220px;">
<?php echo __('Type'); ?>
</td>
<td style="">
<?php
if ($action == 'new') {
if ($action == 'new') {
html_print_select(reports_get_report_types(false, true), 'type', $type, 'chooseType();', '', '');
}
else {
@ -572,6 +597,7 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_name" style="" class="datos">
<td style="font-weight:bold;">
<?php echo __('Name'); ?>
@ -582,6 +608,7 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_netflow_filter" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Filter');?></td>
<td>
@ -600,6 +627,7 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_description" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Description'); ?></td>
<td style="">
@ -608,6 +636,7 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_period" style="" class="datos">
<td style="font-weight:bold;">
<?php
@ -616,7 +645,8 @@ $class = 'databox filters';
</td>
<td style="">
<?php
html_print_extended_select_for_time ('period', $period, '', '', '0', 10);
html_print_extended_select_for_time('period', $period,
'', '', '0', 10);
?>
</td>
</tr>
@ -645,8 +675,10 @@ $class = 'databox filters';
<td style="">
<?php
html_print_extended_select_for_time ('resolution', $resolution, '', '', '0', 10);
?></td>
?>
</td>
</tr>
<tr id="row_period1" style="" class="datos">
<td style="font-weight:bold;">
<?php
@ -679,12 +711,14 @@ $class = 'databox filters';
</tr>
<tr id="row_interval" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Data range') . ui_print_help_icon('prediction_date', true); ?></td>
<td><?php
<td>
<?php
echo __('Max') . "&nbsp;";
html_print_input_text('max_interval', $max_interval, '', 5, 10);
echo "&nbsp;" . __('Min') . "&nbsp;";
html_print_input_text('min_interval', $min_interval, '', 5, 10);
?></td>
?>
</td>
</tr>
<tr id="row_only_display_wrong" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Only display wrong SLAs');?></td>
@ -765,6 +799,8 @@ $class = 'databox filters';
</table>
</td>
</tr>
<tr id="row_group" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Group');?></td>
<td style="">
@ -784,6 +820,7 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_agent" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Agent'); ?></td>
<td style="">
@ -834,8 +871,13 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_module" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Module'); ?></td>
<td style="font-weight:bold;">
<?php
echo __('Module');
?>
</td>
<td style="max-width: 180px">
<?php
if ($idAgent) {
@ -877,6 +919,7 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_agent_multi" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Agents'); ?></td>
<td>
@ -892,6 +935,7 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_module_multi" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Modules'); ?></td>
<td>
@ -910,6 +954,7 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_date" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Date'); ?></td>
<td style="max-width: 180px">
@ -927,6 +972,7 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_custom_graph" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Custom graph'); ?></td>
<td style="">
@ -988,14 +1034,19 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_text" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Text'); ?></td>
<td style=""><?php html_print_textarea('text', 5, 25, $text); ?></td>
</tr>
<tr id="row_custom" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Custom SQL template'); ?></td>
<td style=""><?php html_print_select_from_sql('SELECT id, name FROM treport_custom_sql', 'id_custom', $idCustom, 'chooseSQLquery()', '--', '0'); ?></td>
</tr>
<tr id="row_query" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('SQL query'); ?></td>
<td style="" id="sql_entry">
@ -1005,6 +1056,7 @@ $class = 'databox filters';
</td>
<td style="" id="sql_example"></td>
</tr>
<?php
if ($meta) {
?>
@ -1019,10 +1071,12 @@ $class = 'databox filters';
<?php
}
?>
<tr id="row_header" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Serialized header') . ui_print_help_tip(__("The separator character is |"), true);?></td>
<td style=""><?php html_print_input_text('header', $header, '', 90, 250); ?></td>
</tr>
<tr id="row_url" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('URL'); ?></td>
<td style=""><?php html_print_input_text('url', $url, '', 90, 250); ?></td>
@ -1055,14 +1109,17 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_quantity" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Quantity (n)'); ?></td>
<td style=""><?php html_print_input_text('quantity', $top_n_value, '', 5, 5); ?></td>
</tr>
<tr id="row_max_values" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Max. values'); ?></td>
<td style=""><?php html_print_input_text('max_values', $max_values, '', 5, 5); ?></td>
</tr>
<tr id="row_max_min_avg" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Display');?></td>
<td>
@ -1076,6 +1133,7 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_time_compare_overlapped" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Time compare (Overlapped)');?></td>
<td>
@ -1084,6 +1142,7 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_only_avg" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Only average');?></td>
<td><?php html_print_checkbox('only_avg', 1, $only_avg);?></td>
@ -1099,7 +1158,9 @@ $class = 'databox filters';
</tr>
<tr id="row_exception_condition" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Condition');?></td>
<td><?php
<td>
<?php
$list_exception_condition = array(
REPORT_EXCEPTION_CONDITION_EVERYTHING => __('Everything'),
REPORT_EXCEPTION_CONDITION_GE => __('Greater or equal (>=)'),
@ -1113,7 +1174,9 @@ $class = 'databox filters';
);
html_print_select($list_exception_condition, 'exception_condition', $exception_condition);
/*echo ;
/*
echo ;
html_print_radio_button ('radiobutton_exception_condition', 0, '', $exception_condition);
echo __('>=');
html_print_radio_button ('radiobutton_exception_condition', 1, '', $exception_condition);
@ -1123,13 +1186,17 @@ $class = 'databox filters';
html_print_radio_button ('radiobutton_exception_condition', 3, '', $exception_condition);
echo __('Not OK');
html_print_radio_button ('radiobutton_exception_condition', 4, '', $exception_condition);
*/?></td>
*/
?>
</td>
</tr>
<tr id="row_show_graph" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Show graph');?></td>
<td><?php html_print_select ($show_graph_options, 'combo_graph_options', $show_graph);?></td>
</tr>
<tr id="row_show_address_agent" style="" class="datos">
<td style="font-weight:bold;">
<?php
@ -1144,6 +1211,7 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_show_resume" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Show resume') . ui_print_help_tip(__('Show a resume table with max, min, average of total modules on the report bottom'), true);?></td>
<td>
@ -1168,7 +1236,7 @@ $class = 'databox filters';
?>
</td>
</tr>
</tr>
<tr id="row_event_graphs" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Event graphs'); ?></td>
<td>
@ -1198,15 +1266,18 @@ $class = 'databox filters';
</span>
</td>
</tr>
<tr id="row_show_in_two_columns" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Show in two columns');?></td>
<td><?php html_print_checkbox('show_in_two_columns', 1, $show_in_two_columns, false,
false, 'if ($(\'input[name=show_in_two_columns]\').is(\':checked\')) $(\'input[name=show_in_landscape]\').attr(\'checked\', false);');?></td>
</tr>
<tr id="row_sort" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Order') . ui_print_help_tip(__('SLA items sorted by fulfillment value'), true);?></td>
<td><?php html_print_select ($show_sort_options, 'combo_sla_sort_options', $sla_sorted_by, '', __('None'), 0); ?></td>
</tr>
<tr id="row_show_in_landscape" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Show in landscape');?></td>
<td>
@ -1217,6 +1288,9 @@ $class = 'databox filters';
?>
</td>
</tr>
<tr id="row_filter_search" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Free search');?></td>
<td>
@ -1244,6 +1318,7 @@ echo '</form>';
ui_include_time_picker();
ui_require_javascript_file('pandora');
if ($enterpriseEnable) {
reporting_enterprise_text_box();
}
@ -1301,6 +1376,8 @@ function print_SLA_list($width, $action, $idItem = null) {
continue;
}
}
$idAgent = db_get_value_filter('id_agente',
'tagente_modulo',
array('id_agente_modulo' => $item['id_agent_module']));
@ -1350,6 +1427,7 @@ function print_SLA_list($width, $action, $idItem = null) {
<a href="javascript: deleteSLARow(' . $item['id'] . ');">' . html_print_image("images/cross.png", true) . '</a>
</td>';
echo '</tr>';
if ($meta) {
//Restore db connection
metaconsole_restore_db();
@ -1369,11 +1447,13 @@ function print_SLA_list($width, $action, $idItem = null) {
<td class="sla_list_sla_min_col sla_min"></td>
<td class="sla_list_sla_max_col sla_max"></td>
<td class="sla_list_sla_limit_col sla_limit"></td>
<td class="sla_list_action_col" style="text-align: center;">
<a class="delete_button" href="javascript: deleteSLARow(0);"><?php html_print_image("images/cross.png", false); ?></a>
</td>
</tr>
</tbody>
<tbody>
<tr id="sla_form" style="" class="datos">
<td class="sla_list_agent_col">
@ -1418,7 +1498,10 @@ function print_SLA_list($width, $action, $idItem = null) {
<td class="sla_list_sla_min_col"><input name="sla_min" id="text-sla_min" size="10" maxlength="10" type="text"></td>
<td class="sla_list_sla_max_col"><input name="sla_max" id="text-sla_max" size="10" maxlength="10" type="text"></td>
<td class="sla_list_sla_limit_col"><input name="sla_limit" id="text-sla_limit" size="10" maxlength="10" type="text"></td>
<td class="sla_list_action_col" style="text-align: center;"><a href="javascript: addSLARow();"><?php html_print_image("images/disk.png", false); ?></a></td>
<td class="sla_list_action_col" style="text-align: center;">
<a href="javascript: addSLARow();"><?php html_print_image("images/disk.png", false); ?></a>
</td>
</tr>
</tbody>
<?php
@ -1475,7 +1558,11 @@ function print_General_list($width, $action, $idItem = null, $type = 'general')
case 'new':
?>
<tr id="general_template" style="" class="datos">
<td colspan="3"><?php echo __('Please save the report to start adding items into the list.');?></td>
<td colspan="3">
<?php
echo __('Please save the report to start adding items into the list.');
?>
</td>
</tr>
<?php
break;
@ -1500,6 +1587,8 @@ function print_General_list($width, $action, $idItem = null, $type = 'general')
continue;
}
}
$idAgent = db_get_value_filter(
'id_agente', 'tagente_modulo',
array('id_agente_modulo' => $item['id_agent_module']));
@ -1542,6 +1631,7 @@ function print_General_list($width, $action, $idItem = null, $type = 'general')
}
echo '</tbody>';
?>
<tbody id="general_template">
<tr id="row" style="display: none;" class="datos">
<td class="agent_name"></td>
@ -1556,6 +1646,7 @@ function print_General_list($width, $action, $idItem = null, $type = 'general')
<td style="text-align: center;"><a class="delete_button" href="javascript: deleteGeneralRow(0);"><?php html_print_image("images/cross.png", false); ?></a></td>
</tr>
</tbody>
<tbody>
<tr id="general_form" style="" class="datos">
<td>
@ -1601,6 +1692,7 @@ function print_General_list($width, $action, $idItem = null, $type = 'general')
<td style="text-align: center;"><a href="javascript: addGeneralRow();"><?php html_print_image("images/disk.png", false); ?></a></td>
</tr>
</tbody>
<?php
break;
default:
@ -2155,6 +2247,7 @@ function chooseType() {
$("#row_filter_search").show();
break;
case 'simple_graph':
$("#row_time_compare_overlapped").show();
$("#row_only_avg").show();
@ -2169,6 +2262,7 @@ function chooseType() {
$("#row_show_in_landscape").show();
$("#row_time_compare_overlapped").show();
break;
case 'projection_graph':
$("#row_description").show();
$("#row_agent").show();
@ -2178,6 +2272,7 @@ function chooseType() {
$("#row_show_in_two_columns").show();
$("#row_show_in_landscape").show();
break;
case 'prediction_date':
$("#row_description").show();
$("#row_agent").show();
@ -2186,6 +2281,7 @@ function chooseType() {
$("#row_interval").show();
$("#row_show_in_two_columns").show();
break;
case 'custom_graph':
case 'automatic_custom_graph':
$("#row_description").show();
@ -2194,6 +2290,7 @@ function chooseType() {
$("#row_show_in_two_columns").show();
$("#row_show_in_landscape").show();
break;
case 'SLA':
$("#row_description").show();
$("#row_period").show();
@ -2204,6 +2301,7 @@ function chooseType() {
$("#row_show_in_two_columns").show();
$("#row_sort").show();
break;
case 'SLA_monthly':
$("#row_description").show();
$("#sla_list").show();
@ -2211,6 +2309,7 @@ function chooseType() {
$("#row_show_in_two_columns").show();
$("#row_sort").show();
break;
case 'SLA_services':
$("#row_description").show();
$("#row_period").show();
@ -2226,6 +2325,7 @@ function chooseType() {
$(".sla_list_sla_limit_col").hide();
$("#sla_list").show();
break;
case 'monitor_report':
$("#row_description").show();
$("#row_agent").show();
@ -2233,6 +2333,7 @@ function chooseType() {
$("#row_period").show();
$("#row_show_in_two_columns").show();
break;
case 'avg_value':
$("#row_description").show();
$("#row_agent").show();
@ -2240,6 +2341,7 @@ function chooseType() {
$("#row_period").show();
$("#row_show_in_two_columns").show();
break;
case 'max_value':
$("#row_description").show();
$("#row_agent").show();
@ -2247,6 +2349,7 @@ function chooseType() {
$("#row_period").show();
$("#row_show_in_two_columns").show();
break;
case 'min_value':
$("#row_description").show();
$("#row_agent").show();
@ -2254,6 +2357,7 @@ function chooseType() {
$("#row_period").show();
$("#row_show_in_two_columns").show();
break;
case 'sumatory':
$("#row_description").show();
$("#row_agent").show();
@ -2261,17 +2365,28 @@ function chooseType() {
$("#row_period").show();
$("#row_show_in_two_columns").show();
break;
case 'historical_data':
$("#row_description").show();
$("#row_agent").show();
$("#row_module").show();
$("#row_period").show();
$("#row_show_in_two_columns").show();
break;
case 'agent_detailed':
$("#row_description").show();
$("#row_agent").show();
$("#row_period").show();
$("#row_show_in_two_columns").show();
break;
case 'text':
$("#row_description").show();
$("#row_text").show();
$("#row_show_in_two_columns").show();
break;
case 'sql':
$("#row_description").show();
$("#row_query").show();
@ -2281,6 +2396,7 @@ function chooseType() {
$("#row_show_in_two_columns").show();
$("#row_servers").show();
break;
case 'sql_graph_pie':
$("#row_description").show();
$("#row_query").show();
@ -2288,6 +2404,7 @@ function chooseType() {
$("#row_show_in_landscape").show();
$("#row_servers").show();
break;
case 'sql_graph_hbar':
$("#row_description").show();
$("#row_query").show();
@ -2295,6 +2412,7 @@ function chooseType() {
$("#row_show_in_landscape").show();
$("#row_servers").show();
break;
case 'sql_graph_vbar':
$("#row_description").show();
$("#row_query").show();
@ -2302,10 +2420,12 @@ function chooseType() {
$("#row_show_in_landscape").show();
$("#row_servers").show();
break;
case 'url':
$("#row_description").show();
$("#row_url").show();
break;
case 'database_serialized':
$("#row_description").show();
$("#row_agent").show();
@ -2316,6 +2436,7 @@ function chooseType() {
$("#row_period").show();
$("#row_show_in_two_columns").show();
break;
case 'TTRT':
$("#row_description").show();
$("#row_agent").show();
@ -2323,6 +2444,7 @@ function chooseType() {
$("#row_period").show();
$("#row_show_in_two_columns").show();
break;
case 'TTO':
$("#row_description").show();
$("#row_agent").show();
@ -2330,6 +2452,7 @@ function chooseType() {
$("#row_period").show();
$("#row_show_in_two_columns").show();
break;
case 'MTBF':
$("#row_description").show();
$("#row_agent").show();
@ -2337,6 +2460,7 @@ function chooseType() {
$("#row_period").show();
$("#row_show_in_two_columns").show();
break;
case 'MTTR':
$("#row_description").show();
$("#row_agent").show();
@ -2344,6 +2468,7 @@ function chooseType() {
$("#row_period").show();
$("#row_show_in_two_columns").show();
break;
case 'alert_report_module':
$("#row_description").show();
$("#row_agent").show();
@ -2351,6 +2476,7 @@ function chooseType() {
$("#row_period").show();
$("#row_show_in_two_columns").show();
break;
case 'alert_report_group':
$("#row_description").show();
$("#row_period").show();
@ -2358,12 +2484,14 @@ function chooseType() {
$("#row_group").show();
$("#row_servers").show();
break;
case 'alert_report_agent':
$("#row_description").show();
$("#row_agent").show();
$("#row_period").show();
$("#row_show_in_two_columns").show();
break;
case 'event_report_agent':
$("#row_description").show();
$("#row_agent").show();
@ -2379,6 +2507,7 @@ function chooseType() {
$('#agent_autocomplete').hide();
$('#agent_autocomplete_events').show();
break;
case 'event_report_module':
$("#row_description").show();
$("#row_agent").show();
@ -2394,6 +2523,7 @@ function chooseType() {
$('#agent_autocomplete').hide();
$('#agent_autocomplete_events').show();
break;
case 'general':
$("#row_description").show();
$("#row_group_by_agent").show();
@ -2409,6 +2539,7 @@ function chooseType() {
$("input[name='last_value']").prop("checked", true);
}
break;
case 'availability':
$("#row_description").show();
$("#row_period").show();
@ -2418,16 +2549,19 @@ function chooseType() {
$("#row_show_in_two_columns").show();
$("#row_show_resume").show();
break;
case 'group_report':
$("#row_group").show();
$("#row_servers").show();
$("#row_description").show();
break;
case 'network_interfaces_report':
$("#row_group").show();
$("#row_description").show();
$("#row_period").show();
break;
case 'top_n':
$("#row_description").show();
$("#row_period").show();
@ -2439,6 +2573,7 @@ function chooseType() {
$("#row_show_graph").show();
$("#row_show_in_two_columns").show();
break;
case 'exception':
$("#row_description").show();
$("#row_period").show();
@ -2456,11 +2591,13 @@ function chooseType() {
$("input[name='last_value']").prop("checked", true);
}
break;
case 'agent_module':
$("#row_description").show();
$("#row_group").show();
$("#row_module_group").show();
break;
case 'inventory_changes':
$("#row_description").show();
$("#row_period").show();
@ -2477,6 +2614,7 @@ function chooseType() {
});
break;
case 'inventory':
$("#row_description").show();
$("#row_group").show();
@ -2485,7 +2623,9 @@ function chooseType() {
$("#row_date").show();
$("#row_show_in_two_columns").show();
$("#id_agents").change(event_change_id_agent_inventory);
$("#id_agents")
.change(event_change_id_agent_inventory);
$("#id_agents").trigger('change');
$("#row_servers").show();
@ -2507,15 +2647,19 @@ function chooseType() {
if (!$("#hidden-date_selected").val())
updateInventoryDates(<?php echo '"' . ui_get_full_url(false, false, false, false) . '"'; ?>);
break;
case 'inventory_changes':
break;
case 'agent_configuration':
$("#row_agent").show();
break;
case 'group_configuration':
$("#row_group").show();
$("#row_servers").show();
break;
case 'netflow_area':
$("#row_netflow_filter").show();
$("#row_description").show();
@ -2524,6 +2668,7 @@ function chooseType() {
$("#row_resolution").show();
$("#row_servers").show();
break;
case 'netflow_pie':
$("#row_netflow_filter").show();
$("#row_description").show();
@ -2532,6 +2677,7 @@ function chooseType() {
$("#row_resolution").show();
$("#row_servers").show();
break;
case 'netflow_data':
$("#row_netflow_filter").show();
$("#row_description").show();
@ -2540,6 +2686,7 @@ function chooseType() {
$("#row_resolution").show();
$("#row_servers").show();
break;
case 'netflow_summary':
$("#row_netflow_filter").show();
$("#row_description").show();
@ -2547,6 +2694,7 @@ function chooseType() {
$("#row_resolution").show();
$("#row_servers").show();
break;
case 'netflow_statistics':
$("#row_netflow_filter").show();
$("#row_description").show();
@ -2555,6 +2703,7 @@ function chooseType() {
$("#row_resolution").show();
$("#row_servers").show();
break;
}
}
@ -2580,4 +2729,4 @@ function set_last_value_period() {
$("#row_period").show();
}
}
</script>
</script>

View File

@ -238,8 +238,8 @@ function update_button_palette_callback() {
$("#" + idItem).css('width', '');
$("#" + idItem).css('height', '');
}
set_image("image", idItem, values['image']);
var image = values['image'] + ".png";
set_image("image", idItem, image);
break;
default:
//Maybe save in any Enterprise item.
@ -1626,8 +1626,8 @@ function createItem(type, values, id_data) {
'<img id="image_' + id_data + '" class="image" src="images/spinner.gif" ' + imageSize + ' /><br />' +
'</div>'
);
set_image("image", id_data, values['image']);
var image = values['image'] + ".png";
set_image("image", id_data, image);
break;
default:
//Maybe create in any Enterprise item.
@ -1748,6 +1748,8 @@ function insertDB(type, values) {
}
$("#saving_in_progress_dialog").dialog("close");
//Reload all events for the item and new item.
eventsItems();
}
else {
//TODO
@ -2691,6 +2693,8 @@ function showPreview(image) {
case 'icon':
showPreviewIcon(image);
break;
case 'service':
showPreviewIcon(image);
}
}

View File

@ -51,7 +51,7 @@ require_once($config['homedir'] . "/include/functions_agents.php");
$table = new stdClass();
$table->id = 'wizard_table';
$table->head = array ();
if (!defined('METACONSOLE')) {
if (!is_metaconsole()) {
$metaconsole_hack = '';
$table->width = '100%';
$table->class = 'databox filters';
@ -189,16 +189,17 @@ $table->data["percentileitem_4"][1] = html_print_radio_button_extended(
'value', false, '', 'style="float: left;"', true);
if (defined('METACONSOLE')) {
if (is_metaconsole()) {
$table->rowstyle["all_2"] = 'display: none;';
$table->data["all_2"][0] = __('Servers');
if ($strict_user)
$table->data["all_2"][1] = html_print_select('','server_id',
$server_id, 'metaconsole_init();', __('All'), '0', true);
$table->data["all_2"][1] = html_print_select('','servers',
'', 'metaconsole_init();', __('All'), '0', true);
else
$sql = 'SELECT id, server_name
FROM tmetaconsole_setup';
$table->data["all_2"][1] = html_print_select_from_sql(
'SELECT id, server_name FROM tmetaconsole_setup',
'server_id', $server_id, 'metaconsole_init();', __('All'),
$sql, 'servers', '', 'metaconsole_init();', __('All'),
'0', true);
}
@ -230,7 +231,7 @@ $table->rowstyle["all_4"] = 'display: none;';
$table->data["all_4"][0] = __('Agents');
$agents_list = array();
if (!defined('METACONSOLE'))
if (!is_metaconsole())
$agents_list = agents_get_group_agents(0, false, "none", false,
true);
@ -283,7 +284,7 @@ $table->data["all_8"][3] = '<span id="parent_column_3_item_in_visual_map">' .
if (defined('METACONSOLE')) {
if (is_metaconsole()) {
$pure = get_parameter('pure', 0);
echo '<form method="post"
@ -304,7 +305,7 @@ if (defined("METACONSOLE")) {
html_print_table ($table);
echo '<div class="action-buttons" style="width: '.$table->width.'">';
if (defined('METACONSOLE')) {
if (is_metaconsole()) {
html_print_input_hidden ('action2', 'update');
}
else {
@ -325,7 +326,7 @@ echo '<span id="loading_text" style="display: none;">' .
?>
<script type="text/javascript">
var metaconsole_enabled = <?php echo json_encode(defined('METACONSOLE')); ?>;
var metaconsole_enabled = <?php echo (int) is_metaconsole(); ?>;
var show_only_enabled_modules = true;
var url_ajax = "ajax.php";
@ -334,6 +335,8 @@ if (metaconsole_enabled) {
}
$(document).ready (function () {
var noneText = $("#none_text").html(); //Trick for catch the translate text.
hidden_rows();
$("#process_value").change(function () {
@ -352,8 +355,17 @@ $(document).ready (function () {
});
$("#groups").change (function () {
$('#module')
.prop('disabled', true)
.empty()
.append($('<option></option>')
.html(noneText)
.attr("None", "")
.attr('value', -1)
.prop('selected', true));
$('#id_agents')
.attr('disabled', true)
.prop('disabled', true)
.empty ()
.css ("width", "auto")
.css ("max-width", "")
@ -363,6 +375,7 @@ $(document).ready (function () {
page: "include/ajax/agent",
get_agents_group: 1,
id_group: $("#groups").val(),
serialized: 1,
mode: "json"
};
@ -378,8 +391,6 @@ $(document).ready (function () {
$('#id_agents').empty();
if (isEmptyObject(data)) {
var noneText = $("#none_text").html(); //Trick for catch the translate text.
$('#id_agents')
.append($('<option></option>')
.html(noneText)
@ -389,14 +400,14 @@ $(document).ready (function () {
}
else {
jQuery.each (data, function (i, val) {
s = js_html_entity_decode(val);
var s = js_html_entity_decode(val);
$('#id_agents')
.append($('<option></option>')
.html(s).attr("value", i));
});
}
$('#id_agents').removeAttr('disabled');
$('#id_agents').prop('disabled', false);
}
});
});

View File

@ -58,37 +58,43 @@ if ($profile_list === false) {
}
$table->data[3][1] = html_print_select ($profile_list, 'default_remote_profile', $config['default_remote_profile'], '', '', '', true, false, true, '', $config['autocreate_remote_users'] == 0);
$table->data[4][0] = __('Autocreate profile group');
$table->data[4][1] = html_print_select_groups ($config['id_user'], "AR", true, 'default_remote_group', $config['default_remote_group'], '', '', '', true, false, true, '', $config['autocreate_remote_users'] == 0);
$table->data[5][0] = __('Autocreate blacklist') . ui_print_help_icon ('autocreate_blacklist', true);
$table->data[5][1] = html_print_input_text ('autocreate_blacklist', $config['autocreate_blacklist'], '', 60, 100, true);
$table->data[4][1] = html_print_select_groups ($config['id_user'], "AR",
true, 'default_remote_group', $config['default_remote_group'],
'', '', '', true, false, true, '',
$config['autocreate_remote_users'] == 0);
$tags = tags_get_all_tags();
$table->data[5][0] = __('Autocreate profile tags');
$table->data[5][1] = html_print_select($tags, 'default_assign_tags[]', explode(",",$config['default_assign_tags']), '', __('Any'), '', true, true);
$table->data[6][0] = __('Autocreate blacklist') . ui_print_help_icon ('autocreate_blacklist', true);
$table->data[6][1] = html_print_input_text ('autocreate_blacklist', $config['autocreate_blacklist'], '', 60, 100, true);
for ($i = 1; $i <= 4; $i++) {
$table->rowstyle[$i] = $config['auth'] != 'mysql' ? '' : 'display: none;';
$table->rowclass[$i] = 'remote';
}
$table->data[6][0] = __('LDAP server');
$table->data[6][1] = html_print_input_text ('ldap_server', $config['ldap_server'], '', 30, 100, true);
$table->data[7][0] = __('LDAP port');
$table->data[7][1] = html_print_input_text ('ldap_port', $config['ldap_port'], '', 10, 100, true);
$table->data[8][0] = __('LDAP version');
$table->data[7][0] = __('LDAP server');
$table->data[7][1] = html_print_input_text ('ldap_server', $config['ldap_server'], '', 30, 100, true);
$table->data[8][0] = __('LDAP port');
$table->data[8][1] = html_print_input_text ('ldap_port', $config['ldap_port'], '', 10, 100, true);
$table->data[9][0] = __('LDAP version');
$ldap_versions = array (1 => 'LDAPv1', 2 => 'LDAPv2', 3 => 'LDAPv3');
$table->data[8][1] = html_print_select ($ldap_versions, 'ldap_version', $config['ldap_version'], '', '', 0, true);
$table->data[9][0] = __('Start TLS');
$table->data[9][1] = __('Yes').'&nbsp;'.html_print_radio_button ('ldap_start_tls', 1, '', $config['ldap_start_tls'], true).'&nbsp;&nbsp;';
$table->data[9][1] .= __('No').'&nbsp;'.html_print_radio_button ('ldap_start_tls', 0, '', $config['ldap_start_tls'], true);
$table->data[10][0] = __('Base DN');
$table->data[10][1] = html_print_input_text ('ldap_base_dn', $config['ldap_base_dn'], '', 60, 100, true);
$table->data[11][0] = __('Login attribute');
$table->data[11][1] = html_print_input_text ('ldap_login_attr', $config['ldap_login_attr'], '', 60, 100, true);
$table->data[9][1] = html_print_select ($ldap_versions, 'ldap_version', $config['ldap_version'], '', '', 0, true);
$table->data[10][0] = __('Start TLS');
$table->data[10][1] = __('Yes').'&nbsp;'.html_print_radio_button ('ldap_start_tls', 1, '', $config['ldap_start_tls'], true).'&nbsp;&nbsp;';
$table->data[10][1] .= __('No').'&nbsp;'.html_print_radio_button ('ldap_start_tls', 0, '', $config['ldap_start_tls'], true);
$table->data[11][0] = __('Base DN');
$table->data[11][1] = html_print_input_text ('ldap_base_dn', $config['ldap_base_dn'], '', 60, 100, true);
$table->data[12][0] = __('Login attribute');
$table->data[12][1] = html_print_input_text ('ldap_login_attr', $config['ldap_login_attr'], '', 60, 100, true);
// Hide LDAP configuration options
for ($i = 2; $i <= 11; $i++) {
for ($i = 2; $i <= 12; $i++) {
$table->rowstyle[$i] = $config['auth'] == 'ldap' ? '' : 'display: none;';
$table->rowclass[$i] = 'ldap';
}
// Set the rows autocreation for Active Directory
for ($i = 2; $i <= 5; $i++) {
for ($i = 2; $i <= 6; $i++) {
$table->rowclass[$i] .= ' ' . 'ad';
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 212 B

View File

@ -38,20 +38,22 @@ if ($get_agents_group) {
$id_group = (int) get_parameter('id_group', -1);
$mode = (string) get_parameter('mode', 'json');
$id_server = (int) get_parameter('id_server', 0);
$serialized = (bool) get_parameter('serialized');
$return = array();
if ($id_group != -1) {
$filter = array();
if (defined('METACONSOLE')) {
if (is_metaconsole() && !empty($id_server)) {
$filter['id_server'] = $id_server;
}
$return = agents_get_group_agents($id_group, $filter, "none");
$return = agents_get_group_agents($id_group, $filter, "none", false, false, $serialized);
}
switch ($mode) {
case 'json':
default:
echo json_encode($return);
break;
}
@ -59,7 +61,7 @@ if ($get_agents_group) {
return;
}
if ($search_agents && ((!defined('METACONSOLE')) || $force_local)) {
if ($search_agents && (!is_metaconsole() || $force_local)) {
$id_agent = (int) get_parameter('id_agent');
$string = (string) get_parameter('q'); /* q is what autocomplete plugin gives */
@ -166,7 +168,7 @@ if ($search_agents && ((!defined('METACONSOLE')) || $force_local)) {
echo json_encode($data);
return;
}
elseif ($search_agents && ($config['metaconsole'] == 1) && defined('METACONSOLE')) {
elseif ($search_agents && is_metaconsole()) {
$id_agent = (int) get_parameter ('id_agent');
$string = (string) get_parameter ('q'); /* q is what autocomplete plugin gives */

View File

@ -274,13 +274,35 @@ if ($get_module_detail) {
// Just a string of alphanumerical data... just do print
//Fixed the data from Selenium Plugin
if ($row[$attr[0]] != strip_tags($row[$attr[0]])) {
$data[] = io_safe_input($row[$attr[0]]);
}
else if (is_numeric($row[$attr[0]])) {
else if (is_numeric($row[$attr[0]]) && !modules_is_string_type($row['module_type']) ) {
$data[] = (double) $row[$attr[0]];
}
else {
$data[] = $row[$attr[0]];
$intDays = $row[$attr[0]] / 8640000;
$dias = $intDays - (integer)$intDays;
$intDays = (integer)$intDays;
$intHours = $dias * 24;
$Hours = $intHours - (integer)$intHours;
$intHours = (integer)$intHours;
$intMinutes = $Hours * 60;
$minutos = $intMinutes - (integer)$intMinutes;
$intMinutes = (integer)$intMinutes;
$intSeconds = $minutos * 60;
$ConvertSeconds = $intDays . " Days - ". $intHours ." Hours - ". $intMinutes . " Mins";
if ($ConvertSeconds) {
$data[] = $ConvertSeconds;
}
else {
$data[] = $row[$attr[0]];
}
}
}
}
@ -969,7 +991,27 @@ if ($list_modules) {
if ($module_value == $sub_string) {
$salida = $module_value;
$intDays = $module_value / 8640000;
$dias = $intDays - (integer)$intDays;
$intDays = (integer)$intDays;
$intHours = $dias * 24;
$Hours = $intHours - (integer)$intHours;
$intHours = (integer)$intHours;
$intMinutes = $Hours * 60;
$minutos = $intMinutes - (integer)$intMinutes;
$intMinutes = (integer)$intMinutes;
$intSeconds = $minutos * 60;
$ConvertSeconds = $intDays . " Days - ". $intHours ." Hours - ". $intMinutes . " Mins";
if ($ConvertSeconds) {
$salida = $ConvertSeconds;
}
else {
$salida = $module_value;
}
}
else {
$salida = "<span " .

View File

@ -353,6 +353,16 @@ if ($update_last_free_package) {
//curl_setopt($curlObj, CURLOPT_POST, true);
//curl_setopt($curlObj, CURLOPT_POSTFIELDS, $params);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, false);
if (isset($config['update_manager_proxy_server'])) {
curl_setopt($curlObj, CURLOPT_PROXY, $config['update_manager_proxy_server']);
}
if (isset($config['update_manager_proxy_port'])) {
curl_setopt($curlObj, CURLOPT_PROXYPORT, $config['update_manager_proxy_port']);
}
if (isset($config['update_manager_proxy_user'])) {
curl_setopt($curlObj, CURLOPT_PROXYUSERPWD, $config['update_manager_proxy_user'] . ':' . $config['update_manager_proxy_password']);
}
$result = curl_exec($curlObj);
$http_status = curl_getinfo($curlObj, CURLINFO_HTTP_CODE);
@ -477,4 +487,4 @@ if ($install_free_package) {
$return["message"]= __("The package is installed.");
echo json_encode($return);
}
?>
?>

View File

@ -217,7 +217,8 @@ function process_user_login_remote ($login, $pass, $api = false) {
// Unknown authentication method
default:
$config["auth_error"] = "User not found in database or incorrect password";
$config["auth_error"] = "User not found in database
or incorrect password";
return false;
break;
}
@ -228,23 +229,62 @@ function process_user_login_remote ($login, $pass, $api = false) {
return false;
}
if ($config["auth"] === 'ad'){
$return = enterprise_hook ('prepare_permissions_groups_of_user_ad',
array ($login, $pass, false, true));
if ($return === "error_permissions") {
$config["auth_error"] = __("Problems with configuration
permissions. Please contact with Administrator");
return false;
}
else
{
if ($return === "permissions_changed") {
$config["auth_error"] = __("Your permmission have been change. Please, login again");
return false;
}
}
}
return $login;
}
// The user does not exist and can not be created
if ($config['autocreate_remote_users'] == 0 || is_user_blacklisted ($login)) {
$config["auth_error"] = "Ooops User not found in database or incorrect password";
$config["auth_error"] = __("Ooops User not found in
database or incorrect password");
return false;
}
// Create the user in the local database
if (create_user ($login, $pass, array ('fullname' => $login, 'comments' => 'Imported from ' . $config['auth'])) === false) {
$config["auth_error"] = "User not found in database or incorrect password";
return false;
if (isset($config['ad_advanced_config']) && $config['ad_advanced_config']) {
// Create the user in the local database enterprise_hook ('prepare_permissions_groups_of_user_ad', array ($login, $pass))
if (enterprise_hook ('prepare_permissions_groups_of_user_ad',
array ($login, $pass, array ('fullname' => $login,
'comments' => 'Imported from ' .
$config['auth']))) === false) {
$config["auth_error"] = __("User not found in database
or incorrect password");
return false;
}
}
else{
// Create the user in the local database
if (create_user ($login, $pass,
array ('fullname' => $login,
'comments' => 'Imported from ' . $config['auth'])
) === false) {
$config["auth_error"] = __("User not found in database or incorrect password");
return false;
}
profile_create_user_profile ($login,
$config['default_remote_profile'],
$config['default_remote_group']);
}
profile_create_user_profile ($login, $config['default_remote_profile'], $config['default_remote_group']);
return $login;
}
@ -513,10 +553,13 @@ function ldap_process_user_login ($login, $password) {
}
}
$ldap_login_attr = isset($config["ldap_login_attr"]) ? io_safe_output($config["ldap_login_attr"]) . "=" : '';
$ldap_base_dn = isset($config["ldap_base_dn"]) ? "," . io_safe_output($config["ldap_base_dn"]) : '';
if (strlen($password) == 0 ||
!@ldap_bind($ds,
io_safe_output($config["ldap_login_attr"]) . "=" . $login . "," . io_safe_output($config["ldap_base_dn"]),
$password)) {
$ldap_login_attr. io_safe_output($login) . $ldap_base_dn,
$password)) {
$config["auth_error"] = 'User not found in database or incorrect password';
@ldap_close ($ds);

View File

@ -22,8 +22,8 @@
/**
* Pandora build version and version
*/
$build_version = 'PC150724';
$pandora_version = 'v6.0dev';
$build_version = 'PC150812';
$pandora_version = 'v6.0RC1';
// Do not overwrite default timezone set if defined.
$script_tz = @date_default_timezone_get();

View File

@ -24,7 +24,7 @@ define ('ENTERPRISE_NOT_HOOK', -1);
/**/
define('DATE_FORMAT', 'Y/m/d');
define('DATE_FORMAT_JS', 'yy/mm/d');
define('DATE_FORMAT_JS', 'yy/mm/dd');
define('TIME_FORMAT', 'H:i:s');
define('TIME_FORMAT_JS', 'HH:mm:ss');

View File

@ -757,11 +757,13 @@ function agents_common_modules ($id_agent, $filter = false, $indexed = true, $ge
* @param string $case Which case to return the agentname as (lower, upper, none)
* @param boolean $noACL jump the ACL test.
* @param boolean $childGroups The flag to get agents in the child group of group parent passed. By default false.
* @param boolean $serialized Only in metaconsole. Return the key as <server id><SEPARATOR><agent id>. By default false.
* @param string $separator Only in metaconsole. Separator for the serialized data. By default |.
*
* @return array An array with all agents in the group or an empty array
*/
function agents_get_group_agents ($id_group = 0, $search = false,
$case = "lower", $noACL = false, $childGroups = false) {
$case = "lower", $noACL = false, $childGroups = false, $serialized = false, $separator = '|') {
global $config;
@ -776,8 +778,6 @@ function agents_get_group_agents ($id_group = 0, $search = false,
}
}
if ($childGroups) {
if (is_array($id_group)) {
foreach ($id_group as $parent) {
@ -860,7 +860,7 @@ function agents_get_group_agents ($id_group = 0, $search = false,
unset($search['status']);
}
if (defined('METACONSOLE') && isset($search['id_server'])) {
if (is_metaconsole() && isset($search['id_server'])) {
$filter['id_tmetaconsole_setup'] = $search['id_server'];
if ($filter['id_tmetaconsole_setup'] == 0) {
@ -882,41 +882,54 @@ function agents_get_group_agents ($id_group = 0, $search = false,
$filter['order'] = 'nombre';
if (defined('METACONSOLE')) {
if (is_metaconsole()) {
$table_name = 'tmetaconsole_agent';
$fields = array(
'id_tagente AS id_agente', 'nombre'
'id_tagente AS id_agente',
'nombre',
'id_tmetaconsole_setup AS id_server'
);
}
else {
$table_name = 'tagente';
$fields = array(
'id_agente', 'nombre'
'id_agente',
'nombre'
);
}
$result = db_get_all_rows_filter($table_name, $filter, $fields);
if ($result === false)
return array (); //Return an empty array
$agents = array ();
foreach ($result as $row) {
if (!isset($row["id_agente"]) || !isset($row["nombre"]))
continue;
if ($serialized && isset($row["id_server"])) {
$key = $row["id_server"] . $separator . $row["id_agente"];
}
else {
$key = $row["id_agente"];
}
switch ($case) {
case "lower":
$agents[$row["id_agente"]] = mb_strtolower ($row["nombre"], "UTF-8");
$value = mb_strtolower ($row["nombre"], "UTF-8");
break;
case "upper":
$agents[$row["id_agente"]] = mb_strtoupper ($row["nombre"], "UTF-8");
$value = mb_strtoupper ($row["nombre"], "UTF-8");
break;
default:
$agents[$row["id_agente"]] = $row["nombre"];
$value = $row["nombre"];
break;
}
$agents[$key] = $value;
}
return ($agents);
}

View File

@ -52,6 +52,15 @@ function config_update_value ($token, $value) {
io_safe_output($value));
}
if ($token == 'ad_adv_perms') {
$value = str_replace(array("\r\n", "\r", "\n"), ";",
io_safe_output($value));
}
if ($token == 'default_assign_tags') {
$value = ($value);
}
if (!isset ($config[$token])) {
$config[$token] = $value;
return (bool) config_create_value ($token, io_safe_input($value));
@ -273,6 +282,8 @@ function config_update_config () {
$error_update[] = __('Autocreate profile');
if (!config_update_value ('default_remote_group', get_parameter ('default_remote_group')))
$error_update[] = __('Autocreate profile group');
if (!config_update_value ('default_assign_tags', implode(",",get_parameter ('default_assign_tags'))))
$error_update[] = __('Autocreate profile tags');
if (!config_update_value ('autocreate_blacklist', get_parameter ('autocreate_blacklist')))
$error_update[] = __('Autocreate blacklist');
@ -282,8 +293,12 @@ function config_update_config () {
$error_update[] = __('Active directory port');
if (!config_update_value ('ad_start_tls', get_parameter ('ad_start_tls')))
$error_update[] = __('Start TLS');
if (!config_update_value ('ad_advanced_config', get_parameter ('ad_advanced_config')))
$error_update[] = __('Advance Config AD');
if (!config_update_value ('ad_domain', get_parameter ('ad_domain')))
$error_update[] = __('Domain');
if (!config_update_value ('ad_adv_perms', get_parameter ('ad_adv_perms')))
$error_update[] = __('Advanced Permisions AD');
if (!config_update_value ('ldap_server', get_parameter ('ldap_server')))
$error_update[] = __('LDAP server');
@ -468,7 +483,7 @@ function config_update_config () {
if (!config_update_value ('type_module_charts', (string) get_parameter('type_module_charts', 'area')))
$error_update[] = __('Default type of module charts.');
if (!config_update_value ('render_proc', (bool) get_parameter('render_proc', false)))
$error_update[] = __('Display dara of proc modules in other format');
$error_update[] = __('Display data of proc modules in other format');
if (!config_update_value ('render_proc_ok', (string) get_parameter('render_proc_ok', __('Ok') )))
$error_update[] = __('Display text proc modules have state is ok');
if (!config_update_value ('render_proc_fail', (string) get_parameter('render_proc_fail', __('Fail') )))
@ -1042,6 +1057,10 @@ function config_process_config () {
config_update_value ('default_remote_group', 0);
}
if (!isset ($config['default_assign_tags'])) {
config_update_value ( 'default_assign_tags', '');
}
if (!isset ($config['ldap_server'])) {
config_update_value ( 'ldap_server', 'localhost');
}
@ -1083,10 +1102,28 @@ function config_process_config () {
config_update_value ( 'ad_start_tls', 0);
}
if (!isset ($config['ad_advanced_config'])) {
config_update_value ( 'ad_advanced_config', 0);
}
if (!isset ($config['ad_domain'])) {
config_update_value ( 'ad_domain', '');
}
if (!isset ($config["ad_adv_perms"])) {
config_update_value ('ad_adv_perms', '');
}
else{
$temp_ad_adv_perms = array();
if (isset($config['ad_adv_perms'])) {
if (!empty($config['ad_adv_perms'])) {
$temp_ad_adv_perms = explode(';', io_safe_output($config['ad_adv_perms']));
}
}
$config['ad_adv_perms'] = $temp_ad_adv_perms;
$keysConfig = array_keys($config);
}
if (!isset ($config['rpandora_server'])) {
config_update_value ( 'rpandora_server', 'localhost');
}

View File

@ -2346,7 +2346,7 @@ function group_get_data ($id_user = false, $user_strict = false, $acltags, $retu
* Agent cache for metaconsole.
* Retrieve the statistic data from the cache table.
*/
if (!$user_strict && defined('METACONSOLE') && !empty($list_groups)) {
if (!$user_strict && is_metaconsole() && !empty($list_groups)) {
$cache_table = 'tmetaconsole_agent';
$sql_stats = "SELECT id_grupo, COUNT(id_agente) AS agents_total,
@ -2476,7 +2476,7 @@ function group_get_data ($id_user = false, $user_strict = false, $acltags, $retu
foreach ($list_groups as $key => $item) {
$id = $item['id_grupo'];
if (!$user_strict && defined('METACONSOLE')) { // Agent cache
if (!$user_strict && is_metaconsole()) { // Agent cache
$group_stat = array();
if (isset($stats_by_group[$id]))
$group_stat = $stats_by_group[$id];
@ -2924,21 +2924,9 @@ function group_get_groups_list($id_user = false, $user_strict = false, $access =
$acltags = tags_get_user_module_and_tags ($id_user, $access, $user_strict);
if (! is_metaconsole()) {
$result_list = group_get_data ($id_user, $user_strict, $acltags,
$returnAllGroup, $mode);
return $result_list;
}
else {
$servers = db_get_all_rows_sql ("
SELECT *
FROM tmetaconsole_setup
WHERE disabled = 0");
if ($servers === false) {
$servers = array();
}
// If using metaconsole, the strict users will use the agent table of every node
if (is_metaconsole() && $user_strict) {
$servers = metaconsole_get_servers();
$result_list = array ();
foreach ($servers as $server) {
@ -2987,6 +2975,13 @@ function group_get_groups_list($id_user = false, $user_strict = false, $access =
}
return $result_list;
}
// If using metaconsole, the not strict users will use the metaconsole's agent cache table
else {
$result_list = group_get_data ($id_user, $user_strict, $acltags,
$returnAllGroup, $mode);
return $result_list;
}
}

View File

@ -762,6 +762,56 @@ function modules_get_agentmodule ($id_agentmodule) {
}
}
function modules_get_table_data($id_agent_module) {
$id_type = db_get_value('id_tipo_modulo',
'tagente_modulo', 'id_agente_modulo', $id_agent_module);
$name_type = db_get_value('nombre', 'ttipo_modulo', 'id_tipo', $id_type);
$chunks = explode('_', $name_type);
$subtype = end($chunks);
switch ($subtype) {
case 'data':
case 'proc':
case 'icmp':
case 'tcp':
case 'snmp':
case 'inc':
// Numeric
return "tagente_datos";
break;
case 'log4x':
// Log4x
return "tagente_datos_log4x";
break;
case 'string':
// String
return "tagente_datos_string";
break;
default:
return null;
break;
}
}
function modules_get_raw_data($id_agent_module, $date_init, $date_end) {
$table = modules_get_table_data($id_agent_module);
$datelimit = $date_init - $date_end;
$search_in_history_db = db_search_in_history_db($datelimit);
$data = db_get_all_rows_sql('
SELECT *
FROM ' . $table . '
WHERE id_agente_modulo = ' . $id_agent_module . '
AND utimestamp >= ' . $date_init . '
AND utimestamp <= ' . $date_end, $search_in_history_db);
return $data;
}
function modules_get_agent_group($id_agent_module) {
$return = false;
@ -1638,7 +1688,8 @@ function modules_get_agentmodule_data ($id_agent_module, $period,
case 31:
if ( $config["render_proc"] ) {
$sql = sprintf ("
SELECT IF(datos >= 1, 'OK', 'FAIL') as data, utimestamp
SELECT IF(datos >= 1, '" . $config["render_proc_ok"] . "', '" .
$config["render_proc_fail"] . "') as data, utimestamp
FROM tagente_datos
WHERE id_agente_modulo = %d
AND utimestamp > %d AND utimestamp <= %d
@ -1675,11 +1726,13 @@ function modules_get_agentmodule_data ($id_agent_module, $period,
$module_name = modules_get_agentmodule_name ($id_agent_module);
$agent_id = modules_get_agentmodule_agent ($id_agent_module);
$agent_name = modules_get_agentmodule_agent_name ($id_agent_module);
$module_type = modules_get_agentmodule_type ($id_agent_module);
foreach ($values as $key => $data) {
$values[$key]["module_name"] = $module_name;
$values[$key]["agent_id"] = $agent_id;
$values[$key]["agent_name"] = $agent_name;
$values[$key]["module_type"] = $module_type;
}
if ($search_in_history_db) {

View File

@ -204,6 +204,11 @@ function reporting_make_reporting_data($report = null, $id_report,
$content,
'sum');
break;
case 'historical_data':
$report['contents'][] = reporting_historical_data(
$report,
$content);
break;
case 'MTTR':
$report['contents'][] = reporting_value(
$report,
@ -2162,6 +2167,33 @@ function reporting_event_report_agent($report, $content,
return reporting_check_structure_content($return);
}
function reporting_historical_data($report, $content) {
global $config;
$return['type'] = 'historical_data';
if (empty($content['name'])) {
$content['name'] = __('Historical data');
}
$return['title'] = $content['name'];
$return["description"] = $content["description"];
$return["date"] = reporting_get_date_text($report, $content);
$return['keys'] = array(__('Date'), __('Data'));
$data = array();
foreach ($result as $row) {
$data[] = array(
__('Date') => date ($config["date_format"], $row['utimestamp']),
__('Data') => $row['datos']);
}
$return["data"] = $data;
return reporting_check_structure_content($return);
}
function reporting_database_serialized($report, $content) {
global $config;

View File

@ -225,6 +225,9 @@ function reporting_html_print_report($report, $mini = false) {
case 'group_configuration':
reporting_html_group_configuration($table, $item);
break;
case 'historical_data':
reporting_html_historical_data($table, $item);
break;
case 'database_serialized':
reporting_html_database_serialized($table, $item);
break;
@ -1159,6 +1162,22 @@ function reporting_html_event_report_agent($table, $item) {
}
}
function reporting_html_historical_data($table, $item) {
$table1->width = '100%';
$table1->head = array (__('Date'), __('Data'));
$table1->data = array ();
foreach ($item['data'] as $data) {
$row = array($data[__('date')], $data[__('Data')]);
$table1->data[] = $row;
}
}
$table->colspan['database_serialized']['cell'] = 3;
$table->cellstyle['database_serialized']['cell'] = 'text-align: center;';
$table->data['database_serialized']['cell'] = html_print_table($table1, true);
}
function reporting_html_database_serialized($table, $item) {
$table1->width = '100%';

View File

@ -564,6 +564,8 @@ function reports_get_report_types ($template = false, $not_editor = false) {
'name' => __('Serialize data'));
$types['sumatory'] = array('optgroup' => __('Modules'),
'name' => __('Summatory'));
$types['historical_data'] = array('optgroup' => __('Modules'),
'name' => __('Historical Data'));
@ -623,6 +625,8 @@ function reports_get_report_types ($template = false, $not_editor = false) {
}
}
if (!$template) {
$types['agent_configuration'] = array('optgroup' => __('Configuration'),
'name' => __('Agent configuration'));

View File

@ -2271,11 +2271,15 @@ function tags_get_user_module_and_tags ($id_user = false, $access = 'AR', $stric
$acltags = array();
// Change the 'All' group with all groups
$all_group_ids = array();
$all_groups = groups_get_all();
if (!empty($all_groups))
$all_group_ids = array_keys($all_groups);
$user_groups = users_get_groups($id_user, $access, false);
$user_groups_ids = array();
if (!empty($user_groups) && is_array($user_groups)) {
$user_groups_ids = array_keys($user_groups);
}
// If the user is admin, he should have access to the all group with the required permission
if (is_user_admin($id_user))
array_unshift($tags_and_groups, array('id_grupo' => 0, 'tags' => ''));
$tags_and_groups_aux = array();
foreach ($tags_and_groups as $data) {
@ -2283,7 +2287,7 @@ function tags_get_user_module_and_tags ($id_user = false, $access = 'AR', $stric
if ((int)$data['id_grupo'] === 0) {
// All group with empty tags. All groups without tags permission!
if (empty($data['tags'])) {
foreach ($all_group_ids as $group_id) {
foreach ($user_groups_ids as $group_id) {
$acltags[$group_id] = '';
}
@ -2291,7 +2295,7 @@ function tags_get_user_module_and_tags ($id_user = false, $access = 'AR', $stric
}
// Create a new element for every group with the tags
else {
foreach ($all_group_ids as $group_id) {
foreach ($user_groups_ids as $group_id) {
$tags_and_groups_aux[] = array(
'id_grupo' => $group_id,
'tags' => $data['tags']

View File

@ -1117,14 +1117,22 @@ function ui_require_css_file ($name, $path = 'include/styles/') {
* ui_require_javascript_file ('pandora');
* // Would include include/javascript/pandora.js
* </code>
* @param bool Just echo the script tag of the file.
*
* @return bool True if the file was added. False if the file doesn't exist.
*/
function ui_require_javascript_file ($name, $path = 'include/javascript/') {
function ui_require_javascript_file ($name, $path = 'include/javascript/', $echo_tag = false) {
global $config;
$filename = $path . $name . '.js';
if ($echo_tag) {
echo '<script type="text/javascript" src="' .
ui_get_full_url(false, false, false, false) .
$filename . '"></script>';
return;
}
if (! isset ($config['js']))
$config['js'] = array ();
@ -1203,14 +1211,22 @@ function ui_require_javascript_file_enterprise($name, $disabled_metaconsole = fa
* ui_require_jquery_file ('form');
* // Would include include/javascript/jquery.form.js
* </code>
* @param bool Just echo the script tag of the file.
*
* @return bool True if the file was added. False if the file doesn't exist.
*/
function ui_require_jquery_file ($name, $path = 'include/javascript/') {
function ui_require_jquery_file ($name, $path = 'include/javascript/', $echo_tag = false) {
global $config;
$filename = $path.'jquery.'.$name.'.js';
if ($echo_tag) {
echo '<script type="text/javascript" src="' .
ui_get_full_url(false, false, false, false) .
$filename . '"></script>';
return;
}
if (! isset ($config['jquery']))
$config['jquery'] = array ();
if (isset ($config['jquery'][$name]))
@ -2951,7 +2967,7 @@ function ui_print_agent_autocomplete_input($parameters) {
var inputs = [];
inputs.push ("agent_name=" + agent_name);
inputs.push ("filter=delete_pending = 0");
inputs.push ("delete_pending=0");
inputs.push ("get_agent_modules_json=1");
inputs.push ("page=operation/agentes/ver_agente");
@ -3566,8 +3582,8 @@ function ui_get_error ($error_code) {
return array('title' => $title, 'message' => $message);
}
function ui_include_time_picker() {
if (is_ajax ()) {
function ui_include_time_picker($echo_tags = false) {
if (is_ajax () || $echo_tags) {
echo '<script type="text/javascript" src="' .
ui_get_full_url(false, false, false, false) .
'include/javascript/jquery.ui-timepicker-addon.js' . '"></script>';

View File

@ -31,9 +31,6 @@ function users_is_strict_acl($id_user = null) {
$strict_acl = (bool)db_get_value('strict_acl', 'tusuario',
'id_user', $id_user);
//html_debug_print($strict_acl, true);
//html_debug_print($id_user, true);
return $strict_acl;
}

View File

@ -188,12 +188,15 @@ function visual_map_editor_print_item_palette($visualConsole_id, $background) {
'module_graph',
'simple_value',
'datos',
'icon',
'group_item');
'icon');
if (!is_metaconsole())
$form_items['enable_link_row']['items'][] = 'group_item';
$form_items['enable_link_row']['html'] =
'<td align="left" style="">' . __('Enable link') . '</td>
<td align="left" style="">' .
html_print_checkbox('enable_link', '', 'enable_link', true) . '</td>';
html_print_checkbox('enable_link', '', !is_metaconsole(), true) . '</td>';
$form_items['preview_row'] = array();

View File

@ -1183,6 +1183,9 @@ function pandoraFlotArea(graph_id, values, labels, labels_long, legend,
.prop('method', 'POST')
.prop('action', homeurl + '/include/graphs/export_data.php')
.append($dataInput, $typeInput, $separatorInput, $excelInput)
.hide()
// Firefox made me write into the DOM for this :(
.appendTo('body')
.submit();
}
catch (e) {

View File

@ -0,0 +1,13 @@
<?php
/**
* @package Include/help/en
*/
?>
<h1>Advance Permission </h1>
<br><br>
<table width="750px" style="display:inline">
<tr>
<td class=""> If you add a new permission, you was added of next form: Name of Profile,Name of Group,[Name of Group AD n1-Name of Group AD n2-Name of Group AD n3-...],[Nametag1-NameTag2-NameTagN-...]</td>
</table>

View File

@ -89,7 +89,10 @@
callbackPre: dummyFunc,
callbackPost: dummyFunc,
callbackAfter: dummyFunc,
moduleFilter: 'disabled=0 AND delete_pending=0',
moduleFilter: {
disabled: 0,
deletePending: 0
},
debug: false
};
@ -107,12 +110,14 @@
$("option[value!=0]", $select).remove ();
if (! config.callbackBefore (this))
return;
jQuery.post ('ajax.php',
{"page": "operation/agentes/ver_agente",
"get_agent_modules_json": 1,
"id_agent": this.value,
"filter" : config.moduleFilter,
"fields" : "id_agente_modulo,nombre"
{
"page": "operation/agentes/ver_agente",
"get_agent_modules_json": 1,
"id_agent": this.value,
"disabled": config.moduleFilter.disabled,
"delete_pending": config.moduleFilter.deletePending
},
function (data) {
jQuery.each (data, function (i, value) {

View File

@ -141,14 +141,25 @@ function isEmptyObject(obj) {
* @param selected Which module(s) have to be selected
*/
function agent_changed_by_multiple_agents (event, id_agent, selected) {
// Hack to add custom condition
if ($("#hidden-custom_condition").val() != undefined) {
custom_condition = $("#hidden-custom_condition").val();
}
else {
custom_condition = '';
// Hack to avoid certain module types
var module_types_excluded = [];
if (typeof $("input.module_types_excluded") !== 'undefined') {
try {
$("input.module_types_excluded").each(function(index, el) {
var module_type = parseInt($(el).val());
if (module_type !== NaN)
module_types_excluded.push(module_type);
});
}
catch (error) {
}
}
// Module name
var module_name = $("#text-module_filter").val();
var idAgents = Array();
jQuery.each ($("#id_agents option:selected"), function (i, val) {
@ -159,43 +170,40 @@ function agent_changed_by_multiple_agents (event, id_agent, selected) {
//Hack to find only enabled modules
//Pass a flag as global var
find_modules = 'all';
if (typeof(show_only_enabled_modules) != "undefined") {
if (show_only_enabled_modules == true) {
find_modules = 'enabled';
}
if (typeof show_only_enabled_modules !== 'undefined'
&& show_only_enabled_modules) {
find_modules = 'enabled';
}
var selection_mode = $('#modules_selection_mode').val();
if (selection_mode == undefined) {
if (typeof selection_mode === 'undefined') {
selection_mode = 'common';
}
var serialized = $('#hidden-serialized').val();
if (serialized == undefined) {
if (typeof serialized === 'undefined') {
serialized = '';
}
$('#module').attr ('disabled', 1);
$('#module').empty ();
$('#module').append ($('<option></option>')
.html ("Loading...").attr ("value", 0));
$('#module')
.prop('disabled', true)
.empty()
.append($('<option></option>')
.html("Loading...")
.attr("value", 0));
// Check if homedir was received like a JSON
homedir = '';
id_server = 0;
if (typeof(event) == 'undefined') {
homedir += '.';
}
else {
if (event.data == null)
homedir += '.';
else {
homedir = event.data.homedir;
if (event.data.metaconsole != null) {
id_server = $("#" + event.data.id_server).val();
}
var homedir = '.';
var id_server = 0;
if (typeof event !== 'undefined' && typeof event.data !== 'undefined') {
if (typeof event.data.homedir !== 'undefined') {
homedir = event.data.homedir;
}
if (typeof event.data.metaconsole !== 'undefined'
&& event.data.metaconsole) {
id_server = $("#" + event.data.id_server).val();
}
}
@ -205,7 +213,8 @@ function agent_changed_by_multiple_agents (event, id_agent, selected) {
"get_agent_modules_json_for_multiple_agents": 1,
"id_agent[]": idAgents,
"all": find_modules,
"custom_condition": custom_condition,
"module_types_excluded[]": module_types_excluded,
"name": module_name,
"selection_mode": selection_mode,
"serialized": serialized,
"id_server": id_server
@ -260,7 +269,7 @@ function agent_changed_by_multiple_agents (event, id_agent, selected) {
}
}
jQuery.each (data, function (i, val) {
s = js_html_entity_decode(val);
var s = js_html_entity_decode(val);
$('#module')
.append ($('<option></option>')
@ -270,20 +279,18 @@ function agent_changed_by_multiple_agents (event, id_agent, selected) {
$('#module').fadeIn ('normal');
});
if (selected != undefined)
if (typeof selected !== 'undefined')
$('#module').attr ('value', selected);
$('#module').css ("max-width", "");
$('#module').removeAttr('disabled');
$('#module')
.css ("max-width", "")
.prop('disabled', false);
if (typeof(function_hook_loaded_module_list) == 'function') {
function_hook_loaded_module_list();
}
},
"json"
);
"json");
}
/**

View File

@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: pandora-fms\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2015-07-01 11:30+0200\n"
"PO-Revision-Date: 2015-07-07 16:12+0000\n"
"Last-Translator: Carlos Moreno <carlos.moreno@artica.es>\n"
"PO-Revision-Date: 2015-07-29 09:42+0000\n"
"Last-Translator: MIguel Lopez ARTICA <miguel.lopez@artica.es>\n"
"Language-Team: Spanish <es@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2015-07-09 07:54+0000\n"
"X-Generator: Launchpad (build 17608)\n"
"X-Launchpad-Export-Date: 2015-07-29 09:44+0000\n"
"X-Generator: Launchpad (build 17646)\n"
#: ../../enterprise_bk/mobile/include/functions_web.php:15
#: ../../enterprise_bk/meta/general/main_header.php:125
@ -555,7 +555,7 @@ msgstr "Servicios"
#: ../../enterprise_bk/godmode/services/services.service.php:181
#: ../../enterprise/godmode/services/services.service.php:181
msgid "No Services or concrete action"
msgstr ""
msgstr "Sin Servicios o acción concreta"
#: ../../enterprise_bk/godmode/services/services.service.php:191
#: ../../enterprise/godmode/services/services.service.php:192
@ -4007,7 +4007,7 @@ msgstr "Pie de página"
#: ../../enterprise_bk/godmode/reporting/reporting_builder.advanced.php:69
#: ../../enterprise/godmode/reporting/reporting_builder.advanced.php:70
msgid "Advance Reporting"
msgstr ""
msgstr "Informes Avanzados"
#: ../../enterprise_bk/godmode/reporting/reporting_builder.template_editor.php:35
#: ../../enterprise_bk/godmode/servers/manage_export.php:105
@ -6435,11 +6435,11 @@ msgstr "Borrado masivo de políticas de alertas"
#: ../../enterprise_bk/godmode/massive/massive_operations.php:80
msgid "Masive tags module policy edition"
msgstr ""
msgstr "Edición masiva de etiquetas de módulo de política"
#: ../../enterprise_bk/godmode/massive/massive_operations.php:81
msgid "Masive modules policy tags edition"
msgstr ""
msgstr "Edición masiva de módulos de política por etiquetas"
#: ../../enterprise_bk/godmode/massive/massive_operations.php:89
msgid "Massive alert SNMP deletion"
@ -6458,14 +6458,14 @@ msgstr "Edición masiva de módulos satélite"
#: ../../enterprise/godmode/massive/massive_edit_tags_policy.php:62
#: ../../enterprise/godmode/massive/massive_tags_edit_policy.php:62
msgid "Successful update the tags"
msgstr ""
msgstr "Actualización de etiquetas con éxito"
#: ../../enterprise_bk/godmode/massive/massive_edit_tags_policy.php:63
#: ../../enterprise_bk/godmode/massive/massive_tags_edit_policy.php:63
#: ../../enterprise/godmode/massive/massive_edit_tags_policy.php:63
#: ../../enterprise/godmode/massive/massive_tags_edit_policy.php:63
msgid "Unsuccessful update the tags"
msgstr ""
msgstr "Actualización de etiquetas sin éxito"
#: ../../enterprise_bk/godmode/massive/massive_edit_tags_policy.php:83
#: ../../enterprise_bk/godmode/massive/massive_tags_edit_policy.php:83
@ -6512,7 +6512,7 @@ msgstr "Política"
#: ../../enterprise_bk/godmode/massive/massive_edit_tags_policy.php:102
#: ../../enterprise/godmode/massive/massive_edit_tags_policy.php:102
msgid "Tags unused"
msgstr ""
msgstr "Etiquetas sin usar"
#: ../../enterprise_bk/godmode/massive/massive_edit_tags_policy.php:115
#: ../../enterprise_bk/godmode/massive/massive_tags_edit_policy.php:114
@ -6534,7 +6534,7 @@ msgstr "Eliminar"
#: ../../enterprise_bk/godmode/massive/massive_edit_tags_policy.php:118
#: ../../enterprise/godmode/massive/massive_edit_tags_policy.php:118
msgid "Tags used"
msgstr ""
msgstr "Etiquetas usadas"
#: ../../enterprise_bk/godmode/massive/massive_tags_edit_policy.php:93
#: ../../enterprise_bk/godmode/modules/configure_local_component.php:355
@ -6570,12 +6570,12 @@ msgstr "Etiquetas"
#: ../../enterprise_bk/godmode/massive/massive_tags_edit_policy.php:101
#: ../../enterprise/godmode/massive/massive_tags_edit_policy.php:100
msgid "Modules unused"
msgstr ""
msgstr "Módulos sin usar"
#: ../../enterprise_bk/godmode/massive/massive_tags_edit_policy.php:117
#: ../../enterprise/godmode/massive/massive_tags_edit_policy.php:116
msgid "Modules used"
msgstr ""
msgstr "Módulos usados"
#: ../../enterprise_bk/godmode/massive/massive_delete_alerts_snmp.php:28
#: ../../enterprise_bk/godmode/massive/massive_modify_alerts_snmp.php:29
@ -7549,12 +7549,12 @@ msgstr "Remoto/Local"
#: ../../enterprise_bk/godmode/modules/configure_local_component.php:128
#: ../../enterprise/godmode/modules/configure_local_component.php:127
msgid "Update Local Component"
msgstr ""
msgstr "Actualizar Componente Local"
#: ../../enterprise_bk/godmode/modules/configure_local_component.php:131
#: ../../enterprise/godmode/modules/configure_local_component.php:130
msgid "Create Local Component"
msgstr ""
msgstr "Crear Componente Local"
#: ../../enterprise_bk/godmode/modules/configure_local_component.php:148
#: ../../godmode/modules/manage_network_components_form_common.php:56
@ -8232,7 +8232,7 @@ msgstr "BBDD de histórico"
#: ../../enterprise_bk/godmode/menu.php:82
#: ../../enterprise/godmode/menu.php:82
msgid "Enterprise ACL Setup"
msgstr ""
msgstr "Configuración ACL Enterprise"
#: ../../enterprise_bk/godmode/menu.php:88
#: ../../enterprise/godmode/menu.php:88
@ -8269,7 +8269,7 @@ msgstr "Colector de Logs"
#: ../../enterprise_bk/godmode/menu.php:118
#: ../../enterprise/godmode/menu.php:118
msgid "Password policy"
msgstr ""
msgstr "Política de contraseñas"
#: ../../enterprise_bk/godmode/menu.php:124
#: ../../enterprise_bk/include/functions_setup.php:27
@ -8515,7 +8515,7 @@ msgstr "Mostrar archivos"
#: ../../enterprise/godmode/agentes/collections.data.php:339
#: ../../enterprise/godmode/agentes/collections.data.php:340
msgid "Need to regenerate"
msgstr "Necesario regenerar"
msgstr "Necesita volver a regenerarse"
#: ../../enterprise_bk/godmode/agentes/collection_manager.php:141
#: ../../enterprise_bk/godmode/agentes/collection_manager.php:142
@ -8543,7 +8543,7 @@ msgstr "El directorio donde se guardan las colecciones no existe."
#: ../../enterprise_bk/godmode/agentes/collection_manager.php:153
#: ../../enterprise/godmode/agentes/collection_manager.php:153
msgid "No colections"
msgstr ""
msgstr "Sin colecciones"
#: ../../enterprise_bk/godmode/agentes/collection_manager.php:160
#: ../../enterprise_bk/godmode/agentes/inventory_manager.php:230
@ -9170,7 +9170,7 @@ msgstr "Imposible crear la colección"
#: ../../enterprise_bk/godmode/agentes/collections.data.php:127
msgid "Another collection with the same short name"
msgstr ""
msgstr "Otra colección con el mismo nombre corto"
#: ../../enterprise_bk/godmode/agentes/collections.data.php:143
#: ../../enterprise/godmode/agentes/collections.data.php:148
@ -10225,7 +10225,7 @@ msgstr "Segundos"
#: ../../enterprise_bk/godmode/setup/setup.php:62
#: ../../enterprise/godmode/setup/setup.php:70
msgid "Last replication at"
msgstr "Ultima replicación a"
msgstr "Última replicación a"
#: ../../enterprise_bk/godmode/setup/setup.php:66
#: ../../enterprise/godmode/setup/setup.php:88
@ -10255,27 +10255,27 @@ msgstr "Activado"
#: ../../enterprise_bk/godmode/setup/setup.php:72
#: ../../enterprise/godmode/setup/setup.php:104
msgid "Metaconsole DB host"
msgstr ""
msgstr "Host BD Metaconsola"
#: ../../enterprise_bk/godmode/setup/setup.php:76
#: ../../enterprise/godmode/setup/setup.php:111
msgid "Metaconsole DB name"
msgstr ""
msgstr "Nombre BD Metaconsola"
#: ../../enterprise_bk/godmode/setup/setup.php:80
#: ../../enterprise/godmode/setup/setup.php:118
msgid "Metaconsole DB user"
msgstr ""
msgstr "Usuario BD Metaconsola"
#: ../../enterprise_bk/godmode/setup/setup.php:84
#: ../../enterprise/godmode/setup/setup.php:125
msgid "Metaconsole DB password"
msgstr ""
msgstr "Password BD Metaconsola"
#: ../../enterprise_bk/godmode/setup/setup.php:88
#: ../../enterprise/godmode/setup/setup.php:132
msgid "Metaconsole DB port"
msgstr ""
msgstr "Puerto BD Metaconsola"
#: ../../enterprise_bk/godmode/setup/setup.php:92
#: ../../enterprise/godmode/setup/setup.php:81
@ -12926,7 +12926,7 @@ msgstr "Dashboard"
#: ../../enterprise_bk/operation/menu.php:88
#: ../../enterprise/operation/menu.php:88
msgid "Main dashboard"
msgstr ""
msgstr "Cuadro de mando principal"
#: ../../enterprise_bk/operation/menu.php:89
#: ../../enterprise/operation/menu.php:89
@ -13037,7 +13037,7 @@ msgstr "Exportar a CSV"
#: ../../enterprise_bk/operation/log/log_viewer.php:335
#: ../../enterprise/operation/log/log_viewer.php:340
msgid "The start date cannot be greater than the end date"
msgstr ""
msgstr "La fecha de inicio no puede ser después que la fecha de finalización"
#: ../../enterprise_bk/operation/log/log_viewer.php:413
#: ../../enterprise_bk/operation/inventory/inventory.php:248
@ -13312,12 +13312,12 @@ msgstr "Procesar"
#: ../../enterprise_bk/operation/agentes/networkmap_enterprise.editor.php:345
#: ../../enterprise/operation/agentes/networkmap_enterprise.editor.php:345
msgid "Save networkmap"
msgstr "Guardar networkmap"
msgstr "Guardar mapa de red"
#: ../../enterprise_bk/operation/agentes/networkmap_enterprise.editor.php:351
#: ../../enterprise/operation/agentes/networkmap_enterprise.editor.php:351
msgid "Update networkmap"
msgstr "Actualizar networkmap"
msgstr "Actualizar mapa de red"
#: ../../enterprise_bk/operation/agentes/networkmap_enterprise.editor.php:390
#: ../../enterprise/operation/agentes/networkmap_enterprise.editor.php:390
@ -13332,7 +13332,7 @@ msgstr "Error al procesar mapa"
#: ../../enterprise_bk/operation/agentes/agent_inventory.php:56
#: ../../enterprise/operation/agentes/agent_inventory.php:56
msgid "This agent has not modules inventory"
msgstr "Este agente no tiene módulos de inventario."
msgstr "Este agente no tiene módulos de inventario"
#: ../../enterprise_bk/operation/agentes/agent_inventory.php:159
#: ../../enterprise_bk/operation/agentes/agent_inventory.php:160
@ -13646,7 +13646,7 @@ msgstr "Pantalla completa"
#: ../../enterprise_bk/operation/agentes/networkmap_enterprise.view.php:1130
#: ../../enterprise/operation/agentes/networkmap_enterprise.view.php:1130
msgid "List of networkmap Enterprise"
msgstr ""
msgstr "Lista de mapas de red Enterprise"
#: ../../enterprise_bk/operation/agentes/networkmap_enterprise.view.php:1134
#: ../../enterprise/operation/agentes/networkmap_enterprise.view.php:1134
@ -13876,7 +13876,7 @@ msgstr "Licencia inválida"
#: ../../enterprise/load_enterprise.php:319
msgid "Please contact Artica at info@artica.es for a valid licence."
msgstr ""
"Por favor contacte con nosotros en info@artica.es para una licencia válida"
"Por favor contacte con Ártica en info@artica.es para una licencia válida."
#: ../../enterprise_bk/load_enterprise.php:309
#: ../../enterprise/load_enterprise.php:321
@ -13888,7 +13888,7 @@ msgstr "O desactive Pandora FMS Enterprise"
#: ../../enterprise/load_enterprise.php:423
#: ../../enterprise/load_enterprise.php:614
msgid "Request new licence"
msgstr "Solicitar nueva licencia"
msgstr "Solicitar una nueva licencia"
#: ../../enterprise_bk/load_enterprise.php:445
#: ../../enterprise/load_enterprise.php:471
@ -13934,12 +13934,12 @@ msgstr "Renovar"
#: ../../enterprise_bk/load_enterprise.php:658
msgid "Activate licence"
msgstr "Activar licencia"
msgstr "Activar la licencia"
#: ../../enterprise_bk/load_enterprise.php:659
#: ../../enterprise/load_enterprise.php:698
msgid "Your <b>request key</b> is:"
msgstr "Tu <b>Request key</b> es:"
msgstr "Su <b> clave </b> es:"
#: ../../enterprise_bk/load_enterprise.php:661
#: ../../enterprise/load_enterprise.php:700
@ -13948,8 +13948,8 @@ msgid ""
"You can activate it manually <a href=\"%s\" target=\"_blank\">here</a> or "
"automatically filling the form below:"
msgstr ""
"Puede activarla manualmente <a href=\"%s\" target=\"_blank\">aquí</a> o "
"automáticamente, si rellena el siguiente formulario"
"Lo puede activar manualmente <a href=\"%s\" target= \"_blank\"> aqui </a> o "
"automáticamente rellenando el siguiente formulario:"
#: ../../enterprise_bk/load_enterprise.php:666
#: ../../enterprise/load_enterprise.php:705
@ -13964,14 +13964,14 @@ msgstr "Contacto:"
#: ../../enterprise_bk/load_enterprise.php:674
#: ../../enterprise/load_enterprise.php:713
msgid "Auth Key:"
msgstr "Auth key:"
msgstr "Clave de autenticación"
#: ../../enterprise_bk/load_enterprise.php:681
#: ../../enterprise_bk/load_enterprise.php:697
#: ../../enterprise/load_enterprise.php:720
#: ../../enterprise/load_enterprise.php:736
msgid "Online validation"
msgstr "Validación online"
msgstr "Validación en línea"
#: ../../enterprise_bk/load_enterprise.php:690
#: ../../enterprise/load_enterprise.php:729
@ -13981,7 +13981,7 @@ msgstr "ERROR:"
#: ../../enterprise_bk/load_enterprise.php:690
#: ../../enterprise/load_enterprise.php:729
msgid "When connecting to Artica server."
msgstr "Al conectar al servidor de Artica"
msgstr "Cuando se conecta al servidor de Ártica."
#: ../../enterprise_bk/meta/agentsearch.php:26
#: ../../enterprise_bk/meta/general/logon_ok.php:15
@ -14419,7 +14419,7 @@ msgstr ""
#: ../../enterprise/meta/general/footer.php:26
#, php-format
msgid "&reg; Ártica soluciones Pandora FMS %s - Build %s"
msgstr ""
msgstr "&reg; Ártica soluciones Pandora FMS %s - Build %s"
#: ../../enterprise_bk/meta/general/footer.php:27 ../../general/footer.php:32
#: ../../enterprise/meta/general/footer.php:27
@ -14891,7 +14891,7 @@ msgstr "Más eventos"
#: ../../enterprise/meta/advanced/metasetup.consoles.php:83
#: ../../enterprise/meta/advanced/metasetup.consoles.php:126
msgid "Could not be create, duplicated server name."
msgstr "No pudo ser creado, nombre del servidor duplicado."
msgstr "No puede ser creado, el nombre del servidor está duplicado"
#: ../../enterprise_bk/meta/advanced/metasetup.consoles.php:167
#: ../../operation/events/events.php:776
@ -15050,7 +15050,7 @@ msgstr "No se puede mover"
#: ../../enterprise_bk/meta/advanced/agents_setup.move_agents.php:124
#: ../../enterprise/meta/advanced/agents_setup.move_agents.php:124
msgid "Move Agents"
msgstr ""
msgstr "Mover Agentes"
#: ../../enterprise_bk/meta/advanced/agents_setup.move_agents.php:137
#: ../../enterprise/meta/advanced/agents_setup.move_agents.php:137
@ -15077,7 +15077,7 @@ msgstr ""
#: ../../enterprise_bk/meta/advanced/agents_setup.move_agents.php:155
#: ../../enterprise/meta/advanced/agents_setup.move_agents.php:155
msgid "Create group if doesn’t exist in destination"
msgstr ""
msgstr "Crear grupo si no existe en destino"
#: ../../enterprise_bk/meta/advanced/agents_setup.move_agents.php:155
#: ../../enterprise/meta/advanced/agents_setup.move_agents.php:155
@ -16138,7 +16138,7 @@ msgstr "(Error ID Duplicado (%d) ) "
#: ../../enterprise/meta/advanced/synchronizing.group.php:175
#: ../../enterprise/meta/advanced/synchronizing.group.php:176
msgid "Open for more details"
msgstr "Abrir para más detalles"
msgstr "Abrir para obtener más detalles"
#: ../../enterprise_bk/meta/advanced/synchronizing.group.php:166
#: ../../enterprise/meta/advanced/synchronizing.group.php:166
@ -16157,14 +16157,14 @@ msgstr "Error actualizando %s grupos"
#: ../../enterprise/meta/advanced/synchronizing.group.php:188
#: ../../enterprise/meta/advanced/synchronizing.group.php:189
msgid "Open for more details in creation"
msgstr "Abrir para más detalles en la creación"
msgstr "Abrir para obtener más detalles de creación"
#: ../../enterprise_bk/meta/advanced/synchronizing.group.php:194
#: ../../enterprise_bk/meta/advanced/synchronizing.group.php:195
#: ../../enterprise/meta/advanced/synchronizing.group.php:194
#: ../../enterprise/meta/advanced/synchronizing.group.php:195
msgid "Open for more details in update"
msgstr "Abrir para más detalles en la actualización"
msgstr "Abrir para obtener más detalles de actualización"
#: ../../enterprise_bk/meta/advanced/synchronizing.group.php:198
#: ../../enterprise/meta/advanced/synchronizing.group.php:198
@ -16181,7 +16181,7 @@ msgstr "Creados/actualizados grupos %s/%s"
#: ../../enterprise_bk/meta/advanced/synchronizing.group.php:217
#: ../../enterprise/meta/advanced/synchronizing.group.php:217
msgid "None update or create group"
msgstr "Ninguna actualización o grupo creado"
msgstr "Ninguna actualización o creación de grupo"
#: ../../enterprise_bk/meta/advanced/synchronizing.group.php:227
#: ../../enterprise/meta/advanced/synchronizing.group.php:227
@ -16674,12 +16674,13 @@ msgstr "%s Módulos eliminados"
#: ../../enterprise/meta/include/functions_wizard_meta.php:2444
msgid ""
"There was an error creating the alerts, the operation has been cancelled ."
msgstr "Hubo un error creando las alertas, la operación ha sido cancelada."
msgstr ""
"Ha habido un error creando las alertas, la operación ha sido cancelada."
#: ../../enterprise_bk/meta/include/functions_wizard_meta.php:2475
#: ../../enterprise/meta/include/functions_wizard_meta.php:2475
msgid "Module successfully added."
msgstr "Módulo añadido con éxito"
msgstr "Módulo añadido con éxito."
#: ../../enterprise_bk/meta/include/functions_wizard_meta.php:2547
#: ../../enterprise_bk/meta/include/functions_wizard_meta.php:2636
@ -16740,12 +16741,12 @@ msgstr "No hay mapa de red definido."
#: ../../enterprise_bk/meta/include/functions_networkmap_meta.php:411
#: ../../enterprise/meta/include/functions_networkmap_meta.php:411
msgid "Successful update the networkmap."
msgstr "Networkmaps actualizados correctamente"
msgstr "Mapa de red actualizado correctamente"
#: ../../enterprise_bk/meta/include/functions_networkmap_meta.php:412
#: ../../enterprise/meta/include/functions_networkmap_meta.php:412
msgid "Unsuccessful update the networkmap."
msgstr "El nerworkmap no se ha podido actualizar"
msgstr "El mapa de red no se ha podido actualizar"
#: ../../enterprise_bk/meta/include/functions_networkmap_meta.php:424
#: ../../enterprise/meta/include/functions_networkmap_meta.php:424
@ -17611,7 +17612,7 @@ msgid ""
"page."
msgstr ""
"Para añadir más elementos, haga clic en \"<em>Add widgets</em>\" en la parte "
"superior de esta página"
"superior de esta página."
#: ../../enterprise_bk/dashboard/widgets/example.php:38
#: ../../enterprise_bk/dashboard/widgets/example.php:40
@ -17655,8 +17656,8 @@ msgid ""
"The user doesn't have permission to read agents. Please contact with your "
"pandora administrator."
msgstr ""
"El usuario no tiene permisos para leer agentes. Por favor contacte con su "
"administrador de Pandora."
"El usuario no tiene permiso para leer los agentes. Por favor contacte con su "
"administrador de Pandora"
#: ../../enterprise_bk/dashboard/widgets/custom_graph.php:24
#: ../../enterprise/dashboard/widgets/custom_graph.php:24
@ -17894,7 +17895,7 @@ msgstr "Elementos"
#: ../../enterprise/dashboard/widgets/top_n.php:104
msgid ""
"Please could you fill the widget data previous to filling the list items."
msgstr "Por favor, rellene el Widget de datos antes de la lista de items"
msgstr "Por favor, rellene el Widget de datos antes de la lista de items."
#: ../../enterprise_bk/dashboard/widgets/top_n.php:110
#: ../../enterprise_bk/dashboard/widgets/top_n.php:293
@ -18822,7 +18823,7 @@ msgstr "Cumplimiento de SLA por días"
#: ../../enterprise/include/functions_reporting.php:1310
#: ../../enterprise/include/functions_reporting_pdf.php:1842
msgid "Summary of SLA Failures"
msgstr ""
msgstr "Resumen de los Fallos de SLA"
#: ../../enterprise_bk/include/functions_reporting.php:1243
#: ../../enterprise_bk/include/functions_reporting.php:1839
@ -18951,19 +18952,20 @@ msgstr "Las siguientes paradas planificadas han modificado este SLA"
#: ../../enterprise/include/functions_reporting.php:2248
#: ../../enterprise/include/functions_reporting.php:3500
msgid "This item is affected by a malformed planned downtime"
msgstr "Este elemento está afectado por una parada planificada malformada"
msgstr "A este elemento le afecta una parada planificada mal formada"
#: ../../enterprise_bk/include/functions_reporting.php:2164
#: ../../enterprise_bk/include/functions_reporting.php:3410
#: ../../enterprise/include/functions_reporting.php:2249
#: ../../enterprise/include/functions_reporting.php:3501
msgid "Go to the planned downtimes section to solve this"
msgstr "Vaya a la seccion de paradas planificadas para solucionar esto"
msgstr ""
"Ir a la sección de paradas planificadas para solucionar este problema"
#: ../../enterprise_bk/include/functions_reporting.php:2691
#: ../../enterprise/include/functions_reporting.php:2778
msgid "There are no SLAs defined."
msgstr ""
msgstr "No hay SLAs definidos."
#: ../../enterprise_bk/include/functions_reporting.php:2869
#: ../../enterprise_bk/include/functions_reporting.php:3525
@ -19012,12 +19014,12 @@ msgstr "Obtener archivo PDF"
#: ../../enterprise_bk/include/ajax/metaconsole.ajax.php:42
#: ../../enterprise/include/ajax/metaconsole.ajax.php:42
msgid "Error accesing to API, auth error."
msgstr "Error accediendo a la API, error de autenticación."
msgstr "Error al acceder a la API. Error de autenticación."
#: ../../enterprise_bk/include/ajax/metaconsole.ajax.php:46
#: ../../enterprise/include/ajax/metaconsole.ajax.php:46
msgid "Error accesing to API."
msgstr "Error accediendo a la API"
msgstr "Error al acceder a la API"
#: ../../enterprise_bk/include/ajax/metaconsole.ajax.php:57
#: ../../enterprise/include/ajax/metaconsole.ajax.php:61
@ -19611,7 +19613,7 @@ msgstr "Nombre de nodo ficticio"
#: ../../enterprise/include/functions_networkmap_enterprise.php:1554
#: ../../enterprise/include/functions_networkmap_enterprise.php:1694
msgid "Networkmap to link"
msgstr "Enlace a networkmap"
msgstr "Enlace a mapa de red"
#: ../../enterprise_bk/include/functions_networkmap_enterprise.php:1560
#: ../../enterprise/include/functions_networkmap_enterprise.php:1560
@ -20009,7 +20011,7 @@ msgstr "Peso Ok"
#: ../../enterprise_bk/include/functions_services.php:1120
#: ../../enterprise/include/functions_services.php:1133
msgid "This element should be deleted"
msgstr "Este elemento debería ser eliminado."
msgstr "Este elemento debería ser borrado"
#: ../../enterprise_bk/include/functions_services.php:1184
#: ../../operation/agentes/status_monitor.php:1292
@ -20984,12 +20986,12 @@ msgstr "Etiquetas de modulos"
#: ../../enterprise_bk/extensions/check_acls.php:188
#: ../../enterprise/extensions/check_acls.php:188
msgid "ACL module tags for the modules in this agent"
msgstr "Etiquetas del módulo ACL para los módulos en este agente"
msgstr "Etiquetas del módulo de ACL para los módulos de este agente"
#: ../../enterprise_bk/extensions/check_acls.php:198
#: ../../enterprise/extensions/check_acls.php:198
msgid "Only admin users can see this section."
msgstr "Solo usuarios administradores pueden ver esta sección."
msgstr "Solo los usuarios administradores pueden ver esta sección."
#: ../../enterprise_bk/extensions/check_acls.php:202
#: ../../enterprise/extensions/check_acls.php:202
@ -21600,7 +21602,7 @@ msgstr "Ésta es su última actividad en la consola de Pandora FMS"
#: ../../general/firts_task/collections.php:6
msgid "There are no collections defined yet."
msgstr ""
msgstr "No hay colecciones definidas todavía."
#: ../../general/firts_task/collections.php:10
#: ../../general/firts_task/tags.php:10
@ -21636,15 +21638,31 @@ msgid ""
"can see on \n"
"\t\t the picture below. "
msgstr ""
"Una colección de archivos es un grupo de archivos (ej: scripts o ejecutable) "
"los cuales son \n"
"\t\t automáticamente copiados a un directorio específico del agente (bajo "
"Windows o UNIX). Las colecciones de archivos permiten ser propagadas\n"
"\t\t junto con las políticas con el fin de ser utilizado por un grupo de "
"agentes, utilizando un \"paquete\" de scripts y módulos que los utilizan.\n"
"\t\t lo primero nos enteramos de cómo utilizar las colecciones de archivos "
"en la vista del agente, cómo llevarla a cabo de forma manual, agente por "
"agente, sin necesidad de utilizar las colecciones,\n"
"\t\t y hacer lo mismo usando políticas. Nuestra primera tarea es organizar "
"una compilación de archivos. Para hacer esto, por favor vaya al "
"administrador \n"
"\t\t de agentes. Posteriormente, vamos a ver una 'sub opción' llamada "
"'Colecciones'. Por favor pinche en ella para crear una nueva colección como "
"puede ver en \n"
"\t\t la imagen de abajo. "
#: ../../general/firts_task/map_builder.php:6
msgid "There are no visual console defined yet."
msgstr ""
msgstr "No hay consola visual definida todavía."
#: ../../general/firts_task/map_builder.php:13
#: ../../general/firts_task/map_builder.php:20
msgid "Create Visual Console"
msgstr ""
msgstr "Crear Consola Viual"
#: ../../general/firts_task/map_builder.php:14
#: ../../general/firts_task/custom_fields.php:17
@ -21664,10 +21682,20 @@ msgid ""
"</strong>\n"
"\t\ttype. You can define your own customized recon script."
msgstr ""
"La definición de la Tarea Recon de Pandora FMS es usada para encontrar "
"nuevos elementos en el mapa de red. \n"
"\t\t Si detecta algún elemento, lo añadirá a la monitorización, y si el "
"elemento ya estaba siendo monitorizado, entonces lo \n"
"\t\t ignorará o actualizará su información. Hay tres tipos de detección: "
"Basado en <strong id=\"fuerte\"> ICMP </strong>(pings), \n"
"\t\t <strong id=\"fuerte\">SNMP</strong> (detectando la topología de las "
"redes y sus interfaces), y otro tipo <strong id=\"fuerte\"> personalizado. "
"</strong>\n"
"\t\t Puede definir su propio script recon personalizado."
#: ../../general/firts_task/incidents.php:8
msgid "There are no incidents defined yet."
msgstr ""
msgstr "No hay incidentes definidos todavía."
#: ../../general/firts_task/incidents.php:13
#: ../../godmode/agentes/configurar_agente.php:389
@ -21700,24 +21728,39 @@ msgid ""
"information and files.\n"
"\t\t"
msgstr ""
"Además de los datos recibidos y procesados para monitorizar sistemas o "
"aplicaciones, \n"
"\t\t\ttambién está obligado a monitorizar posibles incidentes los cuales "
"podrían tener lugar en esos sistemas con el proceso de monitorización del "
"sistema.\n"
"\t\t\tPara ello, el equipo de Pandora FMS ha diseñado un gestor de "
"incidentes con el cual cualquier usuario es capaz de abrir incidentes, \n"
"\t\t\texplicando que ha sucedido en la red y actualizarlos con comentarios y "
"archivos en cualquier momento que sea necesario.\n"
"\t\t\tEste sistema permite a los usuarios trabajar como un equipo, junto con "
"diferentes roles y sistemas de work-flow que permite a un incidente ser \n"
"\t\t\tmovido de un grupo a otro, y que los miembros de los diferentes grupos "
"y personas puedan trabajar en el mismo incidente, compartiendo información y "
"archivos.\n"
"\t\t"
#: ../../general/firts_task/custom_fields.php:8
msgid "There are no custom fields defined yet."
msgstr ""
msgstr "No hay campos personalizados definidos todavía."
#: ../../general/firts_task/custom_fields.php:13
#: ../../general/firts_task/custom_graphs.php:13
msgid "Custom Graphs"
msgstr ""
msgstr "Gráficos Personalizados"
#: ../../general/firts_task/custom_fields.php:16
#: ../../general/firts_task/custom_fields.php:23
msgid "Create Custom Fields"
msgstr ""
msgstr "Crear Campos Personalizados"
#: ../../general/firts_task/planned_downtime.php:6
msgid "There are no planned downtime defined yet."
msgstr ""
msgstr "No hay tiempo de inactividad planificado aún definido."
#: ../../general/firts_task/planned_downtime.php:10
#: ../../godmode/agentes/planned_downtime.editor.php:40
@ -21728,7 +21771,7 @@ msgstr "Parada de servicio planificada"
#: ../../general/firts_task/planned_downtime.php:13
#: ../../general/firts_task/planned_downtime.php:19
msgid "Create Planned Downtime"
msgstr ""
msgstr "Crear tiempo de inactividad planificado"
#: ../../general/firts_task/planned_downtime.php:14
msgid ""
@ -21740,10 +21783,17 @@ msgid ""
"\t\t\t\t\t\taccount for most of the metrics or types of reports, because the "
"agents don't contain any data within those intervals. "
msgstr ""
"Pandora FMS contiene un sistema de tiempo de inactividad planificado. \n"
"\t\t\t\t\t\tEste sistema fue diseñado para desactivar las alertas en los "
"intervalos cada vez que hay tiempo de inactividad desactivando el agente.\n"
"\t\t\t\t\t\tSi un agente está desactivado, no recoge información. En el "
"tiempo de inactividad, los intervalos de inactividad no se tienen \n"
"\t\t\t\t\t\t en cuenta para la mayoría de las métricas o tipo de informes, "
"porque el agente no contiene datos en esos intervalos. "
#: ../../general/firts_task/tags.php:6
msgid "There are no tags defined yet."
msgstr ""
msgstr "No hay etiquetas definidas todavía."
#: ../../general/firts_task/tags.php:13 ../../general/firts_task/tags.php:18
msgid "Create Tags"
@ -21758,12 +21808,18 @@ msgid ""
"\t\t\t\t\t\t\t\tThe user's access can be limited to modules with certain "
"tags in this way. "
msgstr ""
"Desde la versión 5 y superior de Pandora FMS, el acceso a los módulo puede "
"ser configurado por etiquetas del sistema.\n"
"\t\t\t\t\t\t\t\tLas etiquetas son configuradas en el sistema y pueden ser "
"asignadas a los módulos elegidos. \n"
"\t\t\t\t\t\t\t\tDe esta manera, el acceso de los usuarios puede estar "
"limitado a módulos con ciertas etiquetas. "
#: ../../general/firts_task/snmp_filters.php:6
#: ../../general/firts_task/recon_view.php:6
#: ../../general/firts_task/fields_manager.php:6
msgid "There are no recon task defined yet."
msgstr ""
msgstr "No hay tarea definida recon todavía."
#: ../../general/firts_task/snmp_filters.php:13
#: ../../general/firts_task/snmp_filters.php:20
@ -21776,12 +21832,12 @@ msgstr "Crear tarea de descubrimiento"
#: ../../general/firts_task/service_list.php:6
msgid "There are no services defined yet."
msgstr ""
msgstr "No hay servicios definidos todavía."
#: ../../general/firts_task/service_list.php:13
#: ../../general/firts_task/service_list.php:21
msgid "Create Services"
msgstr ""
msgstr "Crear Servicios"
#: ../../general/firts_task/service_list.php:14
msgid ""
@ -21798,19 +21854,32 @@ msgid ""
"\t\t\t\t\t\tHis company consists of three big departments: A management, an "
"on-line shop and support."
msgstr ""
"Un servicio es una forma de agrupar tus recursos de IT basados en sus "
"funcionalidades. \n"
"\t\t\t\t\tUn servicio podría ser por ejemplo tu página web, tu sistema CRM, "
"tu aplicación de soporte, o incluso tus impresoras.\n"
"\t\t\t\t\t Los servicios son grupos lógicos en los que puedes incluir hosts, "
"routers, switches, firewalls, CRMs, ERPs, páginas web y muchos otros "
"servicios. \n"
"\t\t\t\t\t Con el siguiente ejemplo, verás más claramente que es un "
"servicio:\n"
"\t\t\t\t\t\tUn fabricante de chips vende ordenadores por su página web por "
"todo el mundo. \n"
"\t\t\t\t\t\tSu empresa consiste en tres grandes departamentos: dirección, "
"tienda online y soporte."
#: ../../general/firts_task/custom_graphs.php:8
msgid "There are no custom graphs defined yet."
msgstr ""
msgstr "No hay gráficos personalizados definidos todavía."
#: ../../general/firts_task/custom_graphs.php:16
#: ../../general/firts_task/custom_graphs.php:23
msgid "Create Custom Graph"
msgstr ""
msgstr "Crear Gráfico Personalizado"
#: ../../general/firts_task/network_map.php:8
msgid "There are no network map defined yet."
msgstr ""
msgstr "No hay más de red definidos todavía."
#: ../../general/firts_task/network_map.php:15
msgid "Network Map"
@ -21819,7 +21888,7 @@ msgstr "Mapa de red"
#: ../../general/firts_task/network_map.php:18
#: ../../general/firts_task/network_map.php:34
msgid "Create Network Map"
msgstr ""
msgstr "Crear Mapa de Red"
#: ../../general/firts_task/network_map.php:19
msgid ""
@ -21829,26 +21898,31 @@ msgid ""
"\t\t\t\t\t\t\t\tThere are three types of network maps:\n"
"\t\t\t"
msgstr ""
"Existe también una versión open-source del mapa de red. \n"
"\t\t\t\t\t\t\t\tEsta funcionalidad permite visualizar gráficamente los nodos "
"y sus relaciones, agentes, módulos y grupos disponibles para el usuario. \n"
"\t\t\t\t\t\t\t\tHay tres tipos de mapas de red:\n"
"\t\t\t"
#: ../../general/firts_task/network_map.php:23
msgid "Topology Map"
msgstr ""
msgstr "Mapa de topología"
#: ../../general/firts_task/network_map.php:24
msgid "Group Map"
msgstr ""
msgstr "Mapa de gupo"
#: ../../general/firts_task/network_map.php:25
msgid "Radial Map (User without strict user)"
msgstr ""
msgstr "Mapa radial (sin usuario estricto)"
#: ../../general/firts_task/network_map.php:26
msgid "Dinamic Map"
msgstr ""
msgstr "Mapa dinámico"
#: ../../general/firts_task/network_map.php:27
msgid "Policy Map (Only Enterprise version)"
msgstr ""
msgstr "Mapa de políticas (Solo versión Enterprise)"
#: ../../general/footer.php:30 ../../mobile/include/functions_web.php:81
#: ../../mobile/include/ui.class.php:257
@ -22452,24 +22526,24 @@ msgstr "Editar etiqueta"
#: ../../godmode/reporting/visual_console_builder.editor.php:142
#: ../../godmode/reporting/visual_console_builder.editor.php:147
msgid "Action in progress"
msgstr ""
msgstr "Acción en curso"
#: ../../godmode/reporting/visual_console_builder.editor.php:138
msgid "Loading in progress"
msgstr ""
msgstr "Carga en curso"
#: ../../godmode/reporting/visual_console_builder.editor.php:143
msgid "Saving in progress"
msgstr ""
msgstr "Guardando en curso"
#: ../../godmode/reporting/visual_console_builder.editor.php:148
msgid "Deletion in progress"
msgstr ""
msgstr "Eliminando en curso"
#: ../../godmode/reporting/reporting_builder.list_items.php:312
#: ../../include/functions_custom_graphs.php:209
msgid "No items."
msgstr ""
msgstr "Sin artículos."
#: ../../godmode/reporting/reporting_builder.list_items.php:487
#: ../../godmode/reporting/reporting_builder.list_items.php:492
@ -24289,7 +24363,7 @@ msgstr "Plantillas de módulos"
#: ../../godmode/menu.php:102
msgid "Bulk operations"
msgstr ""
msgstr "Operaciones masivas"
#: ../../godmode/menu.php:137 ../../godmode/alerts/alert_special_days.php:43
msgid "Special days list"
@ -34201,7 +34275,7 @@ msgstr "Informe del grupo"
#: ../../include/functions_reporting.php:2141
msgid "Event Report Agent"
msgstr "Evento Agente de Informe"
msgstr "Informe de Eventos de Agentes"
#: ../../include/functions_reporting.php:2284
msgid "Database Serialized"
@ -36161,3 +36235,99 @@ msgstr ""
#: ../../extensions/pandora_logs.php:83
msgid "System logfiles"
msgstr "Logs sistema"
#~ msgid "No incidents match your search filter"
#~ msgstr "Ningún incidente coincide con su filtro de búsqueda"
#~ msgid "There are no messages"
#~ msgstr "No hay mensajes"
#~ msgid "R"
#~ msgstr "R"
#~ msgid "Edit remote config"
#~ msgstr "Editar configuración remota"
#~ msgid "Items filter"
#~ msgstr "Filtro de items"
#~ msgid "Remote agent configuration"
#~ msgstr "Configuración remota del agente"
#~ msgid "Massive alerts addition"
#~ msgstr "Creación de alertas de forma masiva"
#~ msgid "Massive alerts deletion"
#~ msgstr "Borrado masivo de alertas"
#~ msgid "Massive alert actions addition"
#~ msgstr "Creación de acciones de forma masiva"
#~ msgid "Massive alert actions deletion"
#~ msgstr "Borrado masivo de acciones"
#~ msgid "Massive alert enable/disable"
#~ msgstr "Activado/Desactivado masivo de alertas"
#~ msgid "Massive alert setting standby"
#~ msgstr "Establecimiento masivo de alertas en standby"
#~ msgid "Massive agents edition"
#~ msgstr "Edición masiva de agentes"
#~ msgid "Massive agents deletion"
#~ msgstr "Borrado masivo de agentes"
#~ msgid "Massive profiles addition"
#~ msgstr "Agregado masivo de perfiles"
#~ msgid "Massive profiles deletion"
#~ msgstr "Borrado masivo de perfiles"
#~ msgid "Massive modules deletion"
#~ msgstr "Borrado masivo de módulos"
#~ msgid "Massive modules edition"
#~ msgstr "Edición masiva de módulos"
#~ msgid "Massive modules copy"
#~ msgstr "Copia de módulos masiva"
#, php-format
#~ msgid ""
#~ "This extension makes registration of server plugins more easy. Here you can "
#~ "upload a server plugin in Pandora FMS 3.x zipped format (.pspz). Please "
#~ "refer to documentation on how to obtain and use Pandora FMS Server "
#~ "Plugins.<br><br>You can get more plugins in our <a href='%s'>Public Resource "
#~ "Library</a>"
#~ msgstr ""
#~ "Esta extensión hace el registro de los plugins del servidor más fácil. "
#~ "Puedes descargar aqui un plugin del servidor en el formato zipp (.pspz) de "
#~ "Pandora FMS version 3x. Por favor, consulta la documentación acerca de como "
#~ "obtener y utilizar los plugins de servidor de Pandora FMS.<br><br> Puedes "
#~ "obtener más plugins en nuestro<a href='%s'>Public Resource Library</a>"
#~ msgid "Ping to "
#~ msgstr "Ping a "
#~ msgid "Empty graph"
#~ msgstr "Gráfica vacía"
#~ msgid "Time compare"
#~ msgstr "Comparación en el tiempo"
#~ msgid "Overlapped"
#~ msgstr "Solapado"
#~ msgid "Separated"
#~ msgstr "Separado"
#, php-format
#~ msgid "Deleted data above %d"
#~ msgstr "Los datos por encima %d han sido borrados"
#~ msgid "There are no defined graphs"
#~ msgstr "No existen gráficas definidas"
#~ msgid "Paginate module view"
#~ msgstr "Paginar vista de módulos"

View File

@ -145,7 +145,7 @@ h1#log_title {
font-size: 18px;
margin-bottom: 0px;
color: #FFF !important;
width:70%
width:54%
}
div#log_msg {
display: none;
@ -413,7 +413,7 @@ div#foot {
p.log_in {
color: #FFF !important;
padding: 0px 10px;
width:70%;
width:57%;
}
h1#log_f {
color: #c00;
@ -454,6 +454,12 @@ div#login_in, #login_f {
.version_login{
transform: rotate(36deg);
/* Old browser support */
-ms-transform: rotate(36deg); /* IE */
-moz-transform: rotate(36deg); /* FF */
-o-transform: rotate(36deg); /* Opera */
-webkit-transform: rotate(36deg); /* Safari and Chrome */
float: right;
margin-top: 18px;
width: 80px;
@ -2986,7 +2992,7 @@ table#policy_modules td * {
}
.databox.data td>img,.databox.data th>img, .databox.data td>div>a>img,
.databox.data td>span>img, .databox.data td>span>a>img,
.databox.data td>a>img {
.databox.data td>a>img, .databox.data td>form>a>img {
vertical-align: middle;
}
@ -3056,22 +3062,34 @@ table#policy_modules td * {
@-webkit-keyframes spinner {
0% {
-webkit-transform: rotate(0deg);
-ms-transform: rotate(0deg); /* IE */
-moz-transform: rotate(0deg); /* FF */
-o-transform: rotate(0deg); /* Opera */
-webkit-transform: rotate(0deg); /* Safari and Chrome */
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
-ms-transform: rotate(359deg); /* IE */
-moz-transform: rotate(359deg); /* FF */
-o-transform: rotate(359deg); /* Opera */
-webkit-transform: rotate(359deg); /* Safari and Chrome */
transform: rotate(359deg);
}
}
@keyframes spinner {
0% {
-webkit-transform: rotate(0deg);
-ms-transform: rotate(0deg); /* IE */
-moz-transform: rotate(0deg); /* FF */
-o-transform: rotate(0deg); /* Opera */
-webkit-transform: rotate(0deg); /* Safari and Chrome */
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
-ms-transform: rotate(359deg); /* IE */
-moz-transform: rotate(359deg); /* FF */
-o-transform: rotate(359deg); /* Opera */
-webkit-transform: rotate(359deg); /* Safari and Chrome */
transform: rotate(359deg);
}
}

View File

@ -41,6 +41,14 @@ if ($develop_bypass != 1) {
include ("install.php");
exit;
}
if (isset($_POST["rename_file"])){
$rename_file_install = (bool)$_POST["rename_file"];
if ($rename_file_install) {
$salida_rename = rename("/var/www/html/pandora_console/install.php", "/var/www/html/pandora_console/install_old.php");
}
}
// Check for installer presence
if (file_exists ("install.php")) {
$login_screen = 'error_install';
@ -118,6 +126,11 @@ $config["pure"] = (bool) get_parameter ("pure");
if (get_parameter ("refr"))
$config["refr"] = (int) get_parameter ("refr");
$delete_file = get_parameter("del_file");
if ($delete_file == 'yes_delete'){
$salida_delete = shell_exec('rm /var/www/html/pandora_console/install.php');
}
ob_start ();
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">' .
"\n";

View File

@ -62,8 +62,8 @@
<body>
<div style='height: 10px'>
<?php
$version = '6.0dev';
$build = '150724';
$version = '6.0RC1';
$build = '150812';
$banner = "v$version Build $build";
error_reporting(0);
@ -1228,9 +1228,15 @@ function install_step5() {
please change it both as soon as possible.</p>
<p>Don't forget to check <a href='http://pandorafms.com'>http://pandorafms.com</a>
for updates.
<p>Select if you want to rename '<i>install.php</i>'.</p>
<form method='post' action='index.php'>
<input type='submit' name='rn_file' value='Yes, rename the file'>
<input type='hidden' name='rename_file' value='1'>
</form>
<p><br><b><a id='access_pandora' href='index.php'>Click here to access to your Pandora FMS console</a>.</b>
</p>
</div>";
echo "</div>
<div id='foot_install'>
<i>Pandora FMS is an OpenSource Software project registered at

View File

@ -371,6 +371,10 @@ if ($pure) {
$url .= '&pure=' . $pure;
}
if ($free_search != ''){
$url .= '&free_search=' . $free_search;
}
// Filter form
if ($print_agent) {
if(defined('METACONSOLE')) {

View File

@ -124,7 +124,7 @@ if (!empty($result_groups)) {
echo "<tr>";
echo "<th style='width: 26px;'>" . __("Force") . "</th>";
echo "<th width='30%' style='min-width: 60px;'>" . __("Group") . "</th>";
echo "<th width='30%' style='min-width: 60px;'>" . __("Group") . "/" . __("Tags") . "</th>";
echo "<th width='10%' style='min-width: 60px;text-align:center;'>" . __("Total") . "</th>";
echo "<th width='10%' style='min-width: 60px;text-align:center;'>" . __("Unknown") . "</th>";
echo "<th width='10%' style='min-width: 60px;text-align:center;'>" . __("Not init") . "</th>";
@ -135,6 +135,7 @@ if (!empty($result_groups)) {
echo "<th width='10%' style='min-width: 60px;text-align:center;'>" . __("Critical") . "</th>";
echo "<th width='10%' style='min-width: 60px;text-align:center;'>" . __("Alert fired") . "</th>";
echo "</tr>";
foreach ($result_groups as $data) {
// Calculate entire row color
@ -150,14 +151,15 @@ if (!empty($result_groups)) {
$color_class = 'group_view_warn';
$status_image = ui_print_status_image ('agent_warning_ball.png', "", true);
}
elseif ($data["_monitors_ok_"] > 0) {
$color_class = 'group_view_ok';
$status_image = ui_print_status_image ('agent_ok_ball.png', "", true);
}
elseif (($data["_monitors_unknown_"] > 0) || ($data["_agents_unknown_"] > 0)) {
$color_class = 'group_view_unk';
$status_image = ui_print_status_image ('agent_no_monitors_ball.png', "", true);
}
elseif ($data["_monitors_ok_"] > 0) {
$color_class = 'group_view_ok';
$status_image = ui_print_status_image ('agent_ok_ball.png', "", true);
}
else {
$color_class = '';
$status_image = ui_print_status_image ('agent_no_data_ball.png', "", true);
@ -180,11 +182,11 @@ if (!empty($result_groups)) {
}
}
// Groupname
// Groupname and Tags
echo "<td>";
if (isset($data['_is_tag_'])) {
$deep = "";
$link = "";
$link = "<a href='index.php?sec=estado&sec2=operation/agentes/estado_agente&group_id=".$data['_id_']."'>";
} else {
$deep = groups_get_group_deep ($data['_id_']);
$link = "<a href='index.php?sec=estado&sec2=operation/agentes/estado_agente&group_id=".$data['_id_']."'>";
@ -201,6 +203,10 @@ if (!empty($result_groups)) {
else
echo $link . $group_name . "</a>";
if (isset($data['_is_tag_'])){
echo '<a>' . html_print_image("images/tag.png", true, array("border" => '0', "style" => 'width:18px;margin-left:5px', "title" => __('Tag'))) . '</a>' ;
}
echo "</td>";
// Total agents

View File

@ -157,8 +157,8 @@ if ($type_search != '0')
$user_info = users_get_user_by_id($config['id_user']);
$network_maps = db_get_all_rows_filter('tnetwork_map', $where);
if ($network_maps === false) {
$count_maps = db_get_all_rows_filter('tnetwork_map');
if ($count_maps === false) {
require($config['homedir']."/general/firts_task/network_map.php");
}
else {

View File

@ -34,7 +34,7 @@ check_login ();
// Metaconsole connection to the node
$server_id = (int) get_parameter("server");
if ($config["metaconsole"] && !empty($server_id)) {
if (is_metaconsole() && !empty($server_id)) {
$server = metaconsole_get_connection_by_id($server_id);
// Error connecting
@ -76,10 +76,11 @@ $id = get_parameter('id');
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Pandora FMS Graph (<?php echo modules_get_agentmodule_agent_name ($id) . ' - ' . $label; ?>)</title>
<link rel="stylesheet" href="../../include/styles/pandora_minimal.css" type="text/css" />
<script type='text/javaScript' src='../../include/javascript/calendar.js'></script>
<link rel="stylesheet" href="../../include/styles/jquery-ui-1.10.0.custom.css" type="text/css" />
<script type='text/javascript' src='../../include/javascript/pandora.js'></script>
<script type='text/javascript' src='../../include/javascript/jquery-1.7.1.js'></script>
<script type='text/javascript' src='../../include/javascript/jquery-1.9.0.js'></script>
<script type='text/javascript' src='../../include/javascript/jquery.pandora.js'></script>
<script type='text/javascript' src='../../include/javascript/jquery.jquery-ui-1.10.0.custom.js'></script>
<script type='text/javascript'>
<!--
window.onload = function() {
@ -142,7 +143,8 @@ $id = get_parameter('id');
$width = get_parameter ("width", 555);
$height = get_parameter ("height", 245);
$label = get_parameter ("label", "");
$start_date = get_parameter ("start_date", date("Y-m-d"));
$start_date = get_parameter ("start_date", date("Y/m/d"));
$start_time = get_parameter ("start_time", date("H:i:s"));
$draw_events = get_parameter ("draw_events", 0);
$graph_type = get_parameter ("type", "sparse");
$zoom = get_parameter ("zoom", 1);
@ -168,13 +170,12 @@ $id = get_parameter('id');
echo "<script type='text/javascript'>window.resizeTo($width + 80, $height + 120);</script>";
}
$utime = get_system_time ();
$current = date("Y-m-d", $utime);
// Build date
$date = strtotime("$start_date $start_time");
$now = time();
if ($start_date != $current)
$date = strtotime($start_date);
else
$date = $utime;
if ($date > $now)
$date = $now;
$urlImage = ui_get_full_url(false, false, false, false);
@ -279,12 +280,13 @@ $id = get_parameter('id');
$data = array();
$data[0] = __('Begin date');
$data[1] = html_print_input_text ("start_date",
substr($start_date, 0, 10),'', 15, 255, true);
$data[1] .= html_print_image ("images/calendar_view_day.png",
true, array(
"onclick" => "scwShow(scwID('text-start_date'),this);",
"style" => 'vertical-align: bottom;'));
$data[1] = html_print_input_text ("start_date", $start_date,'', 10, 20, true);
$table->data[] = $data;
$table->rowclass[] = '';
$data = array();
$data[0] = __('Begin time');
$data[1] = html_print_input_text ("start_time", $start_time,'', 10, 10, true);
$table->data[] = $data;
$table->rowclass[] = '';
@ -407,6 +409,15 @@ $id = get_parameter('id');
</body>
</html>
<?php
// Echo the script tags of the datepicker and the timepicker
// Modify the user language cause the ui.datepicker language files use - instead _
$custom_user_language = str_replace('_', '-', $user_language);
ui_require_jquery_file("ui.datepicker-" . $custom_user_language, "include/javascript/i18n/", true);
ui_include_time_picker(true);
?>
<script>
$('#checkbox-time_compare_separated').click(function() {
$('#checkbox-time_compare_overlapped').removeAttr('checked');
@ -447,6 +458,24 @@ $id = get_parameter('id');
}
?>
// Add datepicker and timepicker
$("#text-start_date").datepicker({
dateFormat: "<?php echo DATE_FORMAT_JS; ?>"
});
$("#text-start_time").timepicker({
showSecond: true,
timeFormat: '<?php echo TIME_FORMAT_JS; ?>',
timeOnlyTitle: '<?php echo __('Choose time');?>',
timeText: '<?php echo __('Time');?>',
hourText: '<?php echo __('Hour');?>',
minuteText: '<?php echo __('Minute');?>',
secondText: '<?php echo __('Second');?>',
currentText: '<?php echo __('Now');?>',
closeText: '<?php echo __('Close');?>'
});
$.datepicker.setDefaults($.datepicker.regional["<?php echo $custom_user_language; ?>"]);
forced_title_callback();
$(window).ready(function() {

View File

@ -650,6 +650,22 @@ switch ($sortField) {
break;
}
break;
case 'data':
switch ($sort) {
case 'up':
$selectTimestampUp = $selected;
$order = array(
'field' => 'tagente_estado.datos',
'order' => 'ASC');
break;
case 'down':
$selectTimestampDown = $selected;
$order = array(
'field' => 'tagente_estado.datos',
'order' => 'DESC');
break;
}
break;
default:
$selectAgentNameUp = $selected;
$selectAgentNameDown = '';
@ -947,6 +963,10 @@ $table->align[8] = "left";
$table->head[9] = __('Data');
$table->align[9] = "left";
if ( defined ('METACONSOLE') ) {
$table->head[9] .= ' <a href="index.php?sec=estado&amp;sec2=operation/agentes/status_monitor&amp;refr=' . $refr . '&amp;modulegroup='.$modulegroup . '&amp;offset=' . $offset . '&amp;ag_group=' . $ag_group . '&amp;ag_freestring=' . $ag_freestring . '&amp;ag_modulename=' . $ag_modulename . '&amp;status=' . $status . $ag_custom_fields_params . '&amp;sort_field=data&amp;sort=up">' . html_print_image("images/sort_up.png", true, array("style" => $selectStatusUp, "alt" => "up")) . '</a>' .
'<a href="index.php?sec=estado&amp;sec2=operation/agentes/status_monitor&amp;refr=' . $refr . '&amp;modulegroup='.$modulegroup . '&amp;offset=' . $offset . '&amp;ag_group=' . $ag_group . '&amp;ag_freestring=' . $ag_freestring . '&amp;ag_modulename=' . $ag_modulename . '&amp;status=' . $status . $ag_custom_fields_params . '&amp;sort_field=data&amp;sort=down">' . html_print_image("images/sort_down.png", true, array("style" => $selectStatusDown, "alt" => "down")) . '</a>';
}
$table->head[10] = __('Timestamp');
if (! defined ('METACONSOLE')) {
@ -1209,8 +1229,8 @@ foreach ($result as $row) {
$data[8] = ui_print_module_warn_value($row['max_warning'],
$row['min_warning'], $row['str_warning'], $row['max_critical'],
$row['min_critical'], $row['str_critical']);
if (is_numeric($row["datos"])) {
if (is_numeric($row["datos"]) && !modules_is_string_type($row['module_type'])) {
if ( $config["render_proc"] ) {
switch($row["module_type"]) {
case 2:
@ -1221,9 +1241,9 @@ foreach ($result as $row) {
case 31:
if ( $row["datos"] >= 1 )
$salida ='OK';
$salida = $config["render_proc_ok"];
else
$salida = 'FAIL';
$salida = $config["render_proc_fail"];
break;
default:
$salida = format_numeric($row["datos"]);
@ -1236,7 +1256,7 @@ foreach ($result as $row) {
// Show units ONLY in numeric data types
if (isset($row["unit"])) {
$salida .= "&nbsp;" . '<i>'. io_safe_output($row["unit"]) . '</i>';
$salida .= "&nbsp;" . '<i>' . io_safe_output($row["unit"]) . '</i>';
$salida = ui_print_truncate_text($salida, 'agent_small', true, true, false, '[&hellip;]', 'font-size:7.5pt;');
}
}
@ -1272,7 +1292,26 @@ foreach ($result as $row) {
$sub_string = substr(io_safe_output($row["datos"]), 0, 12);
if ($module_value == $sub_string) {
$salida = $module_value;
$intDays = $module_value / 8640000;
$dias = $intDays - (integer)$intDays;
$intDays = (integer)$intDays;
$intHours = $dias * 24;
$Hours = $intHours - (integer)$intHours;
$intHours = (integer)$intHours;
$intMinutes = $Hours * 60;
$minutos = $intMinutes - (integer)$intMinutes;
$intMinutes = (integer)$intMinutes;
$intSeconds = $minutos * 60;
$ConvertSeconds = $intDays . " Days - ". $intHours ." Hours - ". $intMinutes . " Mins";
if ($ConvertSeconds) {
$salida = $ConvertSeconds;
}
else {
$salida = $module_value;
}
}
else {
//Fixed the goliat sends the strings from web
@ -1294,7 +1333,26 @@ foreach ($result as $row) {
if ($module_value == $sub_string) {
$salida = $module_value;
$intDays = $module_value / 8640000;
$dias = $intDays - (integer)$intDays;
$intDays = (integer)$intDays;
$intHours = $dias * 24;
$Hours = $intHours - (integer)$intHours;
$intHours = (integer)$intHours;
$intMinutes = $Hours * 60;
$minutos = $intMinutes - (integer)$intMinutes;
$intMinutes = (integer)$intMinutes;
$intSeconds = $minutos * 60;
$ConvertSeconds = $intDays . " Days - ". $intHours ." Hours - ". $intMinutes . " Mins";
if ($ConvertSeconds) {
$salida = $ConvertSeconds;
}
else {
$salida = $module_value;
}
}
else {
$salida = "<span " .

View File

@ -46,7 +46,8 @@ if (is_ajax ()) {
if ($get_agents_group_json) {
$id_group = (int) get_parameter('id_group');
$recursion = (int) get_parameter ('recursion', 0);
$custom_condition = get_parameter('custom_condition', '');
$id_os = get_parameter('id_os', '');
$agent_name = get_parameter('name', '');
$privilege = (string) get_parameter ('privilege', "AR");
// Is is possible add keys prefix to avoid auto sorting in js object conversion
@ -65,41 +66,46 @@ if (is_ajax ()) {
$groups = array_keys($groups_orig);
}
// Build filter
$filter = array();
$filter['id_grupo'] = $groups;
$filter = " WHERE id_grupo IN (" . implode(',', $groups) . ") ";
$filter .= io_safe_output($custom_condition);
if (!empty($id_os))
$filter['id_os'] = $id_os;
if (!empty($agent_name))
$filter['nombre'] = '%' . $agent_name . '%';
switch ($status_agents) {
case AGENT_STATUS_NORMAL:
$filter .=
" AND normal_count = total_count";
$filter[] = "(normal_count = total_count)";
break;
case AGENT_STATUS_WARNING:
$filter .=
" AND critical_count = 0 AND warning_count > 0";
$filter[] = "(critical_count = 0 AND warning_count > 0)";
break;
case AGENT_STATUS_CRITICAL:
$filter .=
" AND critical_count > 0";
$filter[] = "(critical_count > 0)";
break;
case AGENT_STATUS_UNKNOWN:
$filter .=
" AND critical_count = 0 AND warning_count = 0
AND unknown_count > 0";
$filter[] = "(critical_count = 0 AND warning_count = 0 AND unknown_count > 0)";
break;
case AGENT_STATUS_NOT_NORMAL:
$filter .= " AND normal_count <> total_count";
$filter[] = "(normal_count <> total_count)";
break;
case AGENT_STATUS_NOT_INIT:
$filter .= " AND notinit_count = total_count";
$filter[] = "(notinit_count = total_count)";
break;
}
$filter .= " ORDER BY nombre ASC";
$agents = db_get_all_rows_sql("SELECT id_agente, nombre
FROM tagente" . $filter);
$filter['order'] = "nombre ASC";
// Build fields
$fields = array('id_agente', 'nombre');
// Perform search
$agents = db_get_all_rows_filter('tagente', $filter, $fields);
if (empty($agents)) $agents = array();
// Add keys prefix
if ($keys_prefix !== "") {
if ($keys_prefix !== '') {
foreach ($agents as $k => $v) {
$agents[$keys_prefix . $k] = $v;
unset($agents[$k]);
@ -214,27 +220,47 @@ if (is_ajax ()) {
if ($get_agent_modules_json_for_multiple_agents) {
$idAgents = get_parameter('id_agent');
$custom_condition = get_parameter('custom_condition', '');
$module_types_excluded = get_parameter('module_types_excluded', array());
$module_name = (string) get_parameter('name');
$selection_mode = get_parameter('selection_mode', 'common');
$serialized = get_parameter('serialized', '');
$id_server = (int) get_parameter('id_server', 0);
$metaconsole_server_name = null;
if ($id_server != 0) {
if (!empty($id_server)) {
$metaconsole_server_name = db_get_value('server_name',
'tmetaconsole_setup', 'id', $id_server);
}
$filter = '1 = 1';
$all = (string)get_parameter('all', 'all');
switch ($all) {
default:
case 'all':
$enabled = '1 = 1';
$filter .= ' AND 1 = 1';
break;
case 'enabled':
$enabled = 'disabled = 0';
$filter .= ' AND t1.disabled = 0';
break;
}
if (!empty($module_types_excluded) && is_array($module_types_excluded))
$filter .= ' AND t1.id_tipo_modulo NOT IN (' . implode($module_types_excluded) . ')';
if (!empty($module_name)) {
switch ($config['dbtype']) {
case "mysql":
$filter .= " AND t1.nombre COLLATE utf8_general_ci LIKE '%$module_name%'";
break;
case "postgresql":
$filter .= " AND t1.nombre LIKE '%$module_name%'";
break;
case "oracle":
$filter .= " AND UPPER(t1.nombre) LIKE UPPER('%$module_name%')";
break;
}
}
if (is_metaconsole()) {
$result = array();
$nameModules = array();
@ -282,7 +308,14 @@ if (is_ajax ()) {
foreach ($array_reduced as $server_name => $id_agents) {
//Metaconsole db connection
$connection = metaconsole_get_connection($server_name);
// $server_name can be the server id (ugly hack, I know)
if (is_numeric($server_name)) {
$connection = metaconsole_get_connection_by_id($server_name);
}
else {
$connection = metaconsole_get_connection($server_name);
}
if (metaconsole_load_external_db($connection) != NOERR) {
continue;
}
@ -299,7 +332,7 @@ if (is_ajax ()) {
WHERE t2.delete_pending = 0
AND t1.nombre = t2.nombre
AND t2.id_agente IN (%s)) = (%d)',
$enabled, implode(',', $id_agents),
$filter, implode(',', $id_agents),
implode(',', $id_agents), count($id_agents));
$modules = db_get_all_rows_sql($sql);
@ -346,21 +379,22 @@ if (is_ajax ()) {
$result[$key] = $value;
}
asort($result);
}
else {
$sql = 'SELECT DISTINCT(nombre)
FROM tagente_modulo t1
WHERE ' . $enabled .
io_safe_output($custom_condition) . '
AND delete_pending = 0
AND id_agente IN (' . implode(',', $idAgents) . ')';
WHERE ' . $filter . '
AND t1.delete_pending = 0
AND t1.id_agente IN (' . implode(',', $idAgents) . ')';
if ($selection_mode == 'common') {
$sql .= ' AND (
SELECT count(nombre)
FROM tagente_modulo t2
WHERE delete_pending = 0 AND t1.nombre = t2.nombre
AND id_agente IN (' . implode(',', $idAgents) . ')) = (' . count($idAgents) . ')';
WHERE t2.delete_pending = 0
AND t1.nombre = t2.nombre
AND t2.id_agente IN (' . implode(',', $idAgents) . ')) = (' . count($idAgents) . ')';
}
$sql .= ' ORDER BY nombre';
@ -388,8 +422,34 @@ if (is_ajax ()) {
if ($get_agent_modules_json) {
$id_agent = (int) get_parameter ('id_agent');
$filter = io_safe_output((string) get_parameter ('filter'));
$fields = io_safe_output((string) get_parameter ('fields'));
// Use -1 as not received
$disabled = (int) get_parameter ('disabled', -1);
$delete_pending = (int) get_parameter ('delete_pending', -1);
// Use 0 as not received
$id_tipo_modulo = (int) get_parameter ('id_tipo_modulo', 0);
// Filter
$filter = array();
if ($disabled !== -1)
$filter['disabled'] = $disabled;
if ($delete_pending !== -1)
$filter['delete_pending'] = $delete_pending;
if (!empty($id_tipo_modulo))
$filter['id_tipo_modulo'] = $id_tipo_modulo;
if (empty($filter))
$filter = false;
$get_id_and_name = (bool) get_parameter ('get_id_and_name');
$get_distinct_name = (bool) get_parameter ('get_distinct_name');
// Fields
$fields = '*';
if ($get_id_and_name)
$fields = array('id_agente_modulo', 'nombre');
if ($get_distinct_name)
$fields = array('DISTINCT(nombre)');
$indexed = (bool) get_parameter ('indexed', true);
$agentName = (string) get_parameter ('agent_name', null);
$server_name = (string) get_parameter ('server_name', null);
@ -404,7 +464,7 @@ if (is_ajax ()) {
else
$search = false;
if ($config ['metaconsole'] == 1 and !$force_local_modules and defined('METACONSOLE')) {
if (is_metaconsole() && !$force_local_modules) {
if (enterprise_include_once ('include/functions_metaconsole.php') !== ENTERPRISE_NOT_HOOK) {
$connection = metaconsole_get_connection($server_name);
@ -421,9 +481,7 @@ if (is_ajax ()) {
agents_get_group_agents(
array_keys (users_get_groups ()), $search, "none"));
$agent_modules = agents_get_modules ($id_agent,
($fields != '' ? explode (',', $fields) : "*"),
($filter != '' ? $filter : false), $indexed);
$agent_modules = agents_get_modules ($id_agent, $fields, $filter, $indexed);
}
// Restore db connection
metaconsole_restore_db();
@ -436,9 +494,7 @@ if (is_ajax ()) {
agents_get_group_agents(
array_keys(users_get_groups ()), $search, "none"));
$agent_modules = agents_get_modules ($id_agent,
($fields != '' ? explode (',', $fields) : "*"),
($filter != '' ? $filter : false), $indexed);
$agent_modules = agents_get_modules ($id_agent, $fields, $filter, $indexed);
}
if (empty($agent_modules))

View File

@ -13,6 +13,8 @@
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
session_start ();
error_reporting(1);
// Local settings for marquee extension
@ -31,7 +33,6 @@ require_once ('../../include/functions_users.php');
global $config;
session_start ();
$config["id_user"] = $_SESSION["id_usuario"];
@ -39,9 +40,6 @@ $config["id_user"] = $_SESSION["id_usuario"];
// Session locking concurrency speedup!
check_login ();
session_write_close ();
if (!isInACL($_SERVER['REMOTE_ADDR'])) {
db_pandora_audit("ACL Violation",
"Trying to access marquee without ACL Access");

View File

@ -2,8 +2,8 @@
# Pandora FMS Console
#
%define name pandorafms_console
%define version 6.0dev
%define release 150724
%define version 6.0RC1
%define release 150812
# User and Group under which Apache is running
%define httpd_name httpd

View File

@ -2,8 +2,8 @@
# Pandora FMS Console
#
%define name pandorafms_console
%define version 6.0dev
%define release 150724
%define version 6.0RC1
%define release 150812
%define httpd_name httpd
# User and Group under which Apache is running
%define httpd_name apache2

View File

@ -38,8 +38,8 @@ INSERT INTO `tconfig` (`token`, `value`) VALUES
('graph_res','5'),
('step_compact','1'),
('db_scheme_first_version', '6.0dev'),
('db_scheme_version','6.0dev'),
('db_scheme_build','PD150724'),
('db_scheme_version','6.0RC1'),
('db_scheme_build','PD150812'),
('show_unknown','0'),
('show_lastalerts','1'),
('style','pandora'),

View File

@ -1,5 +1,5 @@
package: pandorafms-server
Version: 6.0dev-150724
Version: 6.0RC1-150812
Architecture: all
Priority: optional
Section: admin

View File

@ -14,7 +14,7 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
pandora_version="6.0dev-150724"
pandora_version="6.0RC1-150812"
package_cpan=0
package_pandora=1

View File

@ -1,7 +1,7 @@
#############################################################################
# Pandora FMS Server Parameters
# Pandora FMS, the Flexible Monitoring System.
# Version 6.0dev
# Version 6.0RC1
# Licensed under GPL license v2,
# (c) 2003-2014 Artica Soluciones Tecnologicas
# http://www.pandorafms.com
@ -297,11 +297,11 @@ max_log_size 1048576
# max_log_generation: Specify max generation count (between 1 and 9) of Pandora FMS server log files.
max_log_generation 1
# max_queue_files (500 by default)
# max_queue_files (5000 by default)
# When server have more than max_queue_files in incoming directory, skips the read
# the directory to avoid filesystem overhead.
max_queue_files 500
max_queue_files 5000
# Use the XML file last modification time as timestamp.

View File

@ -42,8 +42,8 @@ our @EXPORT = qw(
);
# version: Defines actual version of Pandora Server for this module only
my $pandora_version = "6.0dev";
my $pandora_build = "150724";
my $pandora_version = "6.0RC1";
my $pandora_build = "150812";
our $VERSION = $pandora_version." ".$pandora_build;
# Setup hash

View File

@ -96,6 +96,7 @@ sub data_producer ($) {
my @tasks;
my @files;
my @sorted;
# Open the incoming directory
opendir (DIR, $pa_config->{'incomingdir'})
@ -104,12 +105,37 @@ sub data_producer ($) {
# Do not read more than max_queue_files files
my $file_count = 0;
while (my $file = readdir (DIR)) {
# Data files must have the extension .data
next if ($file !~ /^.*[\._]\d+\.data$/);
# Do not queue more than max_queue_files files
if ($file_count >= $pa_config->{"max_queue_files"}) {
last;
}
push (@files, $file);
$file_count++;
}
closedir(DIR);
# Sort the queue
{
# Temporarily disable warnings (some files may have been deleted)
no warnings;
if ($pa_config->{'dataserver_lifo'} == 0) {
@sorted = sort { -M $pa_config->{'incomingdir'} . "/$b" <=> -M $pa_config->{'incomingdir'} . "/$a" || $a cmp $b } (@files);
} else {
@sorted = sort { -M $pa_config->{'incomingdir'} . "/$a" <=> -M $pa_config->{'incomingdir'} . "/$b" || $b cmp $a } (@files);
}
}
# Do not process more than one XML from the same agent at the same time
foreach my $file (@sorted) {
next if ($file !~ /^(.*)[\._]\d+\.data$/);
# Do not process more than one XML from the same agent at the same time
my $agent_name = $1;
my $agent_name = $1;
$AgentSem->down ();
if (defined ($Agents{$agent_name})) {
$AgentSem->up ();
@ -118,24 +144,7 @@ sub data_producer ($) {
$Agents{$agent_name} = 1;
$AgentSem->up ();
push (@files, $file);
$file_count++;
# Do not queue more than max_queue_files files
if ($file_count >= $pa_config->{"max_queue_files"}) {
last;
}
}
closedir(DIR);
# Temporarily disable warnings (some files may have been deleted)
{
no warnings;
if ($pa_config->{'dataserver_lifo'} == 0) {
@tasks = sort { -C $pa_config->{'incomingdir'} . "/$b" <=> -C $pa_config->{'incomingdir'} . "/$a" } (@files);
} else {
@tasks = sort { -C $pa_config->{'incomingdir'} . "/$a" <=> -C $pa_config->{'incomingdir'} . "/$b" } (@files);
}
push (@tasks, $file);
}
return @tasks;

View File

@ -2,8 +2,8 @@
# Pandora FMS Server
#
%define name pandorafms_server
%define version 6.0dev
%define release 150724
%define version 6.0RC1
%define release 150812
Summary: Pandora FMS Server
Name: %{name}

View File

@ -2,8 +2,8 @@
# Pandora FMS Server
#
%define name pandorafms_server
%define version 6.0dev
%define release 150724
%define version 6.0RC1
%define release 150812
Summary: Pandora FMS Server
Name: %{name}

View File

@ -33,7 +33,7 @@ use PandoraFMS::Tools;
use PandoraFMS::DB;
# version: define current version
my $version = "6.0dev PS150724";
my $version = "6.0RC1 PS150812";
# Pandora server configuration
my %conf;

View File

@ -35,7 +35,7 @@ use Encode::Locale;
Encode::Locale::decode_argv;
# version: define current version
my $version = "6.0dev PS150724";
my $version = "6.0RC1 PS150812";
# save program name for logging
my $progname = basename($0);
@ -1597,8 +1597,29 @@ sub cli_create_plugin_module($) {
$parameters{'id_plugin'} = $plugin_id;
$parameters{'plugin_user'} = $user;
$parameters{'plugin_pass'} = $password;
$parameters{'plugin_parameter'} = safe_input($params);
#$parameters{'plugin_parameter'} = safe_input($params);
my @user_params = split(/\s+/, $params);
my $plug_params = get_db_value ($dbh, 'SELECT macros FROM tplugin WHERE id =?', $plugin_id);
if ($plug_params eq undef) {
print "[ERROR] Error to create module\n\n";
help_screen();
}
my $decode_params = decode_json($plug_params);
my $user_params_size = scalar(@user_params);
foreach (my $i=1; $i <= $user_params_size; $i++){
$decode_params->{$i}->{'value'} = $user_params[$i-1];
}
my $p_params = encode_json($decode_params);
$parameters{'macros'} = $p_params;
# Optional parameters
$parameters{'id_module_group'} = $module_group_id unless !defined ($module_group);
$parameters{'min_warning'} = $warning_min unless !defined ($warning_min);