X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=CRM%2FContact%2FBAO%2FGroupContact.php;h=b7d75d17cfc8a80f6a3a2da9af9004a70f0e9ff0;hb=b5d05fb5666d5e303eaf23611c41efa5c43d0168;hp=28aefe2244df27c8cb55b56887efa5f6264a4920;hpb=92b0f883315c72514e629b1c9e37261b84186785;p=civicrm-core.git diff --git a/CRM/Contact/BAO/GroupContact.php b/CRM/Contact/BAO/GroupContact.php index 28aefe2244..b7d75d17cf 100644 --- a/CRM/Contact/BAO/GroupContact.php +++ b/CRM/Contact/BAO/GroupContact.php @@ -35,14 +35,14 @@ class CRM_Contact_BAO_GroupContact extends CRM_Contact_DAO_GroupContact { /** - * class constructor + * Class constructor */ function __construct() { parent::__construct(); } /** - * takes an associative array and creates a groupContact object + * Takes an associative array and creates a groupContact object * * the function extract all the params it needs to initialize the create a * group object. the params array could contain additional unused name/value @@ -50,7 +50,7 @@ class CRM_Contact_BAO_GroupContact extends CRM_Contact_DAO_GroupContact { * * @param array $params (reference ) an assoc array of name/value pairs * - * @return object CRM_Contact_BAO_Group object + * @return CRM_Contact_BAO_Group object * @access public * @static */ @@ -93,8 +93,6 @@ class CRM_Contact_BAO_GroupContact extends CRM_Contact_DAO_GroupContact { * @param array $params input parameters to find object * @param array $values output values of the object * - * @internal param array $ids the array that holds all the db ids - * * @return array (reference) the values that could be potentially assigned to smarty * @access public * @static @@ -268,7 +266,7 @@ class CRM_Contact_BAO_GroupContact extends CRM_Contact_DAO_GroupContact { } /** - * Function to get list of all the groups and groups for a contact + * Get list of all the groups and groups for a contact * * @param int $contactId contact id * @@ -311,7 +309,7 @@ class CRM_Contact_BAO_GroupContact extends CRM_Contact_DAO_GroupContact { } /** - * Function to get the list of groups for contact based on status of group membership + * Get the list of groups for contact based on status of group membership * * @param int $contactId contact id * @param string $status state of membership @@ -336,7 +334,8 @@ class CRM_Contact_BAO_GroupContact extends CRM_Contact_DAO_GroupContact { $count = FALSE, $ignorePermission = FALSE, $onlyPublicGroups = FALSE, - $excludeHidden = TRUE + $excludeHidden = TRUE, + $groupId = NULL ) { if ($count) { $select = 'SELECT count(DISTINCT civicrm_group_contact.id)'; @@ -364,6 +363,10 @@ class CRM_Contact_BAO_GroupContact extends CRM_Contact_DAO_GroupContact { $where .= ' AND civicrm_group_contact.status = %2'; $params[2] = array($status, 'String'); } + if (!empty($groupId)) { + $where .= " AND civicrm_group.id = %3 "; + $params[3] = array($groupId, 'Integer'); + } $tables = array( 'civicrm_group_contact' => 1, 'civicrm_group' => 1, @@ -496,7 +499,7 @@ SELECT * } /** - * takes an associative array and creates / removes + * Takes an associative array and creates / removes * contacts from the groups * * @@ -559,8 +562,8 @@ SELECT * } /** - * @param $contactID - * @param $groupID + * @param int $contactID + * @param int $groupID * * @return bool */ @@ -694,13 +697,11 @@ AND group_id IN ( $groupIDString ) /** * Given an array of contact ids, add all the contacts to the group * - * @param $contactIDs - * @param $groupID + * @param array $contactIDs the array of contact ids to be added + * @param int $groupID the id of the group * @param string $method * @param string $status * @param null $tracking - * @internal param array $contactIds (reference ) the array of contact ids to be added - * @internal param int $groupId the id of the group * * @return array (total, added, notAdded) count of contacts added to group * @access public