}
$contributionParams['source'] = $contributionParams['source'] ?? ts('Recurring contribution');
- //CRM-18805 -- Contribution page not recorded on recurring transactions, Recurring contribution payments
- //do not create CC or BCC emails or profile notifications.
- //The if is just to be safe. Not sure if we can ever arrive with this unset
- // but per CRM-19478 it seems it can be 'null'
- if (isset($contribution->contribution_page_id) && is_numeric($contribution->contribution_page_id)) {
- $contributionParams['contribution_page_id'] = $contribution->contribution_page_id;
- }
-
$createContribution = civicrm_api3('Contribution', 'create', $contributionParams);
- $contribution->id = $createContribution['id'];
- $contribution->copyCustomFields($templateContribution['id'], $contribution->id);
- self::handleMembershipIDOverride($contribution->id, $input);
+ $temporaryObject = new CRM_Contribute_BAO_Contribution();
+ $temporaryObject->copyCustomFields($templateContribution['id'], $createContribution['id']);
+ self::handleMembershipIDOverride($createContribution['id'], $input);
// Add new soft credit against current $contribution.
CRM_Contribute_BAO_ContributionRecur::addrecurSoftCredit($contributionParams['contribution_recur_id'], $createContribution['id']);
return $createContribution;