fix: Correct the use of GetContacts() #5012 (#6059)

* fix: Correct the use of GetContacts() #5012

* small update

* array set

* Properly check the results
This commit is contained in:
Neil Lathwood
2017-03-08 04:14:51 +00:00
committed by Tony Murray
parent 8f96b14975
commit b30161b80c
2 changed files with 9 additions and 2 deletions

View File

@@ -111,7 +111,12 @@ function IssueAlert($alert)
}
if ($config['alert']['fixed-contacts'] == false) {
$alert['details']['contacts'] = GetContacts($alert['details']['rule']);
if (empty($alert['query'])) {
$alert['query'] = GenSQL($alert['rule']);
}
$sql = $alert['query'];
$qry = dbFetchRows($sql, array($alert['device_id']));
$alert['details']['contacts'] = GetContacts($qry);
}
$obj = DescribeAlert($alert);

View File

@@ -38,6 +38,7 @@ switch ($type) {
$device = device_by_id_cache($device_id);
$rules = GetRules($device_id);
$output = '';
$results = array();
foreach ($rules as $rule) {
if (empty($rule['query'])) {
$rule['query'] = GenSQL($rule['rule']);
@@ -45,6 +46,7 @@ switch ($type) {
$sql = $rule['query'];
$qry = dbFetchRow($sql, array($device_id));
if (is_array($qry)) {
$results[] = $qry;
$response = 'matches';
} else {
$response = 'no match';
@@ -55,7 +57,7 @@ switch ($type) {
$output .= 'Rule match: ' . $response . PHP_EOL . PHP_EOL;
}
if ($config['alert']['transports']['mail'] === true) {
$contacts = GetContacts($rules);
$contacts = GetContacts($results);
if (count($contacts) > 0) {
$output .= 'Found ' . count($contacts) . ' contacts to send alerts to.' . PHP_EOL;
}