if (empty($params)) {
return NULL;
}
+ if (!empty($ids)) {
+ CRM_Core_Error::deprecatedFunctionWarning('ids should not be passed into Contribution.add');
+ }
//per http://wiki.civicrm.org/confluence/display/CRM/Database+layer we are moving away from $ids array
$contributionID = CRM_Utils_Array::value('contribution', $ids, CRM_Utils_Array::value('id', $params));
$action = $contributionID ? 'edit' : 'create';
* @throws \CiviCRM_API3_Exception
*/
public static function create(&$params, $ids = []) {
-
$dateFields = [
'receive_date',
'cancel_date',
$transaction = new CRM_Core_Transaction();
try {
- $contribution = self::add($params, $ids);
+ if (!isset($params['id']) && isset($ids['contribution'])) {
+ CRM_Core_Error::deprecatedFunctionWarning('ids should not be used for contribution create');
+ $params['id'] = $ids['contribution'];
+ }
+ $contribution = self::add($params);
}
catch (CRM_Core_Exception $e) {
$transaction->rollback();
$contributionParams[$field] = $params[$field];
}
- $ids = ['contribution' => $contributionId];
- $contribution = CRM_Contribute_BAO_Contribution::create($contributionParams, $ids);
+ $contributionParams['id'] = $contributionId;
+ $contribution = CRM_Contribute_BAO_Contribution::create($contributionParams);
}
return $updateResult;
}
}
- $newContribution = CRM_Contribute_BAO_Contribution::create($formatted, $ids);
+ $formatted['id'] = $ids['contribution'];
+ $newContribution = CRM_Contribute_BAO_Contribution::create($formatted);
$this->_newContributions[] = $newContribution->id;
//return soft valid since we need to show how soft credits were added
if (!empty($params['record_contribution'])) {
if (!empty($params['id'])) {
if ($this->_onlinePendingContributionId) {
- $ids['contribution'] = $this->_onlinePendingContributionId;
+ $contributionParams['id'] = $this->_onlinePendingContributionId;
}
else {
- $ids['contribution'] = CRM_Core_DAO::getFieldValue('CRM_Event_DAO_ParticipantPayment',
+ $contributionParams['id'] = CRM_Core_DAO::getFieldValue('CRM_Event_DAO_ParticipantPayment',
$params['id'],
'contribution_id',
'participant_id'
// if multiple participants are link, consider contribution total amount as the amount Owed
if ($this->_id && CRM_Event_BAO_Participant::isPrimaryParticipant($this->_id)) {
$amountOwed = CRM_Core_DAO::getFieldValue('CRM_Contribute_DAO_Contribution',
- $ids['contribution'],
+ $contributionParams['id'],
'total_amount'
);
}
}
if ($this->_single) {
- if (empty($ids)) {
- $ids = [];
- }
- $contributions[] = CRM_Contribute_BAO_Contribution::create($contributionParams, $ids);
+ $contributions[] = CRM_Contribute_BAO_Contribution::create($contributionParams);
}
else {
- $ids = [];
foreach ($this->_contactIds as $contactID) {
$contributionParams['contact_id'] = $contactID;
- $contributions[] = CRM_Contribute_BAO_Contribution::create($contributionParams, $ids);
+ $contributions[] = CRM_Contribute_BAO_Contribution::create($contributionParams);
}
}
// Insert payment record for this participant
- if (empty($ids['contribution'])) {
+ if (empty($contributionParams['id'])) {
foreach ($this->_contactIds as $num => $contactID) {
$participantPaymentParams = [
'participant_id' => $participants[$num]->id,