Correctly handle those field values which are arrays, e.g.
['LIKE' => 'field-value'], rather than strings.
foreach ($fields as $fieldName => $field) {
if (!empty($this->_formValues[$fieldName]) && empty($field['options']) && empty($field['pseudoconstant'])) {
if (in_array($field['type'], [CRM_Utils_Type::T_STRING, CRM_Utils_Type::T_TEXT])) {
- $this->_formValues[$fieldName] = ['LIKE' => CRM_Contact_BAO_Query::getWildCardedValue(TRUE, 'LIKE', trim($this->_formValues[$fieldName]))];
+ $val = $this->_formValues[$fieldName];
+ if (is_array($val)) {
+ $val = $val['LIKE'];
+ }
+ $this->_formValues[$fieldName] = ['LIKE' => CRM_Contact_BAO_Query::getWildCardedValue(TRUE, 'LIKE', trim($val))];
}
}
}