/** * Build an array of conditions that apply to a supplied device * * This takes the array of global conditions and removes associations that don't match the supplied device array * * @param array device * @return array */ function cache_device_conditions($device) { // Return no conditions if the device is ignored or disabled. if ($device['ignore'] == 1 || $device['disabled'] == 1) { return array(); } $conditions = cache_conditions(); foreach ($conditions['assoc'] as $assoc_key => $assoc) { if (match_device($device, $assoc['device_attributes'])) { $assoc['alert_test_id']; $conditions['cond'][$assoc['alert_test_id']]['assoc'][$assoc_key] = $conditions['assoc'][$assoc_key]; $cond_new['cond'][$assoc['alert_test_id']] = $conditions['cond'][$assoc['alert_test_id']]; } else { unset($conditions['assoc'][$assoc_key]); } } # foreach ($cond_new['cond'] as $test_id => $test) # { #print_vars($test); # echo('<span class="label label-info">Matched '.$test['alert_name'].'</span> '); # } return $cond_new; }
function cache_device_conditions($device) { // Return no conditions if the device is ignored or disabled. if ($device['ignore'] == 1 || $device['disabled'] == 1) { return array(); } $conditions = cache_conditions(); foreach ($conditions['assoc'] as $assoc_key => $assoc) { if (match_device($device, $assoc['device_attribs'])) { $assoc['alert_test_id']; $conditions['cond'][$assoc['alert_test_id']]['assoc'][$assoc_key] = $conditions['assoc'][$assoc_key]; $cond_new['cond'][$assoc['alert_test_id']] = $conditions['cond'][$assoc['alert_test_id']]; } else { unset($conditions['assoc'][$assoc_key]); } } return $cond_new; }