Merge branch 'develop' into 'ent-6846-Network-tools-al-setup-general'

# Conflicts:
#   pandora_console/extras/delete_files/delete_files.txt
This commit is contained in:
José González 2021-03-10 10:17:27 +00:00
commit b7bd28ba07
46 changed files with 217 additions and 213 deletions

View File

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

@ -1016,7 +1016,7 @@ my $Sem = undef;
my $ThreadSem = undef;
use constant AGENT_VERSION => '7.0NG.752';
use constant AGENT_BUILD => '210309';
use constant AGENT_BUILD => '210310';
# 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.752
%define release 210309
%define release 210310
Summary: Pandora FMS Linux agent, PERL version
Name: %{name}

View File

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

View File

@ -10,7 +10,7 @@
# **********************************************************************
PI_VERSION="7.0NG.752"
PI_BUILD="210309"
PI_BUILD="210310"
OS_NAME=`uname -s`
FORCE=0

View File

@ -186,7 +186,7 @@ UpgradeApplicationID
{}
Version
{210309}
{210310}
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.752(Build 210309)")
#define PANDORA_VERSION ("7.0NG.752(Build 210310)")
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.752(Build 210309))"
VALUE "ProductVersion", "(7.0NG.752(Build 210310))"
VALUE "FileVersion", "1.0.0.0"
END
END

View File

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

View File

@ -1,6 +1,7 @@
operation/servers/recon_view.php
operation/users/webchat.php
operation/events/event_statistics.php
operation/events/events_marquee.php
include/javascript/webchat.js
attachment/pandora_chat.log.json.txt
attachment/pandora_chat.user_list.json.txt

View File

@ -1,5 +1,8 @@
START TRANSACTION;
ALTER TABLE `treport_content` ADD COLUMN `summary` tinyint(1) DEFAULT 0;
ALTER TABLE `treport_content_template` ADD COLUMN `summary` tinyint(1) DEFAULT 0;
ALTER TABLE `tinventory_alert` ADD COLUMN `alert_groups` TEXT NOT NULL;
UPDATE `tinventory_alert` t1 INNER JOIN `tinventory_alert` t2 ON t1.id = t2.id SET t1.alert_groups = t2.id_group;

View File

@ -865,6 +865,7 @@ ALTER TABLE `treport_content_template` ADD COLUMN `agent_min_value` TINYINT(1) D
ALTER TABLE `treport_content_template` ADD COLUMN `current_month` TINYINT(1) DEFAULT '1';
ALTER TABLE `treport_content_template` ADD COLUMN `failover_mode` tinyint(1) DEFAULT '1';
ALTER TABLE `treport_content_template` ADD COLUMN `failover_type` tinyint(1) DEFAULT '1';
ALTER TABLE `treport_content_template` ADD COLUMN `summary` tinyint(1) DEFAULT 0;
ALTER TABLE `treport_content_template` ADD COLUMN `uncompressed_module` TINYINT DEFAULT '0';
ALTER TABLE `treport_content_template` MODIFY COLUMN `historical_db` tinyint(1) unsigned NOT NULL DEFAULT '0',
MODIFY COLUMN `lapse_calc` tinyint(1) unsigned NOT NULL DEFAULT '0',
@ -1725,6 +1726,7 @@ ALTER TABLE `treport_content` ADD COLUMN `agent_min_value` TINYINT(1) DEFAULT '1
ALTER TABLE `treport_content` ADD COLUMN `current_month` TINYINT(1) DEFAULT '1';
ALTER TABLE `treport_content` ADD COLUMN `failover_mode` tinyint(1) DEFAULT '0';
ALTER TABLE `treport_content` ADD COLUMN `failover_type` tinyint(1) DEFAULT '0';
ALTER TABLE `treport_content` ADD COLUMN `summary` tinyint(1) DEFAULT 0;
ALTER table `treport_content` MODIFY COLUMN `name` varchar(300) NULL;
ALTER TABLE `treport_content` ADD COLUMN `uncompressed_module` TINYINT DEFAULT '0';
ALTER TABLE `treport_content` MODIFY COLUMN `historical_db` tinyint(1) unsigned NOT NULL DEFAULT '0',

View File

@ -185,6 +185,7 @@ switch ($action) {
$dyn_height = 230;
$landscape = false;
$pagebreak = false;
$summary = 0;
break;
case 'save':
@ -314,11 +315,12 @@ switch ($action) {
$idCustomGraph = $item['id_gs'];
break;
case 'availability_graph':
$summary = $item['summary'];
case 'SLA':
case 'SLA_weekly':
case 'SLA_monthly':
case 'SLA_hourly':
case 'availability_graph':
$description = $item['description'];
$only_display_wrong = $item['only_display_wrong'];
$monday = $item['monday'];
@ -2750,6 +2752,27 @@ $class = 'databox filters';
</td>
</tr>
<tr id="row_summary" style="" class="datos">
<td style="font-weight:bold;">
<?php
echo __('Summary');
?>
</td>
<td style="">
<?php
html_print_checkbox_switch(
'summary',
1,
$summary,
false,
false,
'',
false
);
?>
</td>
</tr>
<tr id="row_filter_search" style="" class="datos">
<td style="font-weight:bold;"><?php echo __('Include filter'); ?></td>
<td>
@ -5116,6 +5139,7 @@ function chooseType() {
$("#row_current_month").hide();
$("#row_failover_mode").hide();
$("#row_failover_type").hide();
$("#row_summary").hide();
$("#row_working_time").hide();
$("#row_working_time_compare").hide();
$("#row_only_display_wrong").hide();
@ -5310,6 +5334,7 @@ function chooseType() {
if(failover_checked){
$("#row_failover_type").show();
}
$("#row_summary").show();
break;
case 'module_histogram_graph':

View File

@ -1518,12 +1518,16 @@ switch ($action) {
$values['text'] = $intervals;
break;
case 'availability_graph':
$values['summary'] = get_parameter(
'summary',
0
);
case 'SLA_monthly':
case 'SLA_weekly':
case 'SLA_hourly':
case 'SLA_services':
case 'SLA':
case 'availability_graph':
$values['period'] = get_parameter('period');
$values['top_n'] = get_parameter(
'combo_sla_sort_options',
@ -2570,6 +2574,11 @@ switch ($action) {
REPORT_FAILOVER_TYPE_NORMAL
);
$values['summary'] = get_parameter(
'summary',
0
);
$style = [];
$style['show_in_same_row'] = get_parameter(
'show_in_same_row',

View File

@ -45,6 +45,11 @@ enterprise_include_once('include/functions_cron.php');
class ConsoleSupervisor
{
/**
* Minimum modules to check performance.
*/
public const MIN_PERFORMANCE_MODULES = 100;
/**
* Show if console supervisor is enabled or not.
*
@ -1143,6 +1148,12 @@ class ConsoleSupervisor
$max_grown = ($total_modules[$queue['server_type']] * 0.40);
}
if ($total_modules[$queue['server_type']] < self::MIN_PERFORMANCE_MODULES) {
$this->cleanNotifications('NOTIF.SERVER.QUEUE.'.$key);
// Skip.
continue;
}
// Compare queue increments in a not over 900 seconds.
if (empty($previous[$key]['modules'])
|| ($time - $previous[$key]['utime']) > 900

View File

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

View File

@ -1639,12 +1639,12 @@ function config_update_config()
case 'module_library':
$module_library_user = get_parameter('module_library_user');
if ($module_library_user == '' || !config_update_value('module_library_user', $module_library_user)) {
if (!config_update_value('module_library_user', $module_library_user)) {
$error_update[] = __('User');
}
$module_library_password = get_parameter('module_library_password');
if ($module_library_password == '' || !config_update_value('module_library_password', $module_library_password)) {
if (!config_update_value('module_library_password', $module_library_password)) {
$error_update[] = __('Password');
}
break;

View File

@ -4839,19 +4839,22 @@ function events_page_general($event)
$data[0] = __('Acknowledged by');
if ($event['estado'] == 1) {
$user_ack = db_get_value(
'fullname',
'tusuario',
'id_user',
$event['id_usuario']
);
if (empty($event['id_usuario']) === true) {
$user_ack = __('Autovalidated');
} else {
$user_ack = db_get_value(
'fullname',
'tusuario',
'id_user',
$event['id_usuario']
);
if (empty($user_ack) === true) {
$user_ack = $event['id_usuario'];
if (empty($user_ack) === true) {
$user_ack = $event['id_usuario'];
}
}
$date_ack = io_safe_output($event['ack_utimestamp']);
$data[1] = $user_ack.' ('.$date_ack.')';
$data[1] = $user_ack.'&nbsp;(&nbsp;'.date($config['date_format'], $event['ack_utimestamp_raw']).'&nbsp;)&nbsp;';
} else {
$data[1] = '<i>'.__('N/A').'</i>';
}

View File

@ -4008,7 +4008,7 @@ function graph_graphic_agentevents(
$width,
$height,
$period=0,
$homeurl,
$homeurl='',
$return=false,
$from_agent_view=false,
$widgets=false,

View File

@ -7551,6 +7551,7 @@ function reporting_availability_graph(
$return['pagebreak'] = $content['pagebreak'];
$return['description'] = $content['description'];
$return['failover_type'] = $content['failover_type'];
$return['summary'] = $content['summary'];
$return['date'] = reporting_get_date_text($report, $content);
// Get chart.
@ -7669,24 +7670,22 @@ function reporting_availability_graph(
}
foreach ($sla_failover as $k_sla => $v_sla) {
if ($content['failover_type'] == REPORT_FAILOVER_TYPE_NORMAL) {
$sla_array = data_compare_24x7(
$v_sla,
$content,
$report['datetime'],
$slice
);
$sla_array = data_compare_24x7(
$v_sla,
$content,
$report['datetime'],
$slice
);
$return = prepare_data_for_paint(
$v_sla,
$sla_array,
$content,
$report['datetime'],
$return,
$k_sla,
$pdf
);
}
$return = prepare_data_for_paint(
$v_sla,
$sla_array,
$content,
$report['datetime'],
$return,
$k_sla,
$pdf
);
if (isset($v_sla['compare']) === true
&& empty($v_sla['compare']) === false

View File

@ -3835,6 +3835,10 @@ function reporting_html_availability_graph($table, $item, $pdf=0)
$tables_chart = '';
$total_values = 0;
$count_total_charts = 0;
if (isset($item['failed']) === true && empty($item['failed']) === false) {
$tables_chart .= $item['failed'];
} else {
@ -3896,6 +3900,8 @@ function reporting_html_availability_graph($table, $item, $pdf=0)
$table1->data[$k_chart][0] .= ' (24 x 7)';
}
$total_values += $sla_value;
$count_total_charts++;
$table1->data[$k_chart][1] = $chart['chart'];
$table1->data[$k_chart][2] = "<span style = 'font-weight: bold; font-size: ".$font_size.'; color: '.$color."'>".$sla_value.'</span><br/>';
@ -3922,7 +3928,7 @@ function reporting_html_availability_graph($table, $item, $pdf=0)
|| $item['data'][$k_chart]['compare'] === 1)
) {
$table1 = new stdClass();
$table1->width = '99%';
$table1->width = '100%';
$table1->data = [];
$table1->size = [];
$table1->size[0] = '10%';
@ -3971,6 +3977,8 @@ function reporting_html_availability_graph($table, $item, $pdf=0)
case 'result':
default:
$total_values += $sla_value;
$count_total_charts++;
$title = '<b>'.__('Result').'</b>';
$sla_value_text = "<span style = 'font-weight: bold; font-size: ".$font_size.' !important; color: '.$color."'>".$sla_value.'</span>';
$checks_resume_text = '<span style = "font-size: '.$font_mini.';">';
@ -3996,6 +4004,27 @@ function reporting_html_availability_graph($table, $item, $pdf=0)
}
}
if ((bool) $item['summary'] === true) {
$table_summary = new stdClass();
$table_summary->width = '20%';
$table_summary->size = [];
$table_summary->size[0] = '50%';
$table_summary->size[1] = '50%';
$table_summary->data = [];
$table_summary->data[0][0] = '<b>'.__('Summary').'</b>';
$table_summary->data[0][1] = '<span style = "font-weight: bold; font-size: '.$font_size.' !important;">';
$table_summary->data[0][1] .= sla_truncate($total_values / $count_total_charts);
$table_summary->data[0][1] .= ' %';
$table_summary->data[0][1] .= '</span>';
$tables_chart .= html_print_table(
$table_summary,
true
);
}
if ($item['type'] == 'availability_graph') {
// Table_legend_graphs.
$table2 = new stdClass();

View File

@ -1073,7 +1073,25 @@ var TreeController = {
$node.append($group);
}
_.each(data.tree, function(element) {
// Get the main values of the tree.
var rawTree = Object.values(data.tree);
// Sorting tree by description (services.treeview_services.php).
rawTree.sort(function(a, b) {
// Only the services are ordered since only they have the elementDescription property.
if (a.elementDescription && b.elementDescription) {
var x = a.elementDescription.toLowerCase();
var y = b.elementDescription.toLowerCase();
if (x < y) {
return -1;
}
if (x > y) {
return 1;
}
}
return 0;
});
_.each(rawTree, function(element) {
element.jqObject = _processNode($group, element);
});

View File

@ -73,6 +73,7 @@ final class EventsHistory extends Item
* Fetch a vc item data structure from the database using a filter.
*
* @param array $filter Filter of the Visual Console Item.
* @param float $ratio Ratio visual console in dashboards.
*
* @return array The Visual Console Item data structure stored into the DB.
* @throws \InvalidArgumentException When an agent Id cannot be found.
@ -124,18 +125,31 @@ final class EventsHistory extends Item
$data['height'] = 11;
}
// Use the same HTML output as the old VC.
$html = \graph_graphic_moduleevents(
$agentId,
$moduleId,
100,
(int) $data['height'],
static::extractMaxTime($data),
'',
true,
1,
$data['width']
);
if (empty($moduleId) === true) {
$html = \graph_graphic_agentevents(
$agentId,
100,
(int) $data['height'],
static::extractMaxTime($data),
'',
true,
false,
500
);
} else {
// Use the same HTML output as the old VC.
$html = \graph_graphic_moduleevents(
$agentId,
$moduleId,
100,
(int) $data['height'],
static::extractMaxTime($data),
'',
true,
1,
$data['width']
);
}
$data['html'] = $html;
@ -211,7 +225,7 @@ final class EventsHistory extends Item
'return' => true,
'module_input' => true,
'module_name' => 'moduleId',
'module_none' => false,
'module_none' => true,
],
];
@ -227,6 +241,8 @@ final class EventsHistory extends Item
'sort' => false,
'agent_id' => $values['agentId'],
'metaconsole_id' => $values['metaconsoleId'],
'nothing' => '--',
'nothing_value' => 0,
],
];

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

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

View File

@ -436,7 +436,7 @@ if ($not_found) {
__('Save networkmap'),
'crt',
false,
'class="sub next"'
'class="sub next" onclick="if (typeof(sent) == \'undefined\') {sent = 1; return true;} else {return false;}"'
);
}

View File

@ -140,8 +140,11 @@ $text_module = get_parameter(
$filter['module_search']
);
$id_agent_module = get_parameter(
'filter[id_agent_module]',
$filter['id_agent_module']
'id_agent_module',
get_parameter(
'filter[id_agent_module]',
$filter['id_agent_module']
)
);
$pagination = get_parameter(
'filter[pagination]',
@ -374,6 +377,9 @@ if (is_ajax()) {
}
$tmp->agent_name = io_safe_output($tmp->agent_name);
$tmp->ack_utimestamp_raw = strtotime($tmp->ack_utimestamp);
$tmp->ack_utimestamp = ui_print_timestamp(
$tmp->ack_utimestamp,
true
@ -766,10 +772,6 @@ if ($pure) {
$rss['active'] = false;
$rss['text'] = '<a class="events_link" href="operation/events/events_rss.php?user='.$config['id_user'].'&hashup='.$hashup.'&">'.html_print_image('images/rss.png', true, ['title' => __('RSS Events')]).'</a>';
// Marquee.
$marquee['active'] = false;
$marquee['text'] = '<a class="events_link" href="operation/events/events_marquee.php?">'.html_print_image('images/heart.png', true, ['title' => __('Marquee display')]).'</a>';
// CSV.
$csv['active'] = false;
$csv['text'] = '<a class="events_link" href="operation/events/export_csv.php?'.$filter_b64.'">'.html_print_image('images/csv_mc.png', true, ['title' => __('Export to CSV file')]).'</a>';

View File

@ -1,127 +0,0 @@
<?php
// Pandora FMS - http://pandorafms.com
// ==================================================
// Copyright (c) 2005-2021 Artica Soluciones Tecnologicas
// Please see http://pandorafms.org for full contribution list
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation for version 2.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
error_reporting(1);
// Local settings for marquee extension
$MAX_MARQUEE_EVENTS = 10;
$MARQUEE_INTERVAL = 90;
$MARQUEE_FONT_SIZE = '32px';
$MARQUEE_SPEED = 9;
$output = '';
// Don't start a session before this import.
// The session is configured and started inside the config process.
require_once '../../include/config.php';
require_once '../../include/functions.php';
require_once '../../include/functions_db.php';
require_once '../../include/functions_api.php';
require_once '../../include/functions_users.php';
global $config;
$config['id_user'] = $_SESSION['id_usuario'];
// http://es2.php.net/manual/en/ref.session.php#64525
// Session locking concurrency speedup!
check_login();
$event_a = check_acl($config['id_user'], 0, 'ER');
$event_w = check_acl($config['id_user'], 0, 'EW');
$event_m = check_acl($config['id_user'], 0, 'EM');
$access = ($event_a == true) ? 'ER' : (($event_w == true) ? 'EW' : (($event_m == true) ? 'EM' : 'ER'));
if (!isInACL($_SERVER['REMOTE_ADDR'])) {
db_pandora_audit(
'ACL Violation',
'Trying to access marquee without ACL Access'
);
include '../../general/noaccess.php';
exit;
}
$groups = users_get_groups($config['id_user'], $access);
// Otherwise select all groups the user has rights to.
if (!empty($groups)) {
$sql_group_filter = ' AND id_grupo IN ('.implode(',', array_keys($groups)).')';
} else {
$sql_group_filter = '';
}
// Skip system messages if user is not PM
if (!check_acl($config['id_user'], 0, 'PM')) {
$sql_group_filter .= ' AND id_grupo != 0';
}
switch ($config['dbtype']) {
case 'mysql':
$sql = "SELECT evento, timestamp, id_agente
FROM tevento
WHERE 1=1 $sql_group_filter
ORDER BY utimestamp DESC
LIMIT 0 , $MAX_MARQUEE_EVENTS";
break;
case 'postgresql':
$sql = "SELECT evento, timestamp, id_agente
FROM tevento
WHERE 1=1 $sql_group_filter
ORDER BY utimestamp DESC
LIMIT $MAX_MARQUEE_EVENTS OFFSET 0";
break;
case 'oracle':
$sql = "SELECT evento, timestamp, id_agente
FROM tevento
WHERE (1=1 $sql_group_filter ) AND rownum <= $MAX_MARQUEE_EVENTS
ORDER BY utimestamp DESC";
break;
}
$result = db_get_all_rows_sql($sql);
foreach ($result as $row) {
$agente = '';
if ($row['id_agente'] != 0) {
$agente = db_get_sql(
'SELECT alias
FROM tagente
WHERE id_agente = '.$row['id_agente']
);
$agente = $agente.' : ';
}
$output .= strtoupper($agente).$row['evento'].' , '.human_time_comparation($row['timestamp']);
$output .= '.&nbsp;&nbsp;&nbsp;&nbsp;.&nbsp;&nbsp;&nbsp;&nbsp;.&nbsp;&nbsp;&nbsp;&nbsp;.&nbsp;&nbsp;&nbsp;&nbsp;.&nbsp;&nbsp;&nbsp;&nbsp;.&nbsp;&nbsp;&nbsp;&nbsp;. ';
}
echo '<html>';
echo '<head>';
echo '<title>'.__('%s - Latest events', get_product_name()).'</title>';
$query = ui_get_full_url();
echo '<meta http-equiv="refresh" content="'.$MARQUEE_INTERVAL.'; URL='.$query.'">';
echo '<link rel="icon" href="../../'.ui_get_favicon().'" type="image/ico">';
echo '</head>';
echo "<body bgcolor='#000000' >";
echo '<br><br>';
echo '<center>';
echo "<div style='font-size:$MARQUEE_FONT_SIZE; color: #fff'>";
echo "<marquee width=95% scrollamount=$MARQUEE_SPEED>$output</marquee>";
echo '</center>';
echo '</div>';
echo '</body>';

View File

@ -430,11 +430,6 @@ if (check_acl($config['id_user'], 0, 'ER')
$sub['operation/events/events_rss.php?user='.$config['id_user'].'&amp;hashup='.$hashup.'&fb64='.$fb64]['text'] = __('RSS');
$sub['operation/events/events_rss.php?user='.$config['id_user'].'&amp;hashup='.$hashup.'&fb64='.$fb64]['id'] = 'RSS';
$sub['operation/events/events_rss.php?user='.$config['id_user'].'&amp;hashup='.$hashup.'&fb64='.$fb64]['type'] = 'direct';
// Marquee.
$sub['operation/events/events_marquee.php']['text'] = __('Marquee');
$sub['operation/events/events_marquee.php']['id'] = 'Marquee';
$sub['operation/events/events_marquee.php']['type'] = 'direct';
}
// Sound Events.

View File

@ -3,7 +3,7 @@
#
%define name pandorafms_console
%define version 7.0NG.752
%define release 210309
%define release 210310
# 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.752
%define release 210309
%define release 210310
# 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.752
%define release 210309
%define release 210310
%define httpd_name httpd
# User and Group under which Apache is running
%define httpd_name apache2

View File

@ -1560,6 +1560,7 @@ CREATE TABLE IF NOT EXISTS `treport_content` (
`failover_mode` tinyint(1) DEFAULT '1',
`failover_type` tinyint(1) DEFAULT '1',
`uncompressed_module` TINYINT DEFAULT '0',
`summary` tinyint(1) DEFAULT 0,
`landscape` tinyint(1) UNSIGNED NOT NULL default 0,
`pagebreak` tinyint(1) UNSIGNED NOT NULL default 0,
`compare_work_time` tinyint(1) UNSIGNED NOT NULL default 0,
@ -3163,6 +3164,7 @@ CREATE TABLE IF NOT EXISTS `treport_content_template` (
`current_month` TINYINT(1) DEFAULT '1',
`failover_mode` tinyint(1) DEFAULT '1',
`failover_type` tinyint(1) DEFAULT '1',
`summary` tinyint(1) DEFAULT 0,
`uncompressed_module` TINYINT DEFAULT '0',
`landscape` tinyint(1) UNSIGNED NOT NULL default 0,
`pagebreak` tinyint(1) UNSIGNED NOT NULL default 0,

View File

@ -1,5 +1,5 @@
package: pandorafms-server
Version: 7.0NG.752-210309
Version: 7.0NG.752-210310
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.752-210309"
pandora_version="7.0NG.752-210310"
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.752";
my $pandora_build = "210309";
my $pandora_build = "210310";
our $VERSION = $pandora_version." ".$pandora_build;
# Setup hash

View File

@ -34,7 +34,7 @@ our @ISA = qw(Exporter);
# version: Defines actual version of Pandora Server for this module only
my $pandora_version = "7.0NG.752";
my $pandora_build = "210309";
my $pandora_build = "210310";
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.752
%define release 210309
%define release 210310
Summary: Pandora FMS Server
Name: %{name}

View File

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

View File

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

View File

@ -35,7 +35,7 @@ use PandoraFMS::Config;
use PandoraFMS::DB;
# version: define current version
my $version = "7.0NG.752 PS210309";
my $version = "7.0NG.752 PS210310";
# Pandora server configuration
my %conf;

View File

@ -36,7 +36,7 @@ use Encode::Locale;
Encode::Locale::decode_argv;
# version: define current version
my $version = "7.0NG.752 PS210309";
my $version = "7.0NG.752 PS210310";
# save program name for logging
my $progname = basename($0);

View File

@ -68,6 +68,14 @@ export default class Service extends Item<ServiceProps> {
element.style.background = `url(${this.props.statusImageSrc}) no-repeat`;
element.style.backgroundSize = "contain";
element.style.backgroundPosition = "center";
if (this.props.encodedTitle !== null) {
element.className = "service image forced_title";
element.setAttribute("data-use_title_for_force_title", "1");
element.setAttribute(
"data-title",
decodeBase64(this.props.encodedTitle)
);
}
} else if (this.props.encodedTitle !== null) {
element.innerHTML = decodeBase64(this.props.encodedTitle);
}
@ -84,6 +92,14 @@ export default class Service extends Item<ServiceProps> {
element.style.background = `url(${this.props.statusImageSrc}) no-repeat`;
element.style.backgroundSize = "contain";
element.style.backgroundPosition = "center";
if (this.props.encodedTitle !== null) {
element.className = "service image forced_title";
element.setAttribute("data-use_title_for_force_title", "1");
element.setAttribute(
"data-title",
decodeBase64(this.props.encodedTitle)
);
}
element.innerHTML = "";
} else if (this.props.encodedTitle !== null) {
element.innerHTML = decodeBase64(this.props.encodedTitle);