Merge pull request #6546 from colemanw/CRM-17059
authorcolemanw <coleman@civicrm.org>
Fri, 21 Aug 2015 00:14:30 +0000 (20:14 -0400)
committercolemanw <coleman@civicrm.org>
Fri, 21 Aug 2015 00:14:30 +0000 (20:14 -0400)
CRM-17059 - Fix faulty relationship count in datatable

1  2 
CRM/Contact/BAO/Relationship.php

index dc1bd2171958ba966944a0ac8eea55deb6b989b7,d7c39429186128414d4dfbfb74682eb46f839b2f..8eed0904cc32e79bcc075906ddff0118c57e943e
@@@ -1295,7 -1295,6 +1295,7 @@@ LEFT JOIN  civicrm_country ON (civicrm_
                $mask -= CRM_Core_Action::ENABLE;
                $mask -= CRM_Core_Action::DISABLE;
              }
 +            $mask = $mask & $permissionMask;
            }
  
            // Give access to manage case link by copying to MAX_ACTION index temporarily, depending on case permission of user.
@@@ -1978,19 -1977,13 +1978,13 @@@ AND cc.sort_name LIKE '%$name%'"
      $contactRelationships = array();
      $params['total'] = 0;
      if (!empty($relationships)) {
-       // get the total relationships
-       if ($params['context'] != 'user') {
-         $params['total'] = count($relationships);
-       }
-       else {
-         // FIX ME: we cannot directly determine total permissioned relationship, hence re-fire query
-         $permissionedRelationships = CRM_Contact_BAO_Relationship::getRelationship($params['contact_id'],
-           $relationshipStatus,
-           0, 0, 0,
-           NULL, NULL, TRUE
-         );
-         $params['total'] = count($permissionedRelationships);
-       }
+       // FIXME: we cannot directly determine total permissioned relationship, hence re-fire query
+       $params['total'] = $permissionedRelationships = CRM_Contact_BAO_Relationship::getRelationship($params['contact_id'],
+         $relationshipStatus,
+         0, 1, 0,
+         NULL, NULL,
+         $permissionedContacts
+       );
  
        // format params
        foreach ($relationships as $relationshipId => $values) {