Merge branch 'develop' into 3145-Fallback_to_local_and_save_password

Former-commit-id: d3a7766ee87b4e1484d55b14abd69d7fe2ee709e
This commit is contained in:
samucarc 2019-02-12 18:55:48 +01:00
commit f00266bc86
61 changed files with 2087 additions and 1671 deletions

View File

@ -1,5 +1,5 @@
package: pandorafms-agent-unix
Version: 7.0NG.731-190206
Version: 7.0NG.731-190212
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="7.0NG.731-190206"
pandora_version="7.0NG.731-190212"
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

@ -42,7 +42,7 @@ my $Sem = undef;
my $ThreadSem = undef;
use constant AGENT_VERSION => '7.0NG.731';
use constant AGENT_BUILD => '190206';
use constant AGENT_BUILD => '190212';
# Agent log default file size maximum and instances
use constant DEFAULT_MAX_LOG_SIZE => 600000;

View File

@ -3,7 +3,7 @@
#
%define name pandorafms_agent_unix
%define version 7.0NG.731
%define release 190206
%define release 190212
Summary: Pandora FMS Linux agent, PERL version
Name: %{name}

View File

@ -3,7 +3,7 @@
#
%define name pandorafms_agent_unix
%define version 7.0NG.731
%define release 190206
%define release 190212
Summary: Pandora FMS Linux agent, PERL version
Name: %{name}

View File

@ -10,7 +10,7 @@
# **********************************************************************
PI_VERSION="7.0NG.731"
PI_BUILD="190206"
PI_BUILD="190212"
OS_NAME=`uname -s`
FORCE=0

View File

@ -186,7 +186,7 @@ UpgradeApplicationID
{}
Version
{190206}
{190212}
ViewReadme
{Yes}

View File

@ -30,7 +30,7 @@ using namespace Pandora;
using namespace Pandora_Strutils;
#define PATH_SIZE _MAX_PATH+1
#define PANDORA_VERSION ("7.0NG.731(Build 190206)")
#define PANDORA_VERSION ("7.0NG.731(Build 190212)")
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", "(7.0NG.731(Build 190206))"
VALUE "ProductVersion", "(7.0NG.731(Build 190212))"
VALUE "FileVersion", "1.0.0.0"
END
END

View File

@ -1,5 +1,5 @@
package: pandorafms-console
Version: 7.0NG.731-190206
Version: 7.0NG.731-190212
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="7.0NG.731-190206"
pandora_version="7.0NG.731-190212"
package_pear=0
package_pandora=1

View File

@ -309,7 +309,7 @@ function mainModuleGroups()
ui_print_info_message(['no_close' => true, 'message' => __('There are no defined groups or module groups') ]);
}
ui_require_css_file('cluetip','include/styles/js/');
ui_require_css_file('cluetip', 'include/styles/js/');
ui_require_jquery_file('cluetip');
?>
<script>

View File

@ -539,7 +539,7 @@ if ($login_screen == 'error_authconfig' || $login_screen == 'error_emptyconfig'
}
ui_require_css_file('dialog');
ui_require_css_file('jquery-ui.min','include/styles/js/');
ui_require_css_file('jquery-ui.min', 'include/styles/js/');
ui_require_jquery_file('jquery-ui.min');
?>

View File

@ -320,6 +320,23 @@ $(document).ready( function() {
}
else {
$('div#title_menu').hide();
if(!click_display){
$('#menu').mouseenter(function() {
handsInMenu = 1;
openTimeMenu = new Date().getTime();
$('ul.submenu').css('left', '44px');
}).mouseleave(function() {
handsInMenu = 0;
setTimeout(function() {
openedMenu = new Date().getTime() - openTimeMenu;
if(openedMenu > 1000 && handsInMenu == 0) {
$('li.menu_icon').removeClass( " no_hidden_menu");
$('li.menu_icon').find('li').removeClass( " no_hidden_menu" );
$('ul.submenu').css('left', '44px');
}
}, 2500);
});
}
}
});
/* ]]> */
@ -332,7 +349,6 @@ $(document).ready( function() {
handsIn2 = 0;
if(!click_display){
if (autohidden_menu) {
$('.menu_icon').mouseenter(function() {
table_hover = $(this);
handsIn = 1;
@ -352,7 +368,6 @@ $(document).ready( function() {
}
}, 2500);
});
}
}else{
$(document).ready(function() {
if (autohidden_menu) {

View File

@ -945,6 +945,10 @@ if ($update_agent) {
$disabled ? '1' : '0',
]
);
// Validate alerts for disabled agents.
if ($disabled) {
alerts_validate_alert_agent($id_agente);
}
}
if ($tpolicy_group_old) {

View File

@ -192,7 +192,7 @@ if ($own_info['is_admin'] || check_acl($config['id_user'], 0, 'PM')) {
echo '</div></form>';
}
ui_require_css_file('cluetip','include/styles/js/');
ui_require_css_file('cluetip', 'include/styles/js/');
ui_require_jquery_file('cluetip');
ui_require_jquery_file('pandora.controls');
ui_require_jquery_file('bgiframe');

View File

@ -836,7 +836,7 @@ if ($display_create && (check_acl($config['id_user'], 0, 'LW') || check_acl($con
echo '</div>';
}
ui_require_css_file('cluetip','include/styles/js/');
ui_require_css_file('cluetip', 'include/styles/js/');
ui_require_jquery_file('cluetip');
ui_require_jquery_file('pandora.controls');
ui_require_jquery_file('bgiframe');

View File

@ -629,7 +629,7 @@ echo '</form>';
<?php
// -------------------------END CHUNKS---------------------------------------
ui_require_css_file('cluetip','include/styles/js/');
ui_require_css_file('cluetip', 'include/styles/js/');
ui_require_jquery_file('cluetip');
ui_require_jquery_file('pandora.controls');
ui_require_jquery_file('json');

View File

@ -11,7 +11,6 @@
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
ui_require_css_file('tree');
ui_require_css_file('fixed-bottom-box');
@ -539,6 +538,7 @@ if ($tab == 'tree') {
$url_delete = 'index.php?sec=gagente&sec2=godmode/groups/group_list&delete_group=1&id_group='.$group['id_grupo'];
$table->data[$key][0] = $group['id_grupo'];
$table->data[$key][1] = "<a href='$url'>".$group['nombre'].'</a>';
if ($group['icon'] != '') {
$table->data[$key][2] = html_print_image(
'images/groups_small/'.$group['icon'].'.png',
true,
@ -550,6 +550,10 @@ if ($tab == 'tree') {
false, false, false, true
]
);
} else {
$table->data[$key][2] = '';
}
// reporting_get_group_stats
$table->data[$key][3] = $group['disabled'] ? __('Disabled') : __('Enabled');

View File

@ -205,6 +205,10 @@ if ($update_agents) {
$values['disabled'],
]
);
// Validate alerts for disabled agents.
if ($values['disabled'] == 1) {
alerts_validate_alert_agent($id_agent);
}
}
if ($group_old || $result) {

View File

@ -42,6 +42,7 @@ if (!$is_metaconsole) {
$url_visual_console_favorite = 'index.php?sec=screen&sec2=screens/screens&action=visualmap_favorite';
$url_visual_console_template = 'index.php?sec=screen&sec2=screens/screens&action=visualmap_template';
$url_visual_console_template_wizard = 'index.php?sec=screen&sec2=screens/screens&action=visualmap_wizard';
$url_visual_console_manager = 'index.php?sec=screen&sec2=enterprise/extensions/visual_console_manager';
}
$pure = (int) get_parameter('pure', 0);
@ -70,6 +71,12 @@ if ($is_enterprise && $vconsoles_manage) {
'active' => false,
'text' => '<a href="'.$url_visual_console_template_wizard.'">'.html_print_image('images/wand.png', true, ['title' => __('Visual Console Template Wizard')]).'</a>',
];
if ($is_metaconsole) {
$buttons['visual_console_manager'] = [
'active' => false,
'text' => '<a href="'.$url_visual_console_manager.'">'.html_print_image('images/builder.png', true, ['title' => __('Visual Console Manager')]).'</a>',
];
}
}
if (!$is_metaconsole) {

View File

@ -233,7 +233,7 @@ html_print_submit_button(
echo '</div>';
echo '</form>';
ui_require_css_file('color-picker','include/styles/js/');
ui_require_css_file('color-picker', 'include/styles/js/');
ui_require_jquery_file('colorpicker');
?>

View File

@ -168,8 +168,8 @@ echo "<div id='saving_in_progress_dialog' style='display: none; text-align: cent
echo "<div id='delete_in_progress_dialog' style='display: none; text-align: center;' title='".__('Action in progress')."'>".__('Deletion in progress').'<br />'.html_print_image('images/spinner.gif', true).'</div>';
// CSS
ui_require_css_file('color-picker','include/styles/js/');
ui_require_css_file('jquery-ui.min','include/styles/js/');
ui_require_css_file('color-picker', 'include/styles/js/');
ui_require_css_file('jquery-ui.min', 'include/styles/js/');
// Javascript
ui_require_jquery_file('colorpicker');

View File

@ -697,7 +697,7 @@ echo '<span id="ip_text" style="display: none;">'.__('IP').'</span>';
<textarea id="tinyMCE_editor" name="tinyMCE_editor"></textarea>
</div>
<?php
ui_require_css_file('color-picker','include/styles/js/');
ui_require_css_file('color-picker', 'include/styles/js/');
ui_require_jquery_file('colorpicker');
ui_require_jquery_file('pandora.controls');

View File

@ -41,6 +41,7 @@ if (!$is_metaconsole) {
$url_visual_console_favorite = 'index.php?sec=screen&sec2=screens/screens&action=visualmap_favorite';
$url_visual_console_template = 'index.php?sec=screen&sec2=screens/screens&action=visualmap_template';
$url_visual_console_template_wizard = 'index.php?sec=screen&sec2=screens/screens&action=visualmap_wizard';
$url_visual_console_manager = 'index.php?sec=screen&sec2=enterprise/extensions/visual_console_manager';
}
$buttons['visual_console'] = [
@ -63,6 +64,13 @@ if ($is_enterprise && $vconsoles_manage) {
'active' => false,
'text' => '<a href="'.$url_visual_console_template_wizard.'">'.html_print_image('images/wand.png', true, ['title' => __('Visual Console Template Wizard')]).'</a>',
];
if ($is_metaconsole) {
$buttons['visual_console_manager'] = [
'active' => false,
'text' => '<a href="'.$url_visual_console_manager.'">'.html_print_image('images/builder.png', true, ['title' => __('Visual Console Manager')]).'</a>',
];
}
}
if (!$is_metaconsole) {

View File

@ -1234,7 +1234,7 @@ html_print_submit_button(__('Update'), 'update_button', false, 'class="sub upd"'
echo '</div>';
echo '</form>';
ui_require_css_file('color-picker','include/styles/js/');
ui_require_css_file('color-picker', 'include/styles/js/');
ui_require_jquery_file('colorpicker');

View File

@ -20,7 +20,7 @@
/**
* Pandora build version and version
*/
$build_version = 'PC190206';
$build_version = 'PC190212';
$pandora_version = 'v7.0NG.731';
// Do not overwrite default timezone set if defined.

View File

@ -1754,7 +1754,8 @@ function get_snmpwalk(
$quick_print=0,
$base_oid='',
$snmp_port='',
$server_to_exec=0
$server_to_exec=0,
$extra_arguments=''
) {
global $config;
@ -1805,15 +1806,15 @@ function get_snmpwalk(
case '3':
switch ($snmp3_security_level) {
case 'authNoPriv':
$command_str = $snmpwalk_bin.' -m ALL -Oa -v 3'.' -u '.escapeshellarg($snmp3_auth_user).' -A '.escapeshellarg($snmp3_auth_pass).' -l '.escapeshellarg($snmp3_security_level).' -a '.escapeshellarg($snmp3_auth_method).' '.escapeshellarg($ip_target).' '.$base_oid.' 2> '.$error_redir_dir;
$command_str = $snmpwalk_bin.' -m ALL -Oa '.$extra_arguments.' -v 3'.' -u '.escapeshellarg($snmp3_auth_user).' -A '.escapeshellarg($snmp3_auth_pass).' -l '.escapeshellarg($snmp3_security_level).' -a '.escapeshellarg($snmp3_auth_method).' '.escapeshellarg($ip_target).' '.$base_oid.' 2> '.$error_redir_dir;
break;
case 'noAuthNoPriv':
$command_str = $snmpwalk_bin.' -m ALL -Oa -v 3'.' -u '.escapeshellarg($snmp3_auth_user).' -l '.escapeshellarg($snmp3_security_level).' '.escapeshellarg($ip_target).' '.$base_oid.' 2> '.$error_redir_dir;
$command_str = $snmpwalk_bin.' -m ALL -Oa '.$extra_arguments.' -v 3'.' -u '.escapeshellarg($snmp3_auth_user).' -l '.escapeshellarg($snmp3_security_level).' '.escapeshellarg($ip_target).' '.$base_oid.' 2> '.$error_redir_dir;
break;
default:
$command_str = $snmpwalk_bin.' -m ALL -Oa -v 3'.' -u '.escapeshellarg($snmp3_auth_user).' -A '.escapeshellarg($snmp3_auth_pass).' -l '.escapeshellarg($snmp3_security_level).' -a '.escapeshellarg($snmp3_auth_method).' -x '.escapeshellarg($snmp3_privacy_method).' -X '.escapeshellarg($snmp3_privacy_pass).' '.escapeshellarg($ip_target).' '.$base_oid.' 2> '.$error_redir_dir;
$command_str = $snmpwalk_bin.' -m ALL -Oa '.$extra_arguments.' -v 3'.' -u '.escapeshellarg($snmp3_auth_user).' -A '.escapeshellarg($snmp3_auth_pass).' -l '.escapeshellarg($snmp3_security_level).' -a '.escapeshellarg($snmp3_auth_method).' -x '.escapeshellarg($snmp3_privacy_method).' -X '.escapeshellarg($snmp3_privacy_pass).' '.escapeshellarg($ip_target).' '.$base_oid.' 2> '.$error_redir_dir;
break;
}
break;
@ -1822,7 +1823,7 @@ function get_snmpwalk(
case '2c':
case '1':
default:
$command_str = $snmpwalk_bin.' -m ALL -Oa -v '.escapeshellarg($snmp_version).' -c '.escapeshellarg(io_safe_output($snmp_community)).' '.escapeshellarg($ip_target).' '.$base_oid.' 2> '.$error_redir_dir;
$command_str = $snmpwalk_bin.' -m ALL '.$extra_arguments.' -Oa -v '.escapeshellarg($snmp_version).' -c '.escapeshellarg(io_safe_output($snmp_community)).' '.escapeshellarg($ip_target).' '.$base_oid.' 2> '.$error_redir_dir;
break;
}

View File

@ -1700,6 +1700,32 @@ function alerts_get_effective_alert_actions($id_agent_module)
}
/**
* Validate alerts for the given module.
*
* @param int agent_module_id ID of the module
*/
function alerts_validate_alert_module ($agent_module_id) {
db_process_sql(sprintf('UPDATE talert_template_modules
SET times_fired=0, internal_counter=0
WHERE id_agent_module = %d',
$agent_module_id));
}
/**
* Validate alerts for the given agent.
*
* @param int agent_id ID of the agent
*/
function alerts_validate_alert_agent ($agent_id) {
db_process_sql(sprintf('UPDATE talert_template_modules tm
INNER JOIN tagente_modulo am ON tm.id_agent_module = am.id_agente_modulo
SET tm.times_fired=0, tm.internal_counter=0
WHERE am.id_agente = %d',
$agent_id));
}
/**
* Validates an alert id or an array of alert id's.
*

View File

@ -472,11 +472,12 @@ function api_get_module_last_value($idAgentModule, $trash1, $other=';', $returnT
DB column mapping table used by tree_agents (and get module_properties)
*/
// agent related field mappings (output field => column designation for 'tagente')
/*
* Agent related field mappings (output field => column designation for 'tagente').
* agent_id is not in this list (because it is mandatory).
* agent_id_group is not in this list.
*/
$agent_field_column_mapping = [
/*
agent_id is not in this list (because it is mandatory) */
// agent_id_group is not in this list
'agent_name' => 'nombre as agent_name',
'agent_direction' => 'direccion as agent_direction',
'agent_comentary' => 'comentarios as agent_comentary',
@ -496,8 +497,8 @@ $agent_field_column_mapping = [
];
// module related field mappings 1/2 (output field => column for 'tagente_modulo')
// module_id_agent_modulo is not in this list
$module_field_column_mampping = [
// module_id_agent_modulo is not in this list
'module_id_agent' => 'id_agente as module_id_agent',
'module_id_module_type' => 'id_tipo_modulo as module_id_module_type',
'module_description' => 'descripcion as module_description',
@ -541,8 +542,8 @@ $module_field_column_mampping = [
];
// module related field mappings 2/2 (output field => column for 'tagente_estado')
// module_id_agent_modulo is not in this list
$estado_fields_to_columns_mapping = [
// module_id_agent_modulo is not in this list
'module_id_agent_state' => 'id_agente_estado as module_id_agent_state',
'module_data' => 'datos as module_data',
'module_timestamp' => 'timestamp as module_timestamp',
@ -14609,3 +14610,67 @@ function api_get_users($thrash1, $thrash2, $other, $returnType)
}
}
/**
* Resets module counts and alert counts in the agents
*
* @param $id id of the agent you want to synchronize. Add "All" to synchronize all agents
* @param $trash1
* @param $trash2
* @param $trash3
*
* Example:
* api.php?op=set&op2=reset_agent_counts&apipass=1234&user=admin&pass=pandora&id=All
*/
function api_set_reset_agent_counts($id, $thrash1, $thrash2, $thrash3)
{
global $config;
if (!check_acl($config['id_user'], 0, 'AW')) {
returnError('forbidden', 'string');
return;
}
if ($id == '' || !$id) {
returnError('error_parameter', __('Error. Agent cannot be left blank.'));
return;
}
if ($id != 'All') {
$agent = db_get_row_filter('tagente', ['id_agente' => $id]);
if (empty($agent)) {
returnError('error_agent', __('This agent does not exist.'));
return;
} else {
$return = db_process_sql_update(
'tagente',
[
'update_module_count' => 1,
'update_alert_count' => 1,
],
['id_agente' => $id]
);
}
} else {
$return = db_process_sql_update(
'tagente',
[
'update_module_count' => 1,
'update_alert_count' => 1,
]
);
}
$data = __('Successfully updated module/alert count in id agent %d.', $id);
if ($id == 'All') {
$data = __('Successfully updated module/alert count in all agents');
}
if ($return === false) {
returnError('error_reset_agent_counts', 'Could not be updated module/alert counts in id agent %d.', $id);
} else {
returnData('string', ['type' => 'string', 'data' => $data]);
}
}

View File

@ -372,7 +372,7 @@ function menu_print_menu(&$menu)
}
// Print out the first level
$output .= '<li title="'.ucwords(str_replace(['oper-', 'god-'], '', $id)).'" class="'.implode(' ', $classes).' '.$seleccionado.'" id="icon_'.$id.'">';
$output .= '<li title="'.$main['text'].'" class="'.implode(' ', $classes).' '.$seleccionado.'" id="icon_'.$id.'">';
// onclick="location.href=\'index.php?sec='.$mainsec.'&amp;sec2='.$main["sec2"].($main["refr"] ? '&amp;refr='.$main["refr"] : '').'\'">';
$length = strlen(__($main['text']));
$padding_top = ( $length >= 18) ? 6 : 12;

View File

@ -328,6 +328,10 @@ function modules_change_disabled($id_agent_module, $new_value=1)
if ($current_disabled == $new_value) {
continue;
}
// Validate alerts for disabled modules.
if ($new_value == 1) {
alerts_validate_alert_module($id_module);
}
$id_agent_changed[] = modules_get_agentmodule_agent($id_module);
$id_agent_module_changed[] = $id_module;

View File

@ -25,7 +25,7 @@
require_once 'functions_agents.php';
require_once $config['homedir'].'/include/functions_modules.php';
require_once $config['homedir'].'/include/functions_groups.php';
ui_require_css_file('cluetip','include/styles/js/');
ui_require_css_file('cluetip', 'include/styles/js/');
// Check if a node descends from a given node

View File

@ -1183,12 +1183,11 @@ function reporting_SLA(
}
}
// SLA items sorted descending ()
if ($content['top_n'] == 2) {
// SLA items sorted descending ()
arsort($return['data']['']);
}
} else if ($content['top_n'] == 1) {
// SLA items sorted ascending
else if ($content['top_n'] == 1) {
asort($sla_showed_values);
}
@ -6724,7 +6723,7 @@ function reporting_general($report, $content)
'id_agente_modulo',
$row['id_agent_module']
);
$id_module_type = db_get_value('id_tipo_modulo', 'tagente_modulo', 'nombre', $mod_name);
if ($content['period'] == 0) {
$data_res[$index] = modules_get_last_value($row['id_agent_module']);
} else {
@ -6771,16 +6770,31 @@ function reporting_general($report, $content)
$agent_name[$index] = $ag_name;
$module_name[$index] = $mod_name;
$units[$index] = $unit;
$id_module_types[$index] = $id_module_type;
$operations[$index] = $row['operation'];
break;
case REPORT_GENERAL_GROUP_BY_AGENT:
$id_module_types[$index] = $id_module_type;
if ($id_module_types[$index] == 2 || $id_module_types[$index] == 6 || $id_module_types[$index] == 9 || $id_module_types[$index] == 18) {
$data_res[$index] = round($data_res[$index], 0, PHP_ROUND_HALF_DOWN);
}
if ($id_module_types[$index] == 2 || $id_module_types[$index] == 6 || $id_module_types[$index] == 9 || $id_module_types[$index] == 18) {
if ($data_res[$index] == 1) {
$data_res[$index] = 'Up';
} else if ($data_res[$index] == 0) {
$data_res[$index] = 'Down';
}
}
if ($data_res[$index] === false) {
$return['data'][$ag_name][$mod_name] = null;
} else {
if (!is_numeric($data_res[$index])) {
$return['data'][$ag_name][$mod_name] = $data_res[$index];
} else {
hd($data_res[$index], true);
$return['data'][$ag_name][$mod_name] = format_for_graph($data_res[$index], 2).' '.$unit;
}
}
@ -6896,7 +6910,7 @@ function reporting_general($report, $content)
$data['module'] = $module_name[$i];
$data['id_agent_module'] = $id_agent_module[$i];
$data['id_agent'] = agents_get_agent_id_by_module_id($id_agent_module[$i]);
$data['id_module_type'] = $id_module_types[$i];
$data['operator'] = '';
if ($content['period'] != 0) {
switch ($operations[$i]) {

View File

@ -2629,21 +2629,6 @@ function reporting_html_availability_graph(&$table, $item, $pdf=0)
}
function get_agent_first_time($agent_name)
{
$id = agents_get_agent_id($agent_name, true);
$utimestamp = db_get_all_rows_sql(
'SELECT utimestamp FROM tagente_datos WHERE id_agente_modulo IN
(SELECT id_agente_modulo FROM tagente_modulo WHERE id_agente = '.$id.')
ORDER BY utimestamp ASC LIMIT 1'
);
$utimestamp = $utimestamp[0]['utimestamp'];
return $utimestamp;
}
function reporting_html_general(&$table, $item)
{
if (!empty($item['data'])) {
@ -2676,6 +2661,16 @@ function reporting_html_general(&$table, $item)
// End - Order by agent
foreach ($item['data'] as $row) {
if ($row['id_module_type'] == 6 || $row['id_module_type'] == 9 || $row['id_module_type'] == 18 || $row['id_module_type'] == 2) {
$row['formated_value'] = round($row['formated_value'], 0, PHP_ROUND_HALF_DOWN);
}
if (($row['id_module_type'] == 6 || $row['id_module_type'] == 9 || $row['id_module_type'] == 18 || $row['id_module_type'] == 2) && $row['formated_value'] == 1) {
$row['formated_value'] = 'Up';
} else if (($row['id_module_type'] == 6 || $row['id_module_type'] == 9 || $row['id_module_type'] == 18 || $row['id_module_type'] == 2) && $row['formated_value'] == 0) {
$row['formated_value'] = 'Down';
}
if ($item['date']['period'] != 0) {
$table1->data[] = [
$row['agent'],
@ -2738,13 +2733,11 @@ function reporting_html_general(&$table, $item)
}
$list_modules = array_keys($list_modules);
$table1->width = '99%';
$table1->data = [];
$table1->head = array_merge([__('Agent')], $list_modules);
foreach ($item['data'] as $agent => $modules) {
$row = [];
$row['agent'] = $agent;
$table1->style['agent'] = 'text-align: center;';
foreach ($list_modules as $name) {
@ -2804,6 +2797,21 @@ function reporting_html_general(&$table, $item)
}
function get_agent_first_time($agent_name)
{
$id = agents_get_agent_id($agent_name, true);
$utimestamp = db_get_all_rows_sql(
'SELECT utimestamp FROM tagente_datos WHERE id_agente_modulo IN
(SELECT id_agente_modulo FROM tagente_modulo WHERE id_agente = '.$id.')
ORDER BY utimestamp ASC LIMIT 1'
);
$utimestamp = $utimestamp[0]['utimestamp'];
return $utimestamp;
}
function reporting_html_sql(&$table, $item)
{
if (!$item['correct']) {

View File

@ -3902,13 +3902,16 @@ function visual_map_translate_agent_status($agent_status)
{
switch ($agent_status) {
case AGENT_STATUS_NORMAL:
case AGENT_MODULE_STATUS_NORMAL_ALERT:
default:
return VISUAL_MAP_STATUS_NORMAL;
case AGENT_STATUS_CRITICAL:
case AGENT_MODULE_STATUS_CRITICAL_ALERT:
return VISUAL_MAP_STATUS_CRITICAL_BAD;
case AGENT_STATUS_WARNING:
case AGENT_MODULE_STATUS_WARNING_ALERT:
return VISUAL_MAP_STATUS_WARNING;
case AGENT_STATUS_NOT_INIT:

View File

@ -1150,7 +1150,7 @@ function visual_map_editor_print_item_palette($visualConsole_id, $background)
echo '<div id="div_step_2" class="forced_title_layer"
style="display: none; position: absolute; z-index: 99;">'.__('Click end point<br />of the line').'</div>';
ui_require_css_file('color-picker','include/styles/js/');
ui_require_css_file('color-picker', 'include/styles/js/');
ui_require_jquery_file('colorpicker');
?>

View File

@ -1,40 +1,39 @@
/*
* ---------------------------------------------------------------------
* - CLUSTER VIEW -
* ---------------------------------------------------------------------
*/
#main_cluster {
max-width:1770px;
margin:0 auto;
max-width: 1770px;
margin: 0 auto;
}
.sub_cluster_1 {
width:400px;
width: 400px;
float: left;
margin-left: 30px;
margin-bottom: 25px;
vertical-align: top;
border:1px solid #e7e9ea;
height:150px;
border: 1px solid #e7e9ea;
height: 150px;
}
.sub_cluster_2 {
width:833px;
width: 833px;
float: left;
margin-left: 30px;
margin-bottom: 25px;
vertical-align: top;
border:1px solid #e7e9ea;
height:150px;
border: 1px solid #e7e9ea;
height: 150px;
}
.sub_cluster_header {
width:100%;
width: 100%;
height: 30px;
background-color: #373737;
color:white;
text-align:center;
color: white;
text-align: center;
font-size: 9pt;
display: flex;
justify-content: center;
@ -43,7 +42,7 @@
}
.sub_cluster_body {
width:100%;
width: 100%;
height: 120px;
background-color: #f9faf9;
display: flex;
@ -53,64 +52,64 @@
}
.sub_cluster_body_3 {
width:100%;
width: 100%;
height: 120px;
background-color: #f9faf9;
overflow-y: scroll;
}
#cluster_map {
border:1px solid lightgray;
width:900px;
height:500px;
border: 1px solid lightgray;
width: 900px;
height: 500px;
float: left;
margin-bottom: 30px;
}
#cluster_status_content {
width: 90%;
height:30px;
margin:0px auto;
height: 30px;
margin: 0px auto;
}
#cluster_status_bar {
width: 85%;
height:100%;
float:left;
height: 100%;
float: left;
}
.status_animation {
width: 1%;
height:100%;
left:0%;
height: 100%;
left: 0%;
background-color: red;
position:relative;
position: relative;
}
#cluster_status_button {
float:left;
width:10%;
margin-left:5%;;
float: left;
width: 10%;
margin-left: 5%;
}
#last_contact_content{
#last_contact_content {
width: 90%;
height:60px;
margin:0px auto;
height: 60px;
margin: 0px auto;
}
#last_contact_clock {
width: 15%;
height:100%;
float:left;
height: 100%;
float: left;
}
#last_contact_date {
float:left;
height:60px;
width:80%;
margin-left:5%;
text-align:center;
float: left;
height: 60px;
width: 80%;
margin-left: 5%;
text-align: center;
display: flex;
justify-content: center;
align-content: center;
@ -118,27 +117,26 @@
}
#last_contact_date_text {
font-size:14pt;
font-size: 14pt;
}
.balanced_module_item {
float:left;
float: left;
margin-top: 11.5px;
margin-left: 5%;
height: 25px;
width:90%;
width: 90%;
}
.module_icon {
float:left;
width:10%;
float: left;
width: 10%;
}
.modal_module_list {
float:left;
float: left;
width: 90%;
height:100%;
height: 100%;
display: flex;
justify-content: center;
align-content: center;

View File

@ -34,29 +34,36 @@ div.database_debug_title {
width: 95%;
}
/* Common useful styles */
.invisible {
display: none;
}
.left { clear: left; float: left;}
.right { clear: right; float: right;}
.clear { clear:both; }
.left {
clear: left;
float: left;
}
.right {
clear: right;
float: right;
}
.clear {
clear: both;
}
.top {
vertical-align: top;
margin-top: 0;
padding-top: 0;
}
img.left {
margin-right:1em;
margin-bottom:1.8em;
margin-right: 1em;
margin-bottom: 1.8em;
}
img.right {
margin-left:1em;
margin-bottom:1.8em;
margin-left: 1em;
margin-bottom: 1.8em;
}
.text-right {
text-align:right;
text-align: right;
}
.noshadow {
-moz-box-shadow: 0px !important;

View File

@ -23,15 +23,15 @@ td.scwWeek {
/* Today selector */
td.scwFootDisabled {
background-color: #000;
color: #FFFFFF;
color: #ffffff;
}
tfoot.scwFoot {
color: #111;
}
.scwFoot :hover{
color: #3F3F3F !important;
.scwFoot :hover {
color: #3f3f3f !important;
}
table.scwCells {

View File

@ -1,4 +1,3 @@
@import url(calendar.css);
/* --- JQUERY-UI --- */
@ -13,24 +12,26 @@
.ui-button-text-only .ui-button-text {
font-family: nunito;
font-size: 9pt;
color: #82B92E
color: #82b92e;
}
.ui-datepicker .ui-datepicker-title *, .ui-datepicker th * {
.ui-datepicker .ui-datepicker-title *,
.ui-datepicker th * {
color: white;
}
.ui-datepicker .ui-datepicker-title select, .ui-datepicker .ui-datepicker-title option {
.ui-datepicker .ui-datepicker-title select,
.ui-datepicker .ui-datepicker-title option {
color: #111 !important;
}
.ui-dialog .ui-dialog-titlebar {
display: inherit;
text-align: center;
padding: .4em 1em;
padding: 0.4em 1em;
height: 30px;
position: relative;
}
.ui-dialog .ui-dialog-title {
font-family: Nunito, sans-serif;
margin: .1em 0 !important;
margin: 0.1em 0 !important;
white-space: nowrap !important;
width: 100% !important;
overflow: hidden !important;
@ -53,7 +54,7 @@
.ui-dialog .ui-dialog-content {
position: relative !important;
border: 0;
padding: .5em 1em !important;
padding: 0.5em 1em !important;
background: none !important;
overflow: auto !important;
margin-bottom: 1em;
@ -62,37 +63,40 @@
text-align: left;
border-width: 1px 0 0 0;
background-image: none;
margin-top: .5em;
padding: .3em 1em .5em .4em;
margin-top: 0.5em;
padding: 0.3em 1em 0.5em 0.4em;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
float: right;
}
.ui-dialog .ui-dialog-buttonpane button {
margin: .5em 1em .5em 0 !important;
margin: 0.5em 1em 0.5em 0 !important;
cursor: pointer !important;
background: white !important;
background-color: white !important;
border: 1px solid #82b92e !important;
height:30px !important;
width:90px !important;
height: 30px !important;
width: 90px !important;
}
.ui-widget-header .ui-icon {
background-image: url(../images/ui-icons_444444_256x240.png) !important;
}
.ui-icon, .ui-widget-content .ui-icon {
.ui-icon,
.ui-widget-content .ui-icon {
background-image: url(../images/ui-icons_444444_256x240.png) !important;
}
.ui-widget-content {
background: #ffffff url(../images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;
background: #ffffff url(../images/ui-bg_flat_75_ffffff_40x100.png) 50% 50%
repeat-x;
}
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
margin-top: 3px;
border: 1px solid #d3d3d3 !important;
border-bottom:0 !important;
background: #e6e6e6 url(../images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x !important;
border-bottom: 0 !important;
background: #e6e6e6 url(../images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50%
repeat-x !important;
font-weight: normal !important;
color: #555555 !important;
}
@ -121,15 +125,15 @@
border-bottom-right-radius: 0 !important;
}
#ui-datepicker-div {
border-color: #B1B1B1;
border-color: #b1b1b1;
background: #ffffff;
}
.ui-widget-header {
background: #B1B1B1 !important;
background: #b1b1b1 !important;
color: #ffffff !important;
}
.ui-datepicker-calendar th {
background-color: #3F3F3F;
background-color: #3f3f3f;
}
.ui-dialog .ui-widget-header {
background-color: #82b92e;
@ -138,16 +142,16 @@
.ui_tpicker_minute,
.ui_tpicker_second,
.ui-slider-handle {
border: 1px solid #AAAAAA !important;
border: 1px solid #aaaaaa !important;
}
.ui-timepicker-div dd {
margin: 0px 15px 0px 15px ;
margin: 0px 15px 0px 15px;
}
.ui-timepicker-div .ui-datepicker-title {
color: white;
}
.ui-datepicker-buttonpane button {
border-color: #B1B1B1 !important;
border-color: #b1b1b1 !important;
}
.ui-datepicker-buttonpane .ui-datepicker-current {
margin-left: 0.2em !important;
@ -180,75 +184,80 @@
.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button{
font-family: Verdana,Arial,sans-serif !important;
.ui-widget button {
font-family: Verdana, Arial, sans-serif !important;
}
a.ui-button:active, .ui-button:active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover,
.ui-state-focus .ui-widget-content,
.ui-state-focus .ui-widget-header,
.ui-state-focus .ui-button:hover, .ui-button:focus{
.ui-state-focus .ui-button:hover,
.ui-button:focus {
background: transparent !important;
border: none !important;
}
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover{
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover {
border: 1px solid #999999 !important;
border-bottom: 0 !important;
background: #dadada url(../images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x !important;
background: #dadada url(../images/ui-bg_glass_75_dadada_1x400.png) 50% 50%
repeat-x !important;
}
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active{
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
border: 1px solid #aaaaaa !important;
border-bottom: 0 !important;
background: #ffffff url(../images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x !important;
background: #ffffff url(../images/ui-bg_glass_65_ffffff_1x400.png) 50% 50%
repeat-x !important;
font-weight: normal !important;
color: #212121 !important;
}
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited{
.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
color: #212121 !important;
}
ul.ui-front{
ul.ui-front {
z-index: 1000000 !important;
padding-right: 0px !important;
}
ul.ui-front li{
ul.ui-front li {
padding: 3px !important;
}
ul.ui-front li:hover{
ul.ui-front li:hover {
background-color: #e1e3e1 !important;
}
ul.ui-front li a.ui-menu-item-wrapper{
ul.ui-front li a.ui-menu-item-wrapper {
background: transparent !important;
border: none !important;
}
ul.ui-front li a.ui-menu-item-wrapper span{
ul.ui-front li a.ui-menu-item-wrapper span {
padding-left: 5px !important;
}
ul.ui-front li a.ui-menu-item-wrapper:hover{
ul.ui-front li a.ui-menu-item-wrapper:hover {
text-decoration: none !important;
}
input[type=submit].ui-button-dialog{
margin: .5em 1em .5em 0 !important;
input[type="submit"].ui-button-dialog {
margin: 0.5em 1em 0.5em 0 !important;
cursor: pointer !important;
background: white !important;
background-color: white !important;
color: #82b92e !important;
text-align: center !important;
border: 1px solid #82b92e !important;
height:30px !important;
width:90px !important;
height: 30px !important;
width: 90px !important;
}

View File

@ -13,17 +13,17 @@
*/
.context-menu-list {
margin:0;
padding:0;
margin: 0;
padding: 0;
min-width: 120px;
max-width: 250px;
display: inline-block;
position: absolute;
list-style-type: none;
border: 1px solid #DDD;
border: 1px solid #ddd;
border-radius: 4px;
background: #EEE;
background: #eee;
-webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5);
-moz-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5);
@ -38,7 +38,7 @@
.context-menu-item {
padding: 0px 2px 0px 24px;
background-color: #EEE;
background-color: #eee;
position: relative;
border-radius: 4px;
-webkit-user-select: none;
@ -57,8 +57,8 @@
}
.context-menu-separator {
padding-bottom:0;
border-bottom: 1px solid #DDD;
padding-bottom: 0;
border-bottom: 1px solid #ddd;
}
.context-menu-item > label > input,
@ -83,7 +83,7 @@
.context-menu-input.hover,
.context-menu-item.disabled.hover {
cursor: default;
background-color: #EEE;
background-color: #eee;
}
.context-menu-submenu:after {
@ -101,29 +101,73 @@
http://css-tricks.com/13224-pseudo-spriting/ to get an idea of how to implement
.context-menu-item.icon:before {}
*/
.context-menu-item.icon { min-height: 18px; background-repeat: no-repeat; background-position: 4px 2px; }
.context-menu-item.icon-edit { background-image: url(../../images/page_white_edit.png); }
.context-menu-item.icon-cut { background-image: url(../../images/cut.png); }
.context-menu-item.icon-copy { background-image: url(../../images/page_white_copy.png); }
.context-menu-item.icon-paste { background-image: url(../../images/page_white_paste.png); }
.context-menu-item.icon-delete { background-image: url(../../images/delete.png); }
.context-menu-item.icon-add { background-image: url(../../images/page_white_add.png); }
.context-menu-item.icon-quit { background-image: url(../../images/door.png); }
.context-menu-item.icon-refresh { background-image: url(../../images/refresh.png); }
.context-menu-item.icon-center { background-image: url(../../images/set_center.png); }
.context-menu-item.icon-details { background-image: url(../../images/show_details.png); }
.context-menu-item.icon-children { background-image: url(../../images/children.png); }
.context-menu-item.icon-cancel_set_parent { background-image: url(../../images/link_delete.png); }
.context-menu-item.icon-set_parent { background-image: url(../../images/father.png); }
.context-menu-item.icon-add_node { background-image: url(../../images/add.png); }
.context-menu-item.icon-refresh_holding_area { background-image: url(../../images/refresh_holding_area.png); }
.context-menu-item.icon-restart_map { background-image: url(../../images/reset.png); }
.context-menu-item.icon-interface_link_children { background-image: url(../../images/icono_link_hijo.png); }
.context-menu-item.icon-interface_link_parent { background-image: url(../../images/icono_link_padre.png); }
.context-menu-item.icon-interface_link_cancel { background-image: url(../../images/link_abortar.png); }
.context-menu-item.icon {
min-height: 18px;
background-repeat: no-repeat;
background-position: 4px 2px;
}
.context-menu-item.icon-edit {
background-image: url(../../images/page_white_edit.png);
}
.context-menu-item.icon-cut {
background-image: url(../../images/cut.png);
}
.context-menu-item.icon-copy {
background-image: url(../../images/page_white_copy.png);
}
.context-menu-item.icon-paste {
background-image: url(../../images/page_white_paste.png);
}
.context-menu-item.icon-delete {
background-image: url(../../images/delete.png);
}
.context-menu-item.icon-add {
background-image: url(../../images/page_white_add.png);
}
.context-menu-item.icon-quit {
background-image: url(../../images/door.png);
}
.context-menu-item.icon-refresh {
background-image: url(../../images/refresh.png);
}
.context-menu-item.icon-center {
background-image: url(../../images/set_center.png);
}
.context-menu-item.icon-details {
background-image: url(../../images/show_details.png);
}
.context-menu-item.icon-children {
background-image: url(../../images/children.png);
}
.context-menu-item.icon-cancel_set_parent {
background-image: url(../../images/link_delete.png);
}
.context-menu-item.icon-set_parent {
background-image: url(../../images/father.png);
}
.context-menu-item.icon-add_node {
background-image: url(../../images/add.png);
}
.context-menu-item.icon-refresh_holding_area {
background-image: url(../../images/refresh_holding_area.png);
}
.context-menu-item.icon-restart_map {
background-image: url(../../images/reset.png);
}
.context-menu-item.icon-interface_link_children {
background-image: url(../../images/icono_link_hijo.png);
}
.context-menu-item.icon-interface_link_parent {
background-image: url(../../images/icono_link_padre.png);
}
.context-menu-item.icon-interface_link_cancel {
background-image: url(../../images/link_abortar.png);
}
/* vertically align inside labels */
.context-menu-input > label > * { vertical-align: top; }
.context-menu-input > label > * {
vertical-align: top;
}
/* position checkboxes and radios as icons */
.context-menu-input > label > input[type="checkbox"],

View File

@ -6,8 +6,8 @@
h1#log_title {
font-size: 18px;
margin-bottom: 0px;
color: #FFF !important;
width:300px;
color: #fff !important;
width: 300px;
}
div#log_msg {
@ -18,7 +18,7 @@ div#error_buttons {
margin-top: 20px;
}
div#error_buttons a{
div#error_buttons a {
margin: 14px;
}
@ -65,9 +65,9 @@ div#error_buttons a{
}*/
p.log_in {
color: #FFF !important;
color: #fff !important;
padding: 0px 10px;
width:300px;
width: 300px;
}
h1#log_f {
@ -104,13 +104,10 @@ div#login_f {
width: 100%;
position: absolute;
bottom: 10px;
color: #FFF;
color: #fff;
text-align: center;
}
/*
* ---------------------------------------------------------------------
* - LOGIN PAGE -
@ -118,42 +115,42 @@ div#login_f {
*/
/* --- Login page - header --- */
div#header_login{
div#header_login {
width: 100%;
height: 65px;
background-color: rgba(255, 255, 255, 0.06);
}
div#icon_custom_pandora{
div#icon_custom_pandora {
float: left;
margin-top: 5px;
margin-left: 4%;
}
div#list_icon_docs_support{
div#list_icon_docs_support {
float: right;
margin-top: 8px;
margin-right: 4%;
}
div#list_icon_docs_support ul{
div#list_icon_docs_support ul {
margin-top: 5px;
}
div#list_icon_docs_support ul li{
div#list_icon_docs_support ul li {
display: inline-block;
color:white;
color: white;
vertical-align: middle;
margin-right: 5px;
font-size: 10pt;
}
li#li_margin_left{
li#li_margin_left {
margin-left: 30px;
}
/* --- Login page - form --- */
div.container_login{
div.container_login {
margin-top: 10%;
margin-left: 5%;
margin-right: 5%;
@ -162,11 +159,11 @@ div.container_login{
div.login_page {
width: 35%;
min-height: 600px;
float:left;
float: left;
}
div.login_page form {
border-right:1px solid #868686;
border-right: 1px solid #868686;
padding-top: 30px;
padding-bottom: 50px;
min-width: 400px;
@ -178,7 +175,7 @@ div.login_logo_icon {
text-align: center;
}
div.login_logo_icon img{
div.login_logo_icon img {
margin: 0 auto;
width: 150px;
}
@ -189,22 +186,22 @@ div.login_pass {
margin: 0 auto;
width: 70%;
height: 40px;
background-color: rgba(255, 255, 255, 0.20) !important;
background-color: rgba(255, 255, 255, 0.2) !important;
margin-bottom: 25px;
min-width: 260px;
}
div.login_nick img,
div.login_pass img{
div.login_pass img {
vertical-align: middle;
margin: 3px;
}
div.login_nick input,
div.login_pass input{
background-color: rgba(255, 255, 255, 0.00) !important;
border:0px !important;
color:white !important;
div.login_pass input {
background-color: rgba(255, 255, 255, 0) !important;
border: 0px !important;
color: white !important;
border-radius: 0px;
width: 89%;
height: 40px;
@ -213,7 +210,7 @@ div.login_pass input{
}
div.login_nick input:focus,
div.login_pass input:focus{
div.login_pass input:focus {
outline: none;
}
@ -228,27 +225,27 @@ div.login_pass input:-webkit-autofill:active {
transition: background-color 10000s ease-in-out 0s;
-webkit-box-shadow: 0 0 0px 0px transparent inset !important;
-webkit-text-fill-color: white !important;
border:0px;
border: 0px;
width: 89%;
}
div.login_nick input::-webkit-input-placeholder,
div.login_pass input::-webkit-input-placeholder {
color:white;
color: white;
}
div.login_pass img,
div.login_nick img{
div.login_nick img {
width: 30px;
}
div.login_pass div,
div.login_nick div{
div.login_nick div {
float: left;
width: 11%;
}
div.login_button{
div.login_button {
margin: 0 auto;
width: 70%;
height: 40px;
@ -261,7 +258,7 @@ div.login_button input {
width: 100%;
background-color: rgb(25, 25, 25) !important;
text-align: center;
border:0px;
border: 0px;
border-radius: 0px;
height: 40px;
padding: 0px;
@ -272,38 +269,38 @@ div.login_button input {
div.login_data {
width: 65%;
min-height: 600px;
float:left;
float: left;
}
div.text_banner_login{
div.text_banner_login {
width: 100%;
margin-bottom: 60px;
color: white;
text-align: center;
}
div.text_banner_login span{
div.text_banner_login span {
width: 100%;
}
span.span1{
span.span1 {
font-size: 3vw;
font-family: 'lato-thin';
font-family: "lato-thin";
color: white;
}
span.span2{
span.span2 {
font-size: 3vw;
font-family: 'lato-bolder';
font-family: "lato-bolder";
color: white;
}
div.img_banner_login{
div.img_banner_login {
width: 100%;
text-align: center;
}
div.img_banner_login img{
div.img_banner_login img {
max-width: 70%;
min-width: 70%;
max-height: 50%;
@ -311,58 +308,55 @@ div.img_banner_login img{
}
@media all and (max-width: 1200px) {
span.span1{
span.span1 {
font-size: 30pt;
}
span.span2{
span.span2 {
font-size: 30pt;
}
}
/* --- Login page - modal windows --- */
div.content_alert{
div.content_alert {
width: 98%;
margin-top: 20px;
}
div.icon_message_alert{
div.icon_message_alert {
float: left;
width: 25%;
text-align: center;
}
div.icon_message_alert img{
div.icon_message_alert img {
width: 85px;
}
div.content_message_alert{
div.content_message_alert {
width: 75%;
float: right;
}
div.text_message_alert{
div.text_message_alert {
width: 100%;
margin-top: 10px;
}
div.text_message_alert h1{
div.text_message_alert h1 {
margin: 0px;
}
div.text_message_alert p{
div.text_message_alert p {
margin: 0px;
font-size: 10.3pt;
line-height: 14pt;
}
div.button_message_alert{
div.button_message_alert {
width: 100%;
}
div.button_message_alert input{
div.button_message_alert input {
float: right;
width: 87px;
height: 33px;
@ -374,19 +368,19 @@ div.button_message_alert input{
font-size: 10pt;
}
div.form_message_alert{
div.form_message_alert {
width: 90%;
clear: both;
padding-top: 20px;
padding-left: 40px;
}
div.form_message_alert ul li{
div.form_message_alert ul li {
display: inline-block;
padding: 10px;
}
div.form_message_alert ul li input{
div.form_message_alert ul li input {
border: none;
background-color: #dadada !important;
border-radius: 0px;
@ -395,17 +389,17 @@ div.form_message_alert ul li input{
padding-left: 5px;
}
div.form_message_alert ul li label{
div.form_message_alert ul li label {
font-size: 10pt;
padding-right: 20px;
}
div.form_message_alert h4{
div.form_message_alert h4 {
margin: 0px;
margin-bottom: 10px;
}
div.button_message_alert_form input{
div.button_message_alert_form input {
float: right;
width: 87px;
height: 33px;

View File

@ -34,8 +34,8 @@
}
.menu li a {
color: #FFFFFF;
text-decoration:none;
color: #ffffff;
text-decoration: none;
}
li:hover ul {
@ -258,8 +258,6 @@ ul li a:hover {
} /* Hover Styles */
/*li ul li a { padding: 2px 5px; } Sub Menu Styles */
/*
* ---------------------------------------------------------------------
* - MAIN LEFT MENU and SUBMENU -
@ -269,7 +267,7 @@ ul li a:hover {
font-weight: bold;
}
.menu_icon{
.menu_icon {
transition-property: background-color;
transition-duration: 0.5s;
transition-timing-function: ease-out;
@ -284,7 +282,7 @@ ul li a:hover {
-o-transition-timing-function: ease-out;
}
.menu_icon:hover{
.menu_icon:hover {
transition-property: background-color;
transition-duration: 0.5s;
transition-timing-function: ease-out;
@ -299,7 +297,7 @@ ul li a:hover {
-o-transition-timing-function: ease-out;
background-color: #585858 !important;
}
.submenu_not_selected:hover{
.submenu_not_selected:hover {
transition-property: background-color;
transition-duration: 0.5s;
transition-timing-function: ease-out;
@ -314,10 +312,10 @@ ul li a:hover {
-o-transition-timing-function: ease-out;
background-color: #585858 !important;
}
.submenu_selected:hover{
.submenu_selected:hover {
background-color: #585858 !important;
}
.sub_subMenu{
.sub_subMenu {
transition-property: background-color;
transition-duration: 0.5s;
transition-timing-function: ease-out;
@ -330,7 +328,7 @@ ul li a:hover {
-o-transition-property: background-color;
-o-transition-duration: 0.5s;
}
.sub_subMenu:hover{
.sub_subMenu:hover {
transition-property: background-color;
transition-duration: 0.5s;
transition-timing-function: ease-out;
@ -346,7 +344,7 @@ ul li a:hover {
}
.menu li.selected {
box-shadow: inset 4px 0 #80BA27;
box-shadow: inset 4px 0 #80ba27;
}
/* creo que no se usan
.is_submenu2 li {
@ -368,7 +366,8 @@ ul li a:hover {
background-color: #585858 !important;
}
.menu li, .menu .li.not_selected {
.menu li,
.menu .li.not_selected {
border-radius: 0px 0px 0px 0px;
display: block;
min-height: 35px;
@ -376,14 +375,15 @@ ul li a:hover {
vertical-align: middle;
}
.godmode, .menu_icon ul li{
.godmode,
.menu_icon ul li {
background-color: #222;
}
.operation .menu_icon ul li{
.operation .menu_icon ul li {
background-color: #333;
}
.godmode{
.godmode {
border-top: 4px solid #777 !important;
padding-bottom: 4px !important;
border-bottom-right-radius: 5px;

File diff suppressed because it is too large Load Diff

View File

@ -113,7 +113,7 @@
<div style='height: 10px'>
<?php
$version = '7.0NG.731';
$build = '190206';
$build = '190212';
$banner = "v$version Build $build";
error_reporting(0);

View File

@ -634,7 +634,7 @@ echo '</div>';
enterprise_hook('close_meta_frame');
ui_require_css_file ('cluetip','include/styles/js/');
ui_require_css_file('cluetip', 'include/styles/js/');
ui_require_jquery_file('cluetip');
?>

View File

@ -323,7 +323,7 @@ ui_toggle(
}
</script>
<?php
ui_require_css_file('cluetip','include/styles/js/');
ui_require_css_file('cluetip', 'include/styles/js/');
ui_require_jquery_file('cluetip');
echo "<div id='module_details_dialog' style='display: none;'></div>";

View File

@ -681,7 +681,7 @@ if (empty($traps)) {
ui_require_css_file('pandora_enterprise', ENTERPRISE_DIR.'/include/styles/');
ui_require_css_file('pandora_dashboard', ENTERPRISE_DIR.'/include/styles/');
ui_require_css_file('cluetip','include/styles/js/');
ui_require_css_file('cluetip', 'include/styles/js/');
ui_require_jquery_file('countdown');
ui_require_javascript_file('pandora_dashboard', ENTERPRISE_DIR.'/include/javascript/');

View File

@ -11,7 +11,6 @@
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
ui_require_css_file('tree');
ui_require_css_file('fixed-bottom-box');

View File

@ -3,7 +3,7 @@
#
%define name pandorafms_console
%define version 7.0NG.731
%define release 190206
%define release 190212
# User and Group under which Apache is running
%define httpd_name httpd

View File

@ -3,7 +3,7 @@
#
%define name pandorafms_console
%define version 7.0NG.731
%define release 190206
%define release 190212
%define httpd_name httpd
# User and Group under which Apache is running
%define httpd_name apache2

View File

@ -1,5 +1,5 @@
package: pandorafms-server
Version: 7.0NG.731-190206
Version: 7.0NG.731-190212
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="7.0NG.731-190206"
pandora_version="7.0NG.731-190212"
package_cpan=0
package_pandora=1

View File

@ -45,7 +45,7 @@ our @EXPORT = qw(
# version: Defines actual version of Pandora Server for this module only
my $pandora_version = "7.0NG.731";
my $pandora_build = "190206";
my $pandora_build = "190212";
our $VERSION = $pandora_version." ".$pandora_build;
# Setup hash

View File

@ -32,7 +32,7 @@ our @ISA = qw(Exporter);
# version: Defines actual version of Pandora Server for this module only
my $pandora_version = "7.0NG.731";
my $pandora_build = "190206";
my $pandora_build = "190212";
our $VERSION = $pandora_version." ".$pandora_build;
our %EXPORT_TAGS = ( 'all' => [ qw() ] );

View File

@ -3,7 +3,7 @@
#
%define name pandorafms_server
%define version 7.0NG.731
%define release 190206
%define release 190212
Summary: Pandora FMS Server
Name: %{name}

View File

@ -3,7 +3,7 @@
#
%define name pandorafms_server
%define version 7.0NG.731
%define release 190206
%define release 190212
Summary: Pandora FMS Server
Name: %{name}

View File

@ -9,7 +9,7 @@
# **********************************************************************
PI_VERSION="7.0NG.731"
PI_BUILD="190206"
PI_BUILD="190212"
MODE=$1
if [ $# -gt 1 ]; then

View File

@ -34,7 +34,7 @@ use PandoraFMS::Config;
use PandoraFMS::DB;
# version: define current version
my $version = "7.0NG.731 PS190206";
my $version = "7.0NG.731 PS190212";
# Pandora server configuration
my %conf;
@ -171,11 +171,6 @@ sub pandora_purgedb ($$) {
if (!defined($conf->{'_string_purge'})){
$conf->{'_string_purge'} = 7;
}
# Update alert with last_fired older than today - time_threshold
my @templates = get_db_rows ($dbh, 'SELECT t1.id,t1.time_threshold FROM talert_templates t1 WHERE EXISTS ( SELECT * FROM talert_template_modules t2 WHERE t1.id = t2.id_alert_template );');
foreach my $template(@templates) {
db_do($dbh, 'UPDATE talert_template_modules SET times_fired = 0 WHERE id_alert_template = ? AND times_fired > 0 AND last_fired < (? - ?)',$template->{'id'},time(),$template->{'time_threshold'});
}
if ($conf->{'_string_purge'} > 0) {
$ulimit_access_timestamp = time() - 86400;

View File

@ -36,7 +36,7 @@ use Encode::Locale;
Encode::Locale::decode_argv;
# version: define current version
my $version = "7.0NG.731 PS190206";
my $version = "7.0NG.731 PS190212";
# save program name for logging
my $progname = basename($0);
@ -137,6 +137,7 @@ sub help_screen{
help_screen_line('--delete_cluster_item', '<id_item>', 'Deleting cluster item');
help_screen_line('--get_cluster_status', '<id_cluster>', 'Getting cluster status');
help_screen_line('--set_disabled_and_standby', '<id_agent> <id_node> <value>', 'Overwrite and disable and standby status');
help_screen_line('--reset_agent_counts', '<id_agent>', 'Resets module counts and alert counts in the agents');
print "\nMODULES:\n\n" unless $param ne '';
help_screen_line('--create_data_module', "<module_name> <module_type> <agent_name> [<description> <module_group> \n\t <min> <max> <post_process> <interval> <warning_min> <warning_max> <critical_min> <critical_max> \n\t <history_data> <definition_file> <warning_str> <critical_str>\n\t <unknown_events> <ff_threshold> <each_ff> <ff_threshold_normal>\n\t <ff_threshold_warning> <ff_threshold_critical> <ff_timeout> <warning_inverse> <critical_inverse>\n\t <critical_instructions> <warning_instructions> <unknown_instructions>]", 'Add data server module to agent');
help_screen_line('--create_web_module', "<module_name> <module_type> <agent_name> [<description> <module_group> \n\t <min> <max> <post_process> <interval> <warning_min> <warning_max> <critical_min> <critical_max> \n\t <history_data> <retries> <requests> <agent_browser_id> <auth_server> <auth_realm> <definition_file>\n\t <proxy_url> <proxy_auth_login> <proxy_auth_password> <warning_str> <critical_str>\n\t <unknown_events> <ff_threshold> <each_ff> <ff_threshold_normal>\n\t <ff_threshold_warning> <ff_threshold_critical> <ff_timeout> <warning_inverse> <critical_inverse>\n\t <critical_instructions> <warning_instructions> <unknown_instructions>].\n\t The valid data types are web_data, web_proc, web_content_data or web_content_string", 'Add web server module to agent');
@ -6375,6 +6376,10 @@ sub pandora_manage_main ($$$) {
param_check($ltotal, 3, 1);
cli_set_disabled_and_standby();
}
elsif ($param eq '--reset_agent_counts') {
param_check($ltotal, 1, 0);
cli_reset_agent_counts();
}
else {
print_log "[ERROR] Invalid option '$param'.\n\n";
$param = '';
@ -6979,3 +6984,16 @@ sub cli_set_disabled_and_standby() {
my $exit_code = (defined($result) && "$result" eq "1") ? "1" : "0";
print "\n$exit_code\n";
}
##############################################################################
# Resets module counts and alert counts in the agents.
# Related option: --reset_agent_counts
##############################################################################
sub cli_reset_agent_counts() {
my $agent_id = @ARGV[2];
my $result = api_call(\%conf,'set', 'reset_agent_counts', $agent_id);
print "$result \n\n ";
}