License validation
This commit is contained in:
parent
86dfcd162b
commit
c556bf3ba8
|
@ -946,6 +946,36 @@ class HostDevices extends Wizard
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
|
|
||||||
|
// License precheck.
|
||||||
|
$license = enterprise_hook('license_get_info');
|
||||||
|
$n_agents = 0;
|
||||||
|
foreach (explode(',', $this->task['subnet']) as $net) {
|
||||||
|
$mask = explode('/', $net, 2)[1];
|
||||||
|
if (empty($mask) === true) {
|
||||||
|
$n_agents++;
|
||||||
|
} else {
|
||||||
|
$n_agents += pow(2, (32 - $mask));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$limited = false;
|
||||||
|
if (is_array($license) === true
|
||||||
|
&& $n_agents > ($license['limit'] - $license['count'])
|
||||||
|
) {
|
||||||
|
$limit = ($license['limit'] - $license['count']);
|
||||||
|
$limited = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($limited === true) {
|
||||||
|
ui_print_warning_message(
|
||||||
|
__(
|
||||||
|
'Configured networks could generate %d agents, your license only allows %d, \'review results\' is mandatory.',
|
||||||
|
$n_agents,
|
||||||
|
$limit
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
$form['inputs'][] = [
|
$form['inputs'][] = [
|
||||||
'label' => __('Review results').ui_print_help_tip(
|
'label' => __('Review results').ui_print_help_tip(
|
||||||
__(
|
__(
|
||||||
|
@ -954,10 +984,11 @@ class HostDevices extends Wizard
|
||||||
true
|
true
|
||||||
),
|
),
|
||||||
'arguments' => [
|
'arguments' => [
|
||||||
'name' => 'review_results',
|
'name' => 'review_results',
|
||||||
'type' => 'switch',
|
'type' => 'switch',
|
||||||
'return' => true,
|
'return' => true,
|
||||||
'value' => ($this->task['review_mode'] == DISCOVERY_STANDARD) ? 0 : 1,
|
'value' => ($this->task['review_mode'] == DISCOVERY_STANDARD) ? ($limited ? 1 : 0) : 1,
|
||||||
|
'disabled' => $limited,
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -1308,11 +1308,15 @@ sub PandoraFMS::Recon::Base::report_scanned_agents($;$) {
|
||||||
) {
|
) {
|
||||||
# Notify.
|
# Notify.
|
||||||
my $notification = {};
|
my $notification = {};
|
||||||
$notification->{'subject'} = safe_input('Review pending');
|
$notification->{'subject'} = safe_input('Discovery task ');
|
||||||
|
$notification->{'subject'} .= $self->{'task_data'}{'name'};
|
||||||
|
$notification->{'subject'} .= safe_input(' review pending');
|
||||||
|
|
||||||
$notification->{'mensaje'} = safe_input(
|
$notification->{'mensaje'} = safe_input(
|
||||||
'Discovery task (host&devices) \''.safe_output($self->{'task_data'}{'name'})
|
'Discovery task (host&devices) \''.safe_output($self->{'task_data'}{'name'})
|
||||||
.'\' has been completed. Please review the results.'
|
.'\' has been completed. Please review the results.'
|
||||||
);
|
);
|
||||||
|
|
||||||
$notification->{'id_source'} = get_db_value(
|
$notification->{'id_source'} = get_db_value(
|
||||||
$self->{'dbh'},
|
$self->{'dbh'},
|
||||||
'SELECT id FROM tnotification_source WHERE description = ?',
|
'SELECT id FROM tnotification_source WHERE description = ?',
|
||||||
|
|
Loading…
Reference in New Issue