0) { $results = $_POST['results']; } else { $results = 50; } echo '
'; echo (''); $rulei=1; $count_query = "SELECT COUNT(alerts.id)"; $full_query = "SELECT alerts.*, devices.hostname"; $sql = ''; $param = array(); if(isset($device['device_id']) && $device['device_id'] > 0) { $sql = 'AND `alerts`.`device_id`=?'; $param = array($device['device_id']); } $query = " FROM `alerts` LEFT JOIN `devices` ON `alerts`.`device_id`=`devices`.`device_id` RIGHT JOIN alert_rules ON alerts.rule_id=alert_rules.id WHERE `state` IN (1,2,3,4) $sql ORDER BY `alerts`.`timestamp` DESC"; $count_query = $count_query . $query; $count = dbFetchCell($count_query,$param); if(!isset($_POST['page_number']) && $_POST['page_number'] < 1) { $page_number = 1; } else { $page_number = $_POST['page_number']; } $start = ($page_number - 1) * $results; $full_query = $full_query . $query . " LIMIT $start,$results"; foreach( dbFetchRows($full_query, $param) as $alert ) { $rule = dbFetchRow("SELECT * FROM alert_rules WHERE id = ? LIMIT 1", array($alert['rule_id'])); $log = dbFetchCell("SELECT details FROM alert_log WHERE rule_id = ? AND device_id = ? ORDER BY id DESC LIMIT 1", array($alert['rule_id'],$alert['device_id'])); $log_detail = json_decode(gzuncompress($log),true); foreach( $log_detail['rule'][0] as $k=>$v ) { if( !empty($v) && $k != 'device_id' && (stristr($k,'id') || stristr($k,'desc')) && substr_count($k,'_') <= 1 ) { $fault_detail .= $k.' => '.$v."; "; } } $ico = "ok"; $col = "green"; $extra = ""; if( (int) $alert['state'] === 0 ) { $ico = "ok"; $col = "green"; } elseif( (int) $alert['state'] === 1 ) { $ico = "volume-up"; $col = "red"; $extra = "danger"; } elseif( (int) $alert['state'] === 2 ) { $ico = "volume-off"; $col = "#800080"; $extra = "warning"; } $alert_checked = ''; $orig_ico = $ico; $orig_col = $col; $orig_class = $extra; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo "\r\n"; } if($count % $results > 0) { echo(' '); } echo '
# Rule Hostname Timestamp Severity Acknowledge
'); if ($_SESSION['userlevel'] >= '10') { echo(''); } echo ('
#".((int) $rulei++)."".htmlentities($rule['name'])."".$alert['hostname']."".($alert['timestamp'] ? $alert['timestamp'] : "N/A")."".$rule['severity']; if($alert['state'] == 3) { echo " +"; } elseif($alert['state'] == 4) { echo " -"; } echo ""; if ($_SESSION['userlevel'] >= '10') { $ack_ico = 'volume-up'; $ack_col = 'success'; if(in_array($alert['state'],array(2,3,4))) { $ack_ico = 'volume-off'; $ack_col = 'danger'; } echo ""; } echo "
'. generate_pagination($count,$results,$page_number) .'
'; ?>