// Handle soft credit and / or link to personal campaign page
$softIDs = CRM_Contribute_BAO_ContributionSoft::getSoftCreditIds($contribution->id);
- //Delete PCP against this contribution and create new on submitted PCP information
$pcpId = CRM_Contribute_BAO_ContributionSoft::getSoftCreditIds($contribution->id, TRUE);
- if ($pcpId) {
- $deleteParams = array('id' => $pcpId);
- CRM_Contribute_BAO_ContributionSoft::del($deleteParams);
- }
+
if ($pcp = CRM_Utils_Array::value('pcp', $params)) {
$softParams = array();
$softParams['contribution_id'] = $contribution->id;
CRM_Contribute_Form_Contribution_Confirm::pcpNotifyOwner($contribution, $contributionSoft);
}
}
+ //Delete PCP against this contribution and create new on submitted PCP information
+ elseif (array_key_exists('pcp', $params) && $pcpId) {
+ $deleteParams = array('id' => $pcpId);
+ CRM_Contribute_BAO_ContributionSoft::del($deleteParams);
+ }
if (isset($params['soft_credit'])) {
$softParams = $params['soft_credit'];
$params[$f] = CRM_Utils_Array::value($f, $formValues);
}
- if (!empty($pcp)) {
- $params['pcp'] = $pcp;
- }
+ $params['pcp'] = !empty($pcp) ? $pcp : NULL;
if (!empty($softParams)) {
$params['soft_credit'] = $softParams;
$params['soft_credit_ids'] = $softIDs;