From 04cd605c183f3fa413968fe96d87190b80d4778e Mon Sep 17 00:00:00 2001 From: eileen Date: Wed, 18 Jul 2018 09:33:42 +1200 Subject: [PATCH] Prevent financial transactions from being saved with no payment instrument --- CRM/Contribute/BAO/Contribution.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CRM/Contribute/BAO/Contribution.php b/CRM/Contribute/BAO/Contribution.php index 6d8f3de6dd..5682ae6fea 100644 --- a/CRM/Contribute/BAO/Contribution.php +++ b/CRM/Contribute/BAO/Contribution.php @@ -3400,6 +3400,9 @@ INNER JOIN civicrm_activity ON civicrm_activity_contact.activity_id = civicrm_ac // change Payment Instrument for a Completed contribution // first handle special case when contribution is changed from Pending to Completed status when initial payment // instrument is null and now new payment instrument is added along with the payment + if (!$params['contribution']->payment_instrument_id) { + $params['contribution']->find(TRUE); + } $params['trxnParams']['payment_instrument_id'] = $params['contribution']->payment_instrument_id; $params['trxnParams']['check_number'] = CRM_Utils_Array::value('check_number', $params); -- 2.25.1