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, 'PledgePayment', 'create', $dao); } /** * Adjust Metadata for Create action. * * The metadata is used for setting defaults, documentation & validation. * * @param array $params * Array of 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. * * @return array * API result */ 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, 'PledgePayment', '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. * * @return array * array of pledges, if error an array with an error id and error message */ function civicrm_api3_pledge_payment_get($params) { return _civicrm_api3_basic_get(_civicrm_api3_get_BAO(__FUNCTION__), $params); } /** * Gets field for civicrm_pledge_payment functions. * * @param array $params * Modifiable list of fields allowed for the PledgePayment.get action. */ function civicrm_api3_pledge_payment_get_spec(&$params) { $params['option.create_new'] = array( 'title' => "Create New", 'description' => "Create new field rather than update an unpaid payment", 'type' => CRM_Utils_Type::T_BOOLEAN, ); }