Remove api limit, make deprecated function more deprecated
authorMatthew Wire <devel@mrwire.co.uk>
Tue, 26 Sep 2017 10:55:34 +0000 (11:55 +0100)
committerMatthew Wire <devel@mrwire.co.uk>
Tue, 26 Sep 2017 20:58:54 +0000 (21:58 +0100)
CRM/Member/BAO/Membership.php
CRM/Member/BAO/MembershipType.php
CRM/Member/Page/Tab.php
tests/phpunit/CRM/Member/BAO/MembershipTypeTest.php

index 712ce7a477dee340586b46a5c7e0f2bbd23a5235..56376b41611f19ed91c7747966fb220b01a556a3 100644 (file)
@@ -851,6 +851,9 @@ INNER JOIN  civicrm_membership_type type ON ( type.id = membership.membership_ty
       if (CRM_Member_BAO_MembershipType::retrieve($params, $membershipType)) {
         $memberTypesSameParentOrg = civicrm_api3('MembershipType', 'get', array(
           'member_of_contact_id' => $membershipType['member_of_contact_id'],
+          'options' => array(
+            'limit' => 0,
+          ),
         ));
         $memberTypesSameParentOrgList = implode(',', array_keys(CRM_Utils_Array::value('values', $memberTypesSameParentOrg, array())));
         $dao->whereAdd('membership_type_id IN (' . $memberTypesSameParentOrgList . ')');
index 6693905730529adb984ccc9f3d7219255ecdce2f..f53c67175fb58c64163ccb54ad55851d1f2b8ece 100644 (file)
@@ -620,15 +620,14 @@ class CRM_Member_BAO_MembershipType extends CRM_Member_DAO_MembershipType {
    *   array of the details of membership types
    */
   public static function getMembershipTypesByOrg($orgID) {
-    $membershipTypes = array();
-    $dao = new CRM_Member_DAO_MembershipType();
-    $dao->member_of_contact_id = $orgID;
-    $dao->find();
-    while ($dao->fetch()) {
-      $membershipTypes[$dao->id] = array();
-      CRM_Core_DAO::storeValues($dao, $membershipTypes[$dao->id]);
-    }
-    return $membershipTypes;
+    Civi::log()->warning('Deprecated function getMembershipTypesByOrg, please user membership_type api', array('civi.tag' => 'deprecated'));
+    $memberTypesSameParentOrg = civicrm_api3('MembershipType', 'get', array(
+      'member_of_contact_id' => $orgID,
+      'options' => array(
+        'limit' => 0,
+      ),
+    ));
+    return CRM_Utils_Array::value('values', $memberTypesSameParentOrg, array());
   }
 
   /**
index 8e9f44ad5ffdeb9305416004afe545e177c778c2..ecbdab6b77f6afb0bdeec788f9d99b238845b958 100644 (file)
@@ -194,6 +194,9 @@ class CRM_Member_Page_Tab extends CRM_Core_Page {
     //with an Organization(CRM-2016)
     $membershipTypesResult = civicrm_api3('MembershipType', 'get', array(
       'member_of_contact_id' => $this->_contactId,
+      'options' => array(
+        'limit' => 0,
+      ),
     ));
     $membershipTypes = CRM_Utils_Array::value('values', $membershipTypesResult, NULL);
 
index e044428a24d8d58f5d30090334a59513acedb01b..94f4c1213ff8c9e37be778da3031e775c39f0cec 100644 (file)
@@ -360,12 +360,18 @@ class CRM_Member_BAO_MembershipTypeTest extends CiviUnitTestCase {
 
     $membershipTypesResult = civicrm_api3('MembershipType', 'get', array(
       'member_of_contact_id' => $this->_orgContactID,
+      'options' => array(
+        'limit' => 0,
+      ),
     ));
     $result = CRM_Utils_Array::value('values', $membershipTypesResult, NULL);
     $this->assertEquals(empty($result), FALSE, 'Verify membership types for organization.');
 
     $membershipTypesResult = civicrm_api3('MembershipType', 'get', array(
       'member_of_contact_id' => 501,
+      'options' => array(
+        'limit' => 0,
+      ),
     ));
     $result = CRM_Utils_Array::value('values', $membershipTypesResult, NULL);
     $this->assertEquals(empty($result), TRUE, 'Verify membership types for organization.');