CRM-14864 fix - Advanced search - bug in contact type filters OR
authormonishdeb <monish.deb@webaccessglobal.com>
Tue, 17 Jun 2014 13:17:50 +0000 (18:47 +0530)
committermonishdeb <monish.deb@webaccessglobal.com>
Tue, 17 Jun 2014 13:17:50 +0000 (18:47 +0530)
https://issues.civicrm.org/jira/browse/CRM-14864

CRM/Contact/BAO/Query.php

index 25b1aa86ad3c63de17c8381f46c8cb4b0a2bbfc5..f36c295a79d71e51a6c86932cbe070e19221fc48 100644 (file)
@@ -1532,6 +1532,9 @@ class CRM_Contact_BAO_Query {
       }
       $result = array($id, 'IN', $values, 0, 0);
     }
+    elseif ($id == 'contact_type') {
+      $result = array($id, 'IN', $values, 0, $wildcard);
+    }
     else {
       $result = array($id, '=', $values, 0, $wildcard);
     }
@@ -2627,11 +2630,11 @@ class CRM_Contact_BAO_Query {
 
     // fix for CRM-771
     if (!empty($clause)) {
+      $quill = $clause;
       if ($op == 'IN' || $op == 'NOT IN') {
         $this->_where[$grouping][] = "contact_a.contact_type $op (" . implode(',', $clause) . ')';
       }
       else {
-        $quill = $clause;
         $type = array_pop($clause);
         $this->_where[$grouping][] = "contact_a.contact_type $op $type";
       }