elseif (strpos($op, 'IN') !== FALSE) {
$groups = array($op => $groups);
}
+ elseif (is_array($groups) && count($groups)) {
+ $groups = array('IN' => $groups);
+ }
// Find all the groups that are part of a saved search.
$smartGroupClause = self::buildClause("id", $op, $groups, 'Int');
$clause = " (NULLIF($field, '') IS NOT NULL) ";
return $clause;
+ case 'IN':
+ case 'NOT IN':
+ if (!empty($value) && is_array($value) && !array_key_exists($op, $value)) {
+ $value = array($op => $value);
+ }
+
default:
if (empty($dataType)) {
$dataType = 'String';
return $queryString;
}
}
+ else {
+ $dragonPlace = $iAmAnIntentionalENoticeThatWarnsOfAProblemYouShouldReportUsingOldFormat;
+ if (($queryString = CRM_Core_DAO::createSqlFilter($field, array($op => array_keys($value)), $dataType)) != FALSE) {
+ return $queryString;
+ }
+ }
}
+
$value = CRM_Utils_Type::escape($value, $dataType);
// if we don't have a dataType we should assume
if ($dataType == 'String' || $dataType == 'Text') {