*/ $empty_result = db_query("SELECT * FROM redcap_data WHERE project_id = '$project_id' AND field_name = '{$_POST['field_name']}' ORDER BY abs(record) ASC"); if ($empty_result) { while ($empty_row = db_fetch_assoc($empty_result)) { $history = Form::getDataHistoryLog($empty_row['record'], $empty_row['event_id'], $empty_row['field_name']); $all_fields_hidden = $my_branching_logic->allFieldsHidden($empty_row['record'], $empty_row['event_id'], array($empty_row['field_name'])); if ($debug) { /** * pick apart the hidden field logic - something's not right with fib_lbtest logic. ?'null'? */ $fieldsDependent = getDependentFields(array($empty_row['field_name']), false, true); $unique_event_name = $project->getUniqueEventNames($empty_row['event_id']); $record_data = Records::getSingleRecordData($empty_row['record'], array_merge($fieldsDependent, array($empty_row['field_name']))); $logic = $project->metadata[$empty_row['field_name']]['branching_logic']; if ($longitudinal) { $logic = LogicTester::logicPrependEventName($logic, $unique_event_name); } if (LogicTester::isValid($logic)) { $displayField = LogicTester::apply($logic, $record_data); $displayField = $displayField ? false : true; } show_var($fieldsDependent, 'DEP FIELDS'); show_var($unique_event_name, 'unique event name'); show_var($record_data, 'record data'); show_var($logic, 'logic'); show_var($displayField, 'all hidden?'); } /** * if all values are hidden for this field, delete the row. */ if ($all_fields_hidden) {
public function testLogic($logic) { logIt('testLogic: ' . $logic); if (LogicTester::isValid($logic)) { // Append current event details if (REDCap::isLongitudinal() && $this->redcap_event_name) { $logic = LogicTester::logicPrependEventName($logic, $this->redcap_event_name); } // Test logic logIt('Logic:' . $logic, 'DEBUG'); if (LogicTester::evaluateLogicSingleRecord($logic, $this->record)) { $result = RCView::img(array('class' => 'imgfix', 'src' => 'accept.png')) . " True"; } else { $result = RCView::img(array('class' => 'imgfix', 'src' => 'cross.png')) . " False"; } } else { $result = RCView::img(array('class' => 'imgfix', 'src' => 'error.png')) . " Invalid Syntax"; } return $result; }