mirror of
https://github.com/pandorafms/pandorafms.git
synced 2025-07-28 16:24:54 +02:00
Merge remote-tracking branch 'origin/develop' into ent-5735-9752-problema-no-inicializados-modulos-de-tipo-log
This commit is contained in:
commit
dbf1265fd0
@ -1,5 +1,5 @@
|
|||||||
package: pandorafms-agent-unix
|
package: pandorafms-agent-unix
|
||||||
Version: 7.0NG.747-200713
|
Version: 7.0NG.747-200715
|
||||||
Architecture: all
|
Architecture: all
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Section: admin
|
Section: admin
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
pandora_version="7.0NG.747-200713"
|
pandora_version="7.0NG.747-200715"
|
||||||
|
|
||||||
echo "Test if you has the tools for to make the packages."
|
echo "Test if you has the tools for to make the packages."
|
||||||
whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null
|
whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null
|
||||||
|
@ -55,7 +55,7 @@ my $Sem = undef;
|
|||||||
my $ThreadSem = undef;
|
my $ThreadSem = undef;
|
||||||
|
|
||||||
use constant AGENT_VERSION => '7.0NG.747';
|
use constant AGENT_VERSION => '7.0NG.747';
|
||||||
use constant AGENT_BUILD => '200713';
|
use constant AGENT_BUILD => '200715';
|
||||||
|
|
||||||
# Agent log default file size maximum and instances
|
# Agent log default file size maximum and instances
|
||||||
use constant DEFAULT_MAX_LOG_SIZE => 600000;
|
use constant DEFAULT_MAX_LOG_SIZE => 600000;
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
#
|
#
|
||||||
%define name pandorafms_agent_unix
|
%define name pandorafms_agent_unix
|
||||||
%define version 7.0NG.747
|
%define version 7.0NG.747
|
||||||
%define release 200713
|
%define release 200715
|
||||||
|
|
||||||
Summary: Pandora FMS Linux agent, PERL version
|
Summary: Pandora FMS Linux agent, PERL version
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
#
|
#
|
||||||
%define name pandorafms_agent_unix
|
%define name pandorafms_agent_unix
|
||||||
%define version 7.0NG.747
|
%define version 7.0NG.747
|
||||||
%define release 200713
|
%define release 200715
|
||||||
|
|
||||||
Summary: Pandora FMS Linux agent, PERL version
|
Summary: Pandora FMS Linux agent, PERL version
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
# **********************************************************************
|
# **********************************************************************
|
||||||
|
|
||||||
PI_VERSION="7.0NG.747"
|
PI_VERSION="7.0NG.747"
|
||||||
PI_BUILD="200713"
|
PI_BUILD="200715"
|
||||||
OS_NAME=`uname -s`
|
OS_NAME=`uname -s`
|
||||||
|
|
||||||
FORCE=0
|
FORCE=0
|
||||||
|
@ -186,7 +186,7 @@ UpgradeApplicationID
|
|||||||
{}
|
{}
|
||||||
|
|
||||||
Version
|
Version
|
||||||
{200713}
|
{200715}
|
||||||
|
|
||||||
ViewReadme
|
ViewReadme
|
||||||
{Yes}
|
{Yes}
|
||||||
|
@ -30,7 +30,7 @@ using namespace Pandora;
|
|||||||
using namespace Pandora_Strutils;
|
using namespace Pandora_Strutils;
|
||||||
|
|
||||||
#define PATH_SIZE _MAX_PATH+1
|
#define PATH_SIZE _MAX_PATH+1
|
||||||
#define PANDORA_VERSION ("7.0NG.747(Build 200713)")
|
#define PANDORA_VERSION ("7.0NG.747(Build 200715)")
|
||||||
|
|
||||||
string pandora_path;
|
string pandora_path;
|
||||||
string pandora_dir;
|
string pandora_dir;
|
||||||
|
@ -11,7 +11,7 @@ BEGIN
|
|||||||
VALUE "LegalCopyright", "Artica ST"
|
VALUE "LegalCopyright", "Artica ST"
|
||||||
VALUE "OriginalFilename", "PandoraAgent.exe"
|
VALUE "OriginalFilename", "PandoraAgent.exe"
|
||||||
VALUE "ProductName", "Pandora FMS Windows Agent"
|
VALUE "ProductName", "Pandora FMS Windows Agent"
|
||||||
VALUE "ProductVersion", "(7.0NG.747(Build 200713))"
|
VALUE "ProductVersion", "(7.0NG.747(Build 200715))"
|
||||||
VALUE "FileVersion", "1.0.0.0"
|
VALUE "FileVersion", "1.0.0.0"
|
||||||
END
|
END
|
||||||
END
|
END
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
package: pandorafms-console
|
package: pandorafms-console
|
||||||
Version: 7.0NG.747-200713
|
Version: 7.0NG.747-200715
|
||||||
Architecture: all
|
Architecture: all
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Section: admin
|
Section: admin
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
pandora_version="7.0NG.747-200713"
|
pandora_version="7.0NG.747-200715"
|
||||||
|
|
||||||
package_pear=0
|
package_pear=0
|
||||||
package_pandora=1
|
package_pandora=1
|
||||||
|
@ -189,6 +189,7 @@ if (file_exists('languages/'.$user_language.'.mo') === true) {
|
|||||||
echo '<div>';
|
echo '<div>';
|
||||||
switch ($type_graph_pdf) {
|
switch ($type_graph_pdf) {
|
||||||
case 'combined':
|
case 'combined':
|
||||||
|
$params['pdf'] = true;
|
||||||
echo graphic_combined_module(
|
echo graphic_combined_module(
|
||||||
$module_list,
|
$module_list,
|
||||||
$params,
|
$params,
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
/**
|
/**
|
||||||
* Pandora build version and version
|
* Pandora build version and version
|
||||||
*/
|
*/
|
||||||
$build_version = 'PC200713';
|
$build_version = 'PC200715';
|
||||||
$pandora_version = 'v7.0NG.747';
|
$pandora_version = 'v7.0NG.747';
|
||||||
|
|
||||||
// Do not overwrite default timezone set if defined.
|
// Do not overwrite default timezone set if defined.
|
||||||
|
@ -2058,6 +2058,12 @@ function graphic_combined_module(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (isset($params['pdf']) === true && $params['pdf'] === true) {
|
||||||
|
$transitionDuration = 0;
|
||||||
|
} else {
|
||||||
|
$transitionDuration = 500;
|
||||||
|
}
|
||||||
|
|
||||||
$output = stacked_gauge(
|
$output = stacked_gauge(
|
||||||
$graph_values,
|
$graph_values,
|
||||||
$new_width,
|
$new_width,
|
||||||
@ -2073,7 +2079,8 @@ function graphic_combined_module(
|
|||||||
$config['fontpath'],
|
$config['fontpath'],
|
||||||
$fixed_font_size,
|
$fixed_font_size,
|
||||||
'',
|
'',
|
||||||
$homeurl
|
$homeurl,
|
||||||
|
$transitionDuration
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -6098,3 +6098,26 @@ function ui_get_full_external_url(string $url)
|
|||||||
|
|
||||||
return $url;
|
return $url;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function ui_print_message_dialog($title, $text, $id='', $img='', $text_button='', $hidden=true)
|
||||||
|
{
|
||||||
|
if ($hidden == true) {
|
||||||
|
$style = 'display:none';
|
||||||
|
}
|
||||||
|
|
||||||
|
echo '<div id="message_dialog_'.$id.'" title="'.$title.'" style="'.$style.'">';
|
||||||
|
echo '<div class="content_dialog">';
|
||||||
|
echo '<div class="icon_message_dialog">';
|
||||||
|
echo html_print_image($img, true, ['alt' => $title, 'border' => 0]);
|
||||||
|
echo '</div>';
|
||||||
|
echo '<div class="content_message_dialog">';
|
||||||
|
echo '<div class="text_message_dialog">';
|
||||||
|
echo '<h1>'.$title.'</h1>';
|
||||||
|
echo '<p>'.$text.'</p>';
|
||||||
|
echo '<div id="err_msg"></div>';
|
||||||
|
echo '</div>';
|
||||||
|
echo '</div>';
|
||||||
|
echo '</div>';
|
||||||
|
echo '</div>';
|
||||||
|
}
|
||||||
|
@ -638,7 +638,8 @@ function stacked_gauge(
|
|||||||
$font='',
|
$font='',
|
||||||
$font_size='',
|
$font_size='',
|
||||||
$unit='',
|
$unit='',
|
||||||
$homeurl=''
|
$homeurl='',
|
||||||
|
$transitionDuration=500
|
||||||
) {
|
) {
|
||||||
include_once 'functions_d3.php';
|
include_once 'functions_d3.php';
|
||||||
|
|
||||||
@ -656,7 +657,8 @@ function stacked_gauge(
|
|||||||
$unit,
|
$unit,
|
||||||
$font,
|
$font,
|
||||||
($font_size + 2),
|
($font_size + 2),
|
||||||
$no_data_image
|
$no_data_image,
|
||||||
|
$transitionDuration
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -294,7 +294,8 @@ function d3_gauges(
|
|||||||
$unit,
|
$unit,
|
||||||
$font,
|
$font,
|
||||||
$font_size,
|
$font_size,
|
||||||
$no_data_image
|
$no_data_image,
|
||||||
|
$transitionDuration
|
||||||
) {
|
) {
|
||||||
global $config;
|
global $config;
|
||||||
|
|
||||||
@ -310,7 +311,7 @@ function d3_gauges(
|
|||||||
|
|
||||||
$output .= "<script language=\"javascript\" type=\"text/javascript\">
|
$output .= "<script language=\"javascript\" type=\"text/javascript\">
|
||||||
var data = $data;
|
var data = $data;
|
||||||
createGauges(data, '$width', '$height','$font_size','$no_data_image','$font');
|
createGauges(data, '$width', '$height','$font_size','$no_data_image','$font', '$transitionDuration');
|
||||||
</script>";
|
</script>";
|
||||||
|
|
||||||
return $output;
|
return $output;
|
||||||
|
@ -1005,7 +1005,8 @@ function createGauge(
|
|||||||
critical_inverse,
|
critical_inverse,
|
||||||
font_size,
|
font_size,
|
||||||
height,
|
height,
|
||||||
font
|
font,
|
||||||
|
transitionDuration
|
||||||
) {
|
) {
|
||||||
var gauges;
|
var gauges;
|
||||||
|
|
||||||
@ -1014,7 +1015,8 @@ function createGauge(
|
|||||||
label: etiqueta,
|
label: etiqueta,
|
||||||
min: undefined != min ? min : 0,
|
min: undefined != min ? min : 0,
|
||||||
max: undefined != max ? max : 100,
|
max: undefined != max ? max : 100,
|
||||||
font_size: font_size
|
font_size: font_size,
|
||||||
|
transitionDuration: transitionDuration
|
||||||
};
|
};
|
||||||
|
|
||||||
if (value == null) {
|
if (value == null) {
|
||||||
@ -1128,7 +1130,7 @@ function createGauge(
|
|||||||
|
|
||||||
gauges = new Gauge(name, config, font);
|
gauges = new Gauge(name, config, font);
|
||||||
gauges.render();
|
gauges.render();
|
||||||
gauges.redraw(value);
|
gauges.redraw(value, config.transitionDuration);
|
||||||
$(".gauge>text").each(function() {
|
$(".gauge>text").each(function() {
|
||||||
label = $(this).text();
|
label = $(this).text();
|
||||||
|
|
||||||
@ -1155,12 +1157,17 @@ function createGauge(
|
|||||||
$(this).text(text);
|
$(this).text(text);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
config = false;
|
|
||||||
max_warning2 = false;
|
|
||||||
min_warning2 = false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function createGauges(data, width, height, font_size, no_data_image, font) {
|
function createGauges(
|
||||||
|
data,
|
||||||
|
width,
|
||||||
|
height,
|
||||||
|
font_size,
|
||||||
|
no_data_image,
|
||||||
|
font,
|
||||||
|
transitionDuration
|
||||||
|
) {
|
||||||
var nombre,
|
var nombre,
|
||||||
label,
|
label,
|
||||||
minimun_warning,
|
minimun_warning,
|
||||||
@ -1211,7 +1218,8 @@ function createGauges(data, width, height, font_size, no_data_image, font) {
|
|||||||
critical_inverse,
|
critical_inverse,
|
||||||
font_size,
|
font_size,
|
||||||
height,
|
height,
|
||||||
font
|
font,
|
||||||
|
transitionDuration
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1247,7 +1255,7 @@ function Gauge(placeholderName, configuration, font) {
|
|||||||
this.config.yellowColor = configuration.yellowColor || "#FF9900";
|
this.config.yellowColor = configuration.yellowColor || "#FF9900";
|
||||||
this.config.redColor = configuration.redColor || "#DC3912";
|
this.config.redColor = configuration.redColor || "#DC3912";
|
||||||
|
|
||||||
this.config.transitionDuration = configuration.transitionDuration || 500;
|
this.config.transitionDuration = configuration.transitionDuration;
|
||||||
};
|
};
|
||||||
|
|
||||||
this.render = function() {
|
this.render = function() {
|
||||||
@ -1481,11 +1489,7 @@ function Gauge(placeholderName, configuration, font) {
|
|||||||
var pointer = pointerContainer.selectAll("path");
|
var pointer = pointerContainer.selectAll("path");
|
||||||
pointer
|
pointer
|
||||||
.transition()
|
.transition()
|
||||||
.duration(
|
.duration(undefined != transitionDuration ? transitionDuration : 0)
|
||||||
undefined != transitionDuration
|
|
||||||
? transitionDuration
|
|
||||||
: this.config.transitionDuration
|
|
||||||
)
|
|
||||||
//.delay(0)
|
//.delay(0)
|
||||||
//.ease("linear")
|
//.ease("linear")
|
||||||
//.attr("transform", function(d)
|
//.attr("transform", function(d)
|
||||||
|
@ -1865,3 +1865,112 @@ function ajaxRequest(id, settings) {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* -------------------------------------
|
||||||
|
* Connection Check
|
||||||
|
* --------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
|
checkConnection(1);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Performs connection tests every minutes and add connection listeners
|
||||||
|
* @param {integer} time in minutes
|
||||||
|
*/
|
||||||
|
|
||||||
|
function checkConnection(minutes) {
|
||||||
|
var cicle = minutes * 60 * 1000;
|
||||||
|
var checkConnection = setInterval(handleConnection, cicle);
|
||||||
|
|
||||||
|
// Connection listeters.
|
||||||
|
window.addEventListener("online", handleConnection);
|
||||||
|
window.addEventListener("offline", handleConnection);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Handle connection status test.
|
||||||
|
*
|
||||||
|
* Test conectivity with server and shows modal message.
|
||||||
|
*/
|
||||||
|
function handleConnection() {
|
||||||
|
var connected;
|
||||||
|
var msg = "online";
|
||||||
|
|
||||||
|
if (navigator.onLine) {
|
||||||
|
isReachable(getServerUrl())
|
||||||
|
.then(function(online) {
|
||||||
|
if (online) {
|
||||||
|
// handle online status
|
||||||
|
connected = true;
|
||||||
|
showConnectionMessage(connected, msg);
|
||||||
|
} else {
|
||||||
|
connected = false;
|
||||||
|
msg = "No connectivity with server";
|
||||||
|
showConnectionMessage(connected, msg);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(function(err) {
|
||||||
|
connected = false;
|
||||||
|
msg = err;
|
||||||
|
showConnectionMessage(connected, msg);
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
// handle offline status
|
||||||
|
connected = false;
|
||||||
|
msg = "Connection offline";
|
||||||
|
showConnectionMessage(connected, msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test server reachibilty and get response.
|
||||||
|
*
|
||||||
|
* @param {String} url
|
||||||
|
*
|
||||||
|
* Return {promise}
|
||||||
|
*/
|
||||||
|
function isReachable(url) {
|
||||||
|
/**
|
||||||
|
* Note: fetch() still "succeeds" for 404s on subdirectories,
|
||||||
|
* which is ok when only testing for domain reachability.
|
||||||
|
*
|
||||||
|
* Example:
|
||||||
|
* https://google.com/noexist does not throw
|
||||||
|
* https://noexist.com/noexist does throw
|
||||||
|
*/
|
||||||
|
return fetch(url, { method: "HEAD", mode: "no-cors" })
|
||||||
|
.then(function(resp) {
|
||||||
|
return resp && (resp.ok || resp.type === "opaque");
|
||||||
|
})
|
||||||
|
.catch(function(error) {
|
||||||
|
console.warn("[conn test failure]:", error);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets server origin url
|
||||||
|
*/
|
||||||
|
function getServerUrl() {
|
||||||
|
return $("#php_to_js_value_absolute_homeurl").val() || window.location.origin;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Shows or hide connection infoMessage.
|
||||||
|
*
|
||||||
|
* @param {bool} conn
|
||||||
|
* @param {string} msg
|
||||||
|
*/
|
||||||
|
function showConnectionMessage(conn = true, msg = "") {
|
||||||
|
var data = {};
|
||||||
|
if (conn) {
|
||||||
|
$("div#message_dialog_connection")
|
||||||
|
.closest(".ui-dialog-content")
|
||||||
|
.dialog("close");
|
||||||
|
} else {
|
||||||
|
data.title = "Connection with server has been lost";
|
||||||
|
data.text = "Connection status: " + msg;
|
||||||
|
|
||||||
|
infoMessage(data, "message_dialog_connection");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -713,7 +713,6 @@ function update_event(table, id_evento, type, event_rep, row) {
|
|||||||
});
|
});
|
||||||
var t1 = new Date();
|
var t1 = new Date();
|
||||||
|
|
||||||
// Update events matching current filters and id_evento selected.
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
async: true,
|
async: true,
|
||||||
type: "POST",
|
type: "POST",
|
||||||
@ -751,6 +750,7 @@ function update_event(table, id_evento, type, event_rep, row) {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
// Update events matching current filters and id_evento selected.
|
||||||
|
|
||||||
function validate_event(table, id_evento, event_rep, row) {
|
function validate_event(table, id_evento, event_rep, row) {
|
||||||
var button = document.getElementById("val-" + id_evento);
|
var button = document.getElementById("val-" + id_evento);
|
||||||
@ -791,7 +791,39 @@ function delete_event(table, id_evento, event_rep, row) {
|
|||||||
processed += 1;
|
processed += 1;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
var message =
|
||||||
|
"<h4 style = 'text-align: center; color: black;' > Are you sure?</h4> ";
|
||||||
|
confirmDialog({
|
||||||
|
title: "ATTENTION",
|
||||||
|
message: message,
|
||||||
|
cancel: "Cancel",
|
||||||
|
ok: "Ok",
|
||||||
|
onAccept: function() {
|
||||||
|
button.children[0];
|
||||||
|
button.children[0].src = "images/spinner.gif";
|
||||||
|
return update_event(
|
||||||
|
table,
|
||||||
|
id_evento,
|
||||||
|
{ delete_event: 1 },
|
||||||
|
event_rep,
|
||||||
|
row
|
||||||
|
);
|
||||||
|
},
|
||||||
|
onDeny: function() {
|
||||||
|
button.children[0];
|
||||||
|
button.children[0].src = "images/cross.png";
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function execute_delete_event_reponse(table, id_evento, event_rep, row) {
|
||||||
|
var button = document.getElementById("del-" + id_evento);
|
||||||
|
if (!button) {
|
||||||
|
// Button does not exist. Ignore.
|
||||||
|
processed += 1;
|
||||||
|
return;
|
||||||
|
}
|
||||||
button.children[0];
|
button.children[0];
|
||||||
button.children[0].src = "images/spinner.gif";
|
button.children[0].src = "images/spinner.gif";
|
||||||
return update_event(table, id_evento, { delete_event: 1 }, event_rep, row);
|
return update_event(table, id_evento, { delete_event: 1 }, event_rep, row);
|
||||||
@ -799,110 +831,126 @@ function delete_event(table, id_evento, event_rep, row) {
|
|||||||
|
|
||||||
// Imported from old files.
|
// Imported from old files.
|
||||||
function execute_event_response(event_list_btn) {
|
function execute_event_response(event_list_btn) {
|
||||||
processed = 0;
|
var message =
|
||||||
$("#max_custom_event_resp_msg").hide();
|
"<h4 style = 'text-align: center; color: black;' > Are you sure?</h4> ";
|
||||||
$("#max_custom_selected").hide();
|
confirmDialog({
|
||||||
|
title: "ATTENTION",
|
||||||
|
message: message,
|
||||||
|
cancel: "Cancel",
|
||||||
|
ok: "Ok",
|
||||||
|
onAccept: function() {
|
||||||
|
// Continue execution.
|
||||||
|
processed = 0;
|
||||||
|
$("#max_custom_event_resp_msg").hide();
|
||||||
|
$("#max_custom_selected").hide();
|
||||||
|
|
||||||
var response_id = $("select[name=response_id]").val();
|
var response_id = $("select[name=response_id]").val();
|
||||||
|
|
||||||
var total_checked = $(".chk_val:checked").length;
|
var total_checked = $(".chk_val:checked").length;
|
||||||
|
|
||||||
// Check select an event.
|
// Check select an event.
|
||||||
if (total_checked == 0) {
|
if (total_checked == 0) {
|
||||||
$("#max_custom_selected").show();
|
$("#max_custom_selected").show();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!isNaN(response_id)) {
|
if (!isNaN(response_id)) {
|
||||||
// It is a custom response
|
// It is a custom response
|
||||||
var response = get_response(response_id);
|
var response = get_response(response_id);
|
||||||
|
|
||||||
// If cannot get response abort it
|
// If cannot get response abort it
|
||||||
if (response == null) {
|
if (response == null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Limit number of events to apply custom responses
|
||||||
|
// due performance reasons.
|
||||||
|
if (total_checked > $("#max_execution_event_response").val()) {
|
||||||
|
$("#max_custom_event_resp_msg").show();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var response_command = [];
|
||||||
|
$(".response_command_input").each(function() {
|
||||||
|
response_command[$(this).attr("name")] = $(this).val();
|
||||||
|
});
|
||||||
|
|
||||||
|
if (event_list_btn) {
|
||||||
|
$("#button-submit_event_response").hide(function() {
|
||||||
|
$("#response_loading_dialog").show(function() {
|
||||||
|
var check_params = get_response_params(response_id);
|
||||||
|
|
||||||
|
if (check_params[0] !== "") {
|
||||||
|
show_event_response_command_dialog(
|
||||||
|
response_id,
|
||||||
|
response,
|
||||||
|
total_checked
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
check_massive_response_event(
|
||||||
|
response_id,
|
||||||
|
response,
|
||||||
|
total_checked,
|
||||||
|
response_command
|
||||||
|
);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
$("#button-btn_str").hide(function() {
|
||||||
|
$("#execute_again_loading").show(function() {
|
||||||
|
check_massive_response_event(
|
||||||
|
response_id,
|
||||||
|
response,
|
||||||
|
total_checked,
|
||||||
|
response_command
|
||||||
|
);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// It is not a custom response
|
||||||
|
switch (response_id) {
|
||||||
|
case "in_progress_selected":
|
||||||
|
$(".chk_val:checked").each(function() {
|
||||||
|
// Parent: TD. GrandParent: TR.
|
||||||
|
in_process_event(
|
||||||
|
dt_events,
|
||||||
|
$(this).val(),
|
||||||
|
$(this).attr("event_rep"),
|
||||||
|
this.parentElement.parentElement
|
||||||
|
);
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
case "validate_selected":
|
||||||
|
$(".chk_val:checked").each(function() {
|
||||||
|
validate_event(
|
||||||
|
dt_events,
|
||||||
|
$(this).val(),
|
||||||
|
$(this).attr("event_rep"),
|
||||||
|
this.parentElement.parentElement
|
||||||
|
);
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
case "delete_selected":
|
||||||
|
console.log($(this));
|
||||||
|
$(".chk_val:checked").each(function() {
|
||||||
|
execute_delete_event_reponse(
|
||||||
|
dt_events,
|
||||||
|
$(this).val(),
|
||||||
|
$(this).attr("event_rep"),
|
||||||
|
this.parentElement.parentElement
|
||||||
|
);
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onDeny: function() {
|
||||||
|
processed += 1;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
});
|
||||||
// Limit number of events to apply custom responses
|
|
||||||
// due performance reasons.
|
|
||||||
if (total_checked > $("#max_execution_event_response").val()) {
|
|
||||||
$("#max_custom_event_resp_msg").show();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
var response_command = [];
|
|
||||||
$(".response_command_input").each(function() {
|
|
||||||
response_command[$(this).attr("name")] = $(this).val();
|
|
||||||
});
|
|
||||||
|
|
||||||
if (event_list_btn) {
|
|
||||||
$("#button-submit_event_response").hide(function() {
|
|
||||||
$("#response_loading_dialog").show(function() {
|
|
||||||
var check_params = get_response_params(response_id);
|
|
||||||
|
|
||||||
if (check_params[0] !== "") {
|
|
||||||
show_event_response_command_dialog(
|
|
||||||
response_id,
|
|
||||||
response,
|
|
||||||
total_checked
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
check_massive_response_event(
|
|
||||||
response_id,
|
|
||||||
response,
|
|
||||||
total_checked,
|
|
||||||
response_command
|
|
||||||
);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
$("#button-btn_str").hide(function() {
|
|
||||||
$("#execute_again_loading").show(function() {
|
|
||||||
check_massive_response_event(
|
|
||||||
response_id,
|
|
||||||
response,
|
|
||||||
total_checked,
|
|
||||||
response_command
|
|
||||||
);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
// It is not a custom response
|
|
||||||
switch (response_id) {
|
|
||||||
case "in_progress_selected":
|
|
||||||
$(".chk_val:checked").each(function() {
|
|
||||||
// Parent: TD. GrandParent: TR.
|
|
||||||
in_process_event(
|
|
||||||
dt_events,
|
|
||||||
$(this).val(),
|
|
||||||
$(this).attr("event_rep"),
|
|
||||||
this.parentElement.parentElement
|
|
||||||
);
|
|
||||||
});
|
|
||||||
break;
|
|
||||||
case "validate_selected":
|
|
||||||
$(".chk_val:checked").each(function() {
|
|
||||||
validate_event(
|
|
||||||
dt_events,
|
|
||||||
$(this).val(),
|
|
||||||
$(this).attr("event_rep"),
|
|
||||||
this.parentElement.parentElement
|
|
||||||
);
|
|
||||||
});
|
|
||||||
break;
|
|
||||||
case "delete_selected":
|
|
||||||
$(".chk_val:checked").each(function() {
|
|
||||||
delete_event(
|
|
||||||
dt_events,
|
|
||||||
$(this).val(),
|
|
||||||
$(this).attr("event_rep"),
|
|
||||||
this.parentElement.parentElement
|
|
||||||
);
|
|
||||||
});
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function check_massive_response_event(
|
function check_massive_response_event(
|
||||||
|
@ -494,3 +494,61 @@ function generalShowMsg(data, idMsg) {
|
|||||||
]
|
]
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function infoMessage(data, idMsg) {
|
||||||
|
var title = data.title;
|
||||||
|
var err_messge = data.text;
|
||||||
|
|
||||||
|
if (idMsg == null) {
|
||||||
|
idMsg = uniqId();
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($("#" + idMsg).length === 0) {
|
||||||
|
$("body").append('<div title="' + title + '" id="' + idMsg + '"></div>');
|
||||||
|
$("#" + idMsg).empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
$("#err_msg").empty();
|
||||||
|
$("#err_msg").html("\n\n" + err_messge);
|
||||||
|
|
||||||
|
$("#" + idMsg)
|
||||||
|
.dialog({
|
||||||
|
height: 250,
|
||||||
|
width: 528,
|
||||||
|
opacity: 1,
|
||||||
|
modal: true,
|
||||||
|
position: {
|
||||||
|
my: "center",
|
||||||
|
at: "center",
|
||||||
|
of: window,
|
||||||
|
collision: "fit"
|
||||||
|
},
|
||||||
|
title: data.title,
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
class:
|
||||||
|
"ui-widget ui-state-default ui-corner-all ui-button-text-only sub ok submit-next",
|
||||||
|
text: "Retry",
|
||||||
|
click: function(e) {
|
||||||
|
handleConnection();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
class:
|
||||||
|
"ui-widget ui-state-default ui-corner-all ui-button-text-only sub ok submit-cancel",
|
||||||
|
text: "Close",
|
||||||
|
click: function() {
|
||||||
|
$(this).dialog("close");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
|
||||||
|
open: function(event, ui) {
|
||||||
|
$(".ui-widget-overlay").addClass("error-modal-opened");
|
||||||
|
},
|
||||||
|
close: function(event, ui) {
|
||||||
|
$(".ui-widget-overlay").removeClass("error-modal-opened");
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.show();
|
||||||
|
}
|
||||||
|
@ -6059,6 +6059,56 @@ form#modal_form_feedback ul.wizard li > textarea {
|
|||||||
margin-left: 3px;
|
margin-left: 3px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* ---------------------------------------------------------------------
|
||||||
|
* - ERROR CONNECTION
|
||||||
|
* ---------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*background dim */
|
||||||
|
|
||||||
|
.ui-widget-overlay.error-modal-opened {
|
||||||
|
background: rgb(0, 0, 0);
|
||||||
|
opacity: 0.5;
|
||||||
|
filter: Alpha(Opacity=50);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* --- Login page - modal windows --- */
|
||||||
|
div.content_dialog {
|
||||||
|
width: 98%;
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.icon_message_dialog {
|
||||||
|
float: left;
|
||||||
|
width: 25%;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.icon_message_dialog img {
|
||||||
|
width: 85px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.content_message_dialog {
|
||||||
|
width: 75%;
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.text_message_dialog {
|
||||||
|
width: 100%;
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.text_message_dialog h1 {
|
||||||
|
margin: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.text_message_dialog p {
|
||||||
|
margin: 0px;
|
||||||
|
font-size: 10.3pt;
|
||||||
|
line-height: 14pt;
|
||||||
|
}
|
||||||
|
|
||||||
form#form-filter-interfaces {
|
form#form-filter-interfaces {
|
||||||
margin-left: -30px;
|
margin-left: -30px;
|
||||||
}
|
}
|
||||||
|
@ -1249,6 +1249,12 @@ echo '</div>';
|
|||||||
echo '<div id="um_msg_receiver">';
|
echo '<div id="um_msg_receiver">';
|
||||||
echo '</div>';
|
echo '</div>';
|
||||||
|
|
||||||
|
|
||||||
|
// Connection lost alert.
|
||||||
|
$conn_title = __('Connection with server has been lost');
|
||||||
|
$conn_text = __('Connection to the server has been lost. Please check your internet connection or contact with administrator.');
|
||||||
|
ui_print_message_dialog($conn_title, $conn_text, 'connection', '/images/error_1.png');
|
||||||
|
|
||||||
if ($config['pure'] == 0) {
|
if ($config['pure'] == 0) {
|
||||||
echo '</div>';
|
echo '</div>';
|
||||||
// Container div.
|
// Container div.
|
||||||
|
@ -129,7 +129,7 @@
|
|||||||
<div style='height: 10px'>
|
<div style='height: 10px'>
|
||||||
<?php
|
<?php
|
||||||
$version = '7.0NG.747';
|
$version = '7.0NG.747';
|
||||||
$build = '200713';
|
$build = '200715';
|
||||||
$banner = "v$version Build $build";
|
$banner = "v$version Build $build";
|
||||||
|
|
||||||
error_reporting(0);
|
error_reporting(0);
|
||||||
|
@ -271,6 +271,11 @@ if ($layers != false) {
|
|||||||
|
|
||||||
gis_activate_select_control();
|
gis_activate_select_control();
|
||||||
gis_activate_ajax_refresh($layers, $timestampLastOperation, 1, $idMap);
|
gis_activate_ajax_refresh($layers, $timestampLastOperation, 1, $idMap);
|
||||||
|
|
||||||
|
// Connection lost alert.
|
||||||
|
$conn_title = __('Connection with server has been lost');
|
||||||
|
$conn_text = __('Connection to the server has been lost. Please check your internet connection or contact with administrator.');
|
||||||
|
ui_print_message_dialog($conn_title, $conn_text, 'connection', '/images/error_1.png');
|
||||||
}
|
}
|
||||||
|
|
||||||
// Resize GIS map on fullscreen
|
// Resize GIS map on fullscreen
|
||||||
|
@ -43,6 +43,13 @@ enterprise_include('index.php');
|
|||||||
$url_css = ui_get_full_url('include/styles/visual_maps.css', false, false, false);
|
$url_css = ui_get_full_url('include/styles/visual_maps.css', false, false, false);
|
||||||
echo '<link rel="stylesheet" href="'.$url_css.'" type="text/css" />';
|
echo '<link rel="stylesheet" href="'.$url_css.'" type="text/css" />';
|
||||||
|
|
||||||
|
$url_css_modal = ui_get_full_url('include/styles/register.css', false, false, false);
|
||||||
|
echo '<link rel="stylesheet" href="'.$url_css_modal.'" type="text/css" />';
|
||||||
|
// Connection lost alert.
|
||||||
|
$conn_title = __('Connection with server has been lost');
|
||||||
|
$conn_text = __('Connection to the server has been lost. Please check your internet connection or contact with administrator.');
|
||||||
|
ui_print_message_dialog($conn_title, $conn_text, 'connection', '/images/error_1.png');
|
||||||
|
|
||||||
require_once 'include/functions_visual_map.php';
|
require_once 'include/functions_visual_map.php';
|
||||||
|
|
||||||
$hash = get_parameter('hash');
|
$hash = get_parameter('hash');
|
||||||
@ -148,6 +155,11 @@ echo '<div style="display: none;" id="qrcode_container" title="'.__('QR code of
|
|||||||
echo '<div id="qrcode_container_image"></div>';
|
echo '<div id="qrcode_container_image"></div>';
|
||||||
echo '</div>';
|
echo '</div>';
|
||||||
|
|
||||||
|
// Connection lost alert.
|
||||||
|
$conn_title = __('Connection with server has been lost');
|
||||||
|
$conn_text = __('Connection to the server has been lost. Please check your internet connection or contact with administrator.');
|
||||||
|
ui_print_message_alert($conn_title, $conn_text, 'connection', '/images/error_1.png');
|
||||||
|
|
||||||
ui_require_jquery_file('countdown', 'include/javascript/', true);
|
ui_require_jquery_file('countdown', 'include/javascript/', true);
|
||||||
ui_require_javascript_file('wz_jsgraphics', 'include/javascript/', true);
|
ui_require_javascript_file('wz_jsgraphics', 'include/javascript/', true);
|
||||||
ui_require_javascript_file('pandora_visual_console', 'include/javascript/', true);
|
ui_require_javascript_file('pandora_visual_console', 'include/javascript/', true);
|
||||||
|
@ -320,7 +320,7 @@ $ignored_params['refr'] = '';
|
|||||||
startCountDown(refr, false);
|
startCountDown(refr, false);
|
||||||
|
|
||||||
var controls = document.getElementById('vc-controls');
|
var controls = document.getElementById('vc-controls');
|
||||||
// autoHideElement(controls, 1000);
|
autoHideElement(controls, 1000);
|
||||||
|
|
||||||
$('select#refr').change(function (event) {
|
$('select#refr').change(function (event) {
|
||||||
refr = Number.parseInt(event.target.value, 10);
|
refr = Number.parseInt(event.target.value, 10);
|
||||||
|
@ -29,6 +29,12 @@ if (file_exists(ENTERPRISE_DIR.'/include/functions_login.php')) {
|
|||||||
require_once $config['homedir'].'/vendor/autoload.php';
|
require_once $config['homedir'].'/vendor/autoload.php';
|
||||||
|
|
||||||
ui_require_css_file('visual_maps');
|
ui_require_css_file('visual_maps');
|
||||||
|
ui_require_css_file('register');
|
||||||
|
|
||||||
|
// Connection lost alert.
|
||||||
|
$conn_title = __('Connection with server has been lost');
|
||||||
|
$conn_text = __('Connection to the server has been lost. Please check your internet connection or contact with administrator.');
|
||||||
|
ui_print_message_dialog($conn_title, $conn_text, 'connection', '/images/error_1.png');
|
||||||
|
|
||||||
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'."\n";
|
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'."\n";
|
||||||
echo '<html xmlns="http://www.w3.org/1999/xhtml">'."\n";
|
echo '<html xmlns="http://www.w3.org/1999/xhtml">'."\n";
|
||||||
@ -132,6 +138,11 @@ echo '<div style="display: none;" id="qrcode_container" title="'.__('QR code of
|
|||||||
echo '<div id="qrcode_container_image"></div>';
|
echo '<div id="qrcode_container_image"></div>';
|
||||||
echo '</div>';
|
echo '</div>';
|
||||||
|
|
||||||
|
// Connection lost alert.
|
||||||
|
$conn_title = __('Connection with server has been lost');
|
||||||
|
$conn_text = __('Connection to the server has been lost. Please check your internet connection or contact with administrator.');
|
||||||
|
ui_print_message_dialog($conn_title, $conn_text, 'connection', '/images/error_1.png');
|
||||||
|
|
||||||
// Check groups can access user.
|
// Check groups can access user.
|
||||||
$aclUserGroups = [];
|
$aclUserGroups = [];
|
||||||
if (!users_can_manage_group_all('AR')) {
|
if (!users_can_manage_group_all('AR')) {
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
#
|
#
|
||||||
%define name pandorafms_console
|
%define name pandorafms_console
|
||||||
%define version 7.0NG.747
|
%define version 7.0NG.747
|
||||||
%define release 200713
|
%define release 200715
|
||||||
|
|
||||||
# User and Group under which Apache is running
|
# User and Group under which Apache is running
|
||||||
%define httpd_name httpd
|
%define httpd_name httpd
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
#
|
#
|
||||||
%define name pandorafms_console
|
%define name pandorafms_console
|
||||||
%define version 7.0NG.747
|
%define version 7.0NG.747
|
||||||
%define release 200713
|
%define release 200715
|
||||||
|
|
||||||
# User and Group under which Apache is running
|
# User and Group under which Apache is running
|
||||||
%define httpd_name httpd
|
%define httpd_name httpd
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
#
|
#
|
||||||
%define name pandorafms_console
|
%define name pandorafms_console
|
||||||
%define version 7.0NG.747
|
%define version 7.0NG.747
|
||||||
%define release 200713
|
%define release 200715
|
||||||
%define httpd_name httpd
|
%define httpd_name httpd
|
||||||
# User and Group under which Apache is running
|
# User and Group under which Apache is running
|
||||||
%define httpd_name apache2
|
%define httpd_name apache2
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
package: pandorafms-server
|
package: pandorafms-server
|
||||||
Version: 7.0NG.747-200713
|
Version: 7.0NG.747-200715
|
||||||
Architecture: all
|
Architecture: all
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Section: admin
|
Section: admin
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
pandora_version="7.0NG.747-200713"
|
pandora_version="7.0NG.747-200715"
|
||||||
|
|
||||||
package_cpan=0
|
package_cpan=0
|
||||||
package_pandora=1
|
package_pandora=1
|
||||||
|
@ -45,7 +45,7 @@ our @EXPORT = qw(
|
|||||||
|
|
||||||
# version: Defines actual version of Pandora Server for this module only
|
# version: Defines actual version of Pandora Server for this module only
|
||||||
my $pandora_version = "7.0NG.747";
|
my $pandora_version = "7.0NG.747";
|
||||||
my $pandora_build = "200713";
|
my $pandora_build = "200715";
|
||||||
our $VERSION = $pandora_version." ".$pandora_build;
|
our $VERSION = $pandora_version." ".$pandora_build;
|
||||||
|
|
||||||
# Setup hash
|
# Setup hash
|
||||||
|
@ -33,7 +33,7 @@ our @ISA = qw(Exporter);
|
|||||||
|
|
||||||
# version: Defines actual version of Pandora Server for this module only
|
# version: Defines actual version of Pandora Server for this module only
|
||||||
my $pandora_version = "7.0NG.747";
|
my $pandora_version = "7.0NG.747";
|
||||||
my $pandora_build = "200713";
|
my $pandora_build = "200715";
|
||||||
our $VERSION = $pandora_version." ".$pandora_build;
|
our $VERSION = $pandora_version." ".$pandora_build;
|
||||||
|
|
||||||
our %EXPORT_TAGS = ( 'all' => [ qw() ] );
|
our %EXPORT_TAGS = ( 'all' => [ qw() ] );
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
#
|
#
|
||||||
%define name pandorafms_server
|
%define name pandorafms_server
|
||||||
%define version 7.0NG.747
|
%define version 7.0NG.747
|
||||||
%define release 200713
|
%define release 200715
|
||||||
|
|
||||||
Summary: Pandora FMS Server
|
Summary: Pandora FMS Server
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
#
|
#
|
||||||
%define name pandorafms_server
|
%define name pandorafms_server
|
||||||
%define version 7.0NG.747
|
%define version 7.0NG.747
|
||||||
%define release 200713
|
%define release 200715
|
||||||
|
|
||||||
Summary: Pandora FMS Server
|
Summary: Pandora FMS Server
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
# **********************************************************************
|
# **********************************************************************
|
||||||
|
|
||||||
PI_VERSION="7.0NG.747"
|
PI_VERSION="7.0NG.747"
|
||||||
PI_BUILD="200713"
|
PI_BUILD="200715"
|
||||||
|
|
||||||
MODE=$1
|
MODE=$1
|
||||||
if [ $# -gt 1 ]; then
|
if [ $# -gt 1 ]; then
|
||||||
|
@ -35,7 +35,7 @@ use PandoraFMS::Config;
|
|||||||
use PandoraFMS::DB;
|
use PandoraFMS::DB;
|
||||||
|
|
||||||
# version: define current version
|
# version: define current version
|
||||||
my $version = "7.0NG.747 PS200713";
|
my $version = "7.0NG.747 PS200715";
|
||||||
|
|
||||||
# Pandora server configuration
|
# Pandora server configuration
|
||||||
my %conf;
|
my %conf;
|
||||||
|
@ -36,7 +36,7 @@ use Encode::Locale;
|
|||||||
Encode::Locale::decode_argv;
|
Encode::Locale::decode_argv;
|
||||||
|
|
||||||
# version: define current version
|
# version: define current version
|
||||||
my $version = "7.0NG.747 PS200713";
|
my $version = "7.0NG.747 PS200715";
|
||||||
|
|
||||||
# save program name for logging
|
# save program name for logging
|
||||||
my $progname = basename($0);
|
my $progname = basename($0);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user