Merge pull request #523 from laf/issue-laf-128

Updated split regex to cover more advanced rules
This commit is contained in:
Neil Lathwood
2015-02-27 12:04:33 +00:00

View File

@ -20,9 +20,9 @@ $alert_id = $_POST['alert_id'];
if(is_numeric($alert_id) && $alert_id > 0) {
$rule = dbFetchRow("SELECT * FROM `alert_rules` WHERE `id` = ? LIMIT 1",array($alert_id));
$rule_split = preg_split('/([a-zA-Z0-9_\-\.\=\%\<\>\ \"\'\!\~]+[&&||]+)/',$rule['rule'], -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
$rule_split = preg_split('/([a-zA-Z0-9_\-\.\=\%\<\>\ \"\'\!\~\(\)\*\/]+[&&\|\|]+)/',$rule['rule'], -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
$count = count($rule_split) - 1;
$rule_split[$count] = $rule_split[$count].'&&';
$rule_split[$count] = $rule_split[$count].' &&';
$output = array('severity'=>$rule['severity'],'extra'=>$rule['extra'],'name'=>$rule['name'],'rules'=>$rule_split);
echo _json_encode($output);
}