substr($OC_fieldAR[$f]['short'], 0, 30), 'type' => $OC_fieldAR[$f]['type'], 'fieldset' => $fsAR['fieldset'] ); if ($OC_fieldAR[$f]['type'] == 'date') { $dateFieldsAR[] = $f; } if (isset($OC_fieldAR[$f]['values']) && is_array($OC_fieldAR[$f]['values']) && (count($OC_fieldAR[$f]['values']) > 0)) { if (!isset($OC_fieldAR[$f]['usekey']) || $OC_fieldAR[$f]['usekey']) { $fieldsAR[$f]['values'] = $OC_fieldAR[$f]['values']; } else { $fieldsAR[$f]['values'] = array(); foreach ($OC_fieldAR[$f]['values'] as $v) { $fieldsAR[$f]['values'][$v] = $v; } } } } } } } function queryFieldWrapper($table, $field, $fieldType, $fieldValue, $operator, $tableFieldOverride=null) { if ($tableFieldOverride !== null) { $tableField = $tableFieldOverride; } else { $tableField = "`" . $table . "`.`" . safeSQLstr($field) . "`"; } $qf = ''; if (($fieldType == 'checkbox') || ($fieldType == 'picklist')) { $qf = "FIND_IN_SET('" . safeSQLstr($fieldValue) . "', " . $tableField . ") "; } else { if ($operator == 'contains') { $qf = $tableField . " LIKE '%" . safeSQLstr(preg_replace(array('/_/', '/%/'), array('\\_', '\\%'), oc_strtolower($fieldValue))) . "%'" ; } elseif ($operator == 'before') { $qf = "( (" . $tableField . "<'" . safeSQLstr(oc_strtolower($fieldValue)) . "') OR (" . $tableField . " IS NULL) )"; } elseif ($operator == 'after') { $qf = $tableField . ">'" . safeSQLstr(oc_strtolower($fieldValue)) . "'"; } elseif ($operator == 'onbefore') { $qf = "( (" . $tableField . "<='" . safeSQLstr(oc_strtolower($fieldValue)) . "') OR (" . $tableField . " IS NULL) )"; } elseif ($operator == 'onafter') { $qf = $tableField . ">='" . safeSQLstr(oc_strtolower($fieldValue)) . "'"; } else { $qf = $tableField . "='" . safeSQLstr(oc_strtolower($fieldValue)) . "'"; } } return($qf); } function displayResultsHeader() { header('Content-type: text/html; charset=utf-8'); print '