Esempio n. 1
0
 static function add($groupID)
 {
     // first delete the current cache
     self::remove($groupID);
     if (!is_array($groupID)) {
         $groupID = array($groupID);
     }
     $params['return.contact_id'] = 1;
     $params['offset'] = 0;
     $params['rowCount'] = 0;
     $params['sort'] = null;
     $params['smartGroupCache'] = false;
     require_once 'api/v2/Contact.php';
     $values = array();
     foreach ($groupID as $gid) {
         $params['group'] = array();
         $params['group'][$gid] = 1;
         // the below call update the cache table as a byproduct of the query
         $contacts = civicrm_contact_search($params);
     }
 }
Esempio n. 2
0
 static function isContactInGroup($contactID, $groupID)
 {
     if (!CRM_Utils_Rule::positiveInteger($contactID) || !CRM_Utils_Rule::positiveInteger($groupID)) {
         return false;
     }
     $params = array('group' => array($groupID => 1), 'contact_id' => $contactID, 'return.contact_id' => 1);
     require_once 'api/v2/Contact.php';
     $contacts = civicrm_contact_search($params);
     if (!empty($contacts)) {
         return true;
     }
     return false;
 }
Esempio n. 3
0
 /**
  * Get the list of member for a group id
  *
  * @param int $lngGroupId this is group id
  *
  * @return array $aMembers this arrray contains the list of members for this group id
  * @access public
  * @static
  */
 static function &getMember($groupID, $useCache = true)
 {
     $params['group'] = array($groupID => 1);
     $params['return.contact_id'] = 1;
     $params['offset'] = 0;
     $params['rowCount'] = 0;
     $params['sort'] = null;
     $params['smartGroupCache'] = $useCache;
     require_once 'api/v2/Contact.php';
     $contacts = civicrm_contact_search($params);
     $aMembers = array();
     foreach ($contacts as $contact) {
         $aMembers[$contact['contact_id']] = 1;
     }
     return $aMembers;
 }
/**
 * Retrieve a specific contact, given a set of search params
 *
 * @deprecated deprecated since version 2.2.3
 *
 * @param  array   $params           (reference ) input parameters
 *
 * @return array (reference )        array of properties, if error an array with an error id and error message
 * @static void
 * @access public
 */
function _civicrm_contact_get_deprecated(&$params)
{
    $values = array();
    if (empty($params)) {
        return civicrm_create_error(ts('No input parameters present'));
    }
    if (!is_array($params)) {
        return civicrm_create_error(ts('Input parameters is not an array'));
    }
    $contacts =& civicrm_contact_search($params);
    if (civicrm_error($contacts)) {
        return $contacts;
    }
    if (count($contacts) != 1 && !CRM_Utils_Array::value('returnFirst', $params)) {
        return civicrm_create_error(ts('%1 contacts matching input params', array(1 => count($contacts))));
    } elseif (count($contacts) == 0) {
        return civicrm_create_error(ts('No contacts match the input params'));
    }
    $contacts = array_values($contacts);
    return $contacts[0];
}
Esempio n. 5
0
 static function getGlobalContacts(&$groupInfo)
 {
     $globalContacts = array();
     require_once 'CRM/Case/XMLProcessor/Settings.php';
     require_once 'CRM/Contact/BAO/Group.php';
     require_once 'api/v2/Contact.php';
     $settingsProcessor = new CRM_Case_XMLProcessor_Settings();
     $settings = $settingsProcessor->run();
     if (!empty($settings)) {
         $groupInfo['name'] = $settings['groupname'];
         if ($groupInfo['name']) {
             $searchParams = array('name' => $groupInfo['name']);
             $results = array();
             CRM_Contact_BAO_Group::retrieve($searchParams, $results);
             if ($results) {
                 $groupInfo['id'] = $results['id'];
                 $groupInfo['title'] = $results['title'];
                 $searchParams = array('group' => array($groupInfo['id'] => 1), 'return.sort_name' => 1, 'return.display_name' => 1, 'return.email' => 1, 'return.phone' => 1);
                 $globalContacts = civicrm_contact_search($searchParams);
             }
         }
     }
     return $globalContacts;
 }
Esempio n. 6
0
 /**
  *  Test civicrm_contact_search_count()
  */
 public function testContactSearchEmail()
 {
     $params = array('email' => '*****@*****.**', 'contact_type' => 'Individual', 'location_type_id' => 1);
     $contact =& civicrm_contact_create($params);
     $this->assertEquals(0, $contact['is_error'], "In line " . __LINE__ . " error message: " . $contact['error_message']);
     $this->assertEquals(1, $contact['contact_id'], "In line " . __LINE__);
     $params = array('email' => 'man2');
     $result = civicrm_contact_search($params);
     $this->assertEquals(1, $result[1]['contact_id']);
     $this->assertEquals('*****@*****.**', $result[1]['email']);
     // delete the contact
     civicrm_contact_delete($contact);
 }