diff --git a/alerts.php b/alerts.php index c0210eb84..690001808 100755 --- a/alerts.php +++ b/alerts.php @@ -163,9 +163,9 @@ function RunAlerts() { $updet = false; $noacc = false; } - if( IsMaintenance($device) > 0 ) { + if( IsMaintenance($alert['device_id']) > 0 ) { $noiss = true; - $noacc = false; + $noacc = true; } if( $updet ) { dbUpdate(array('details' => gzcompress(json_encode($alert['details']),9)),'alert_log','id = ?',array($alert['id'])); diff --git a/includes/alerts.inc.php b/includes/alerts.inc.php index 40c58cc8f..720629bad 100644 --- a/includes/alerts.inc.php +++ b/includes/alerts.inc.php @@ -74,7 +74,7 @@ function GetRules($device) { /** * Check if device is under maintenance * @param int $device Device-ID - * @return bool + * @return int */ function IsMaintenance( $device ) { $groups = GetGroupsFromDevice($device); @@ -84,7 +84,7 @@ function IsMaintenance( $device ) { $where .= " || alert_schedule_items.target = ?"; $params[] = 'g'.$group; } - return dbFetchCell('SELECT DISTINCT(alert_schedule.schedule_id) FROM alert_schedule LEFT JOIN alert_schedule_items ON alert_schedule.schedule_id=alert_schedule_items.schedule_id WHERE alert_schedule_items.target = ?'.$where.' LIMIT 1',$params); + return dbFetchCell('SELECT DISTINCT(alert_schedule.schedule_id) FROM alert_schedule LEFT JOIN alert_schedule_items ON alert_schedule.schedule_id=alert_schedule_items.schedule_id WHERE ( alert_schedule_items.target = ?'.$where.' ) && NOW() BETWEEN alert_schedule.start AND alert_schedule.end LIMIT 1',$params); } /**