/**
 * Retrieve a set of contributions.
 *
 * @param array $params
 *  Input parameters.
 *
 * @return array
 *   Array of contributions, if error an array with an error id and error message
 */
function civicrm_api3_contribution_get($params)
{
    $mode = CRM_Contact_BAO_Query::MODE_CONTRIBUTE;
    list($dao, $query) = _civicrm_api3_get_query_object($params, $mode, 'Contribution');
    $contribution = array();
    while ($dao->fetch()) {
        //CRM-8662
        $contribution_details = $query->store($dao);
        $softContribution = CRM_Contribute_BAO_ContributionSoft::getSoftContribution($dao->contribution_id, TRUE);
        $contribution[$dao->contribution_id] = array_merge($contribution_details, $softContribution);
        // format soft credit for backward compatibility
        _civicrm_api3_format_soft_credit($contribution[$dao->contribution_id]);
    }
    return civicrm_api3_create_success($contribution, $params, 'Contribution', 'get', $dao);
}
Example #2
0
/**
 * Retrieve a set of pledges, given a set of input params
 *
 * @param  array $params input parameters. Use interrogate for possible fields
 *
 * @return array  array of pledges, if error an array with an error id and error message
 * {@getfields pledge_get}
 * @example PledgeGet.php
 * @access public
 */
function civicrm_api3_pledge_get($params)
{
    $mode = CRM_Contact_BAO_Query::MODE_PLEDGE;
    $entity = 'pledge';
    list($dao, $query) = _civicrm_api3_get_query_object($params, $mode, $entity);
    $pledge = array();
    while ($dao->fetch()) {
        $pledge[$dao->pledge_id] = $query->store($dao);
    }
    return civicrm_api3_create_success($pledge, $params, 'pledge', 'get', $dao);
}
/**
 * Retrieve a specific participant, given a set of input params.
 *
 * @param array $params
 *   input parameters.
 *
 * @return array
 *   array of properties, if error an array with an error id and error message
 */
function civicrm_api3_participant_get($params)
{
    $mode = CRM_Contact_BAO_Query::MODE_EVENT;
    list($dao, $query) = _civicrm_api3_get_query_object($params, $mode, 'Participant');
    $participant = array();
    while ($dao->fetch()) {
        $query->convertToPseudoNames($dao, FALSE, TRUE);
        $participant[$dao->participant_id] = $query->store($dao);
        //@todo - is this required - contribution & pledge use the same query but don't self-retrieve custom data
        _civicrm_api3_custom_data_get($participant[$dao->participant_id], 'Participant', $dao->participant_id, NULL);
    }
    return civicrm_api3_create_success($participant, $params, 'Participant', 'get', $dao);
}