CRM-17011 fix - Broken smart group regression - membership type, membership status
authormonishdeb <monish.deb@webaccessglobal.com>
Wed, 12 Aug 2015 11:15:44 +0000 (16:45 +0530)
committermonishdeb <monish.deb@webaccessglobal.com>
Wed, 12 Aug 2015 11:15:44 +0000 (16:45 +0530)
https://issues.civicrm.org/jira/browse/CRM-17011

CRM/Contact/Form/Search/Advanced.php
CRM/Member/BAO/Query.php

index 86b127dc02d78b97866530dd83dd356c619ca32b..8e9f0678d847c45945e167ec67090d9446499a80 100644 (file)
@@ -423,11 +423,13 @@ class CRM_Contact_Form_Search_Advanced extends CRM_Contact_Form_Search {
     }
 
     if ($this->_ssID && empty($_POST)) {
-      $specialFields = array('contact_type', 'group', 'contact_tags');
+      $specialFields = array('contact_type', 'group', 'contact_tags', 'member_membership_type_id', 'member_status_id');
 
       foreach ($defaults as $element => $value) {
         if (!empty($value) && is_array($value)) {
           if (in_array($element, $specialFields)) {
+            $element = str_replace('member_membership_type_id', 'membership_type_id', $element);
+            $element = str_replace('member_status_id', 'membership_status_id', $element);
             $defaults[$element] = array_keys($value);
           }
           // As per the OK (Operator as Key) value format, value array may contain key
index d8aa06944c5c794d387486a4cf810ee884348f77..4f003fcf4c0ee9aeb8d8858ae314dfbda7ad0a1a 100644 (file)
@@ -201,7 +201,8 @@ class CRM_Member_BAO_Query {
       case 'member_status_id':
       case 'member_membership_type_id':
         if (is_array($value)) {
-           $value = array('IN' => array_keys($value));
+          $op = 'IN';
+          $value = array_keys($value);
         }
       case 'membership_status':
       case 'membership_status_id':