Пример #1
0
/**
 * Get a membership status.
 * 
 * This api is used for finding an existing membership status.
 * 
 * @param  array $params  an associative array of name/value property values of civicrm_membership_status
 *
 * @return  Array of all found membership status property values.
 * @access public
 */
function civicrm_membership_status_get(&$params)
{
    _civicrm_initialize();
    if (!is_array($params)) {
        return civicrm_create_error('Params is not an array.');
    }
    require_once 'CRM/Member/BAO/MembershipStatus.php';
    $membershipStatusBAO = new CRM_Member_BAO_MembershipStatus();
    $properties = array_keys($membershipStatusBAO->fields());
    foreach ($properties as $name) {
        if (array_key_exists($name, $params)) {
            $membershipStatusBAO->{$name} = $params[$name];
        }
    }
    if ($membershipStatusBAO->find()) {
        $membershipStatus = array();
        while ($membershipStatusBAO->fetch()) {
            _civicrm_object_to_array(clone $membershipStatusBAO, $membershipStatus);
            $membershipStatuses[$membershipStatusBAO->id] = $membershipStatus;
        }
    } else {
        return civicrm_create_error('Exact match not found');
    }
    return $membershipStatuses;
}