- // update contribution status
- $contributionUpdate['id'] = $contributionId;
- $contributionUpdate['contribution_status_id'] = $statusId;
- $contributionUpdate['skipLineItem'] = TRUE;
+ // update contribution status and
+ // clean cancel info (if any) if prev. contribution was updated in case of 'Refunded' => 'Completed'
+ $contributionDAO->contribution_status_id = $statusId;
+ $contributionDAO->cancel_date = 'null';
+ $contributionDAO->cancel_reason = NULL;
+ $netAmount = !empty($trxnsData['net_amount']) ? $trxnsData['net_amount'] : $trxnsData['total_amount'];
+ $contributionDAO->net_amount = $contributionDAO->net_amount + $netAmount;
+ $contributionDAO->save();
+
+ //Change status of financial record too
+ $financialTrxn->status_id = $statusId;
+ $financialTrxn->save();
+