pledge_id)){ $dao->find(True); } _civicrm_api3_object_to_array($dao, $result[$dao->id]); //update pledge status CRM_Pledge_BAO_PledgePayment::updatePledgePaymentStatus($dao->pledge_id); return civicrm_api3_create_success($result, $params, 'pledge_payment', 'create', $dao); } /** * Adjust Metadata for Create action * * The metadata is used for setting defaults, documentation & validation * @param array $params array or parameters determined by getfields */ function _civicrm_api3_pledge_payment_create_spec(&$params) { $params['pledge_id']['api.required'] = 1; $params['status_id']['api.required'] = 1; } /** * Delete a pledge Payment - Note this deletes the contribution not just the link * * @param array $params input parameters * {@getfields PledgePayment_delete} * @example PledgePaymentDelete.php * * @return array API result * @static void * @access public */ function civicrm_api3_pledge_payment_delete($params) { if (CRM_Pledge_BAO_PledgePayment::del($params['id'])) { return civicrm_api3_create_success(array('id' => $params['id']), $params,'pledge_payment','delete'); } else { return civicrm_api3_create_error('Could not delete payment'); } } /** * Retrieve a set of pledges, given a set of input params * * @param array $params input parameters * {@getfields PledgePayment_get} * @example PledgePaymentGet.php * * * @return array (reference ) array of pledges, if error an array with an error id and error message * @static void * @access public */ function civicrm_api3_pledge_payment_get($params) { return _civicrm_api3_basic_get(_civicrm_api3_get_BAO(__FUNCTION__), $params); } /** * @param $pledgeId * @param $paymentStatusId * @param $paymentIds * * @return mixed */ function updatePledgePayments($pledgeId, $paymentStatusId, $paymentIds) { $result = updatePledgePayments($pledgeId, $paymentStatusId, $paymentIds = NULL); return $result; } /** * Gets field for civicrm_pledge_payment functions * * @param $params * * @return array fields valid for other functions */ function civicrm_api3_pledge_payment_get_spec(&$params) { $params['option.create_new'] = array('title' => "Create new field rather than update an unpaid payment"); }