From 003e9340319aa5153e3d03bcc66e562244965998 Mon Sep 17 00:00:00 2001 From: Mathieu Lutfy Date: Wed, 24 Oct 2018 08:22:45 -0400 Subject: [PATCH] dev/translation#15 Fix backend CC contributions left pending if statuses are localised --- CRM/Contribute/Form/Contribution.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CRM/Contribute/Form/Contribution.php b/CRM/Contribute/Form/Contribution.php index f7919150da87..732c366e24eb 100644 --- a/CRM/Contribute/Form/Contribution.php +++ b/CRM/Contribute/Form/Contribution.php @@ -1156,7 +1156,7 @@ protected function processCreditCard($submittedValues, $lineItem, $contactID) { // NOTE - I expect this is obsolete. $payment = Civi\Payment\System::singleton()->getByProcessor($this->_paymentProcessor); try { - $statuses = CRM_Contribute_BAO_Contribution::buildOptions('contribution_status_id'); + $completeStatusId = CRM_Core_PseudoConstant::getKey('CRM_Contribute_BAO_Contribution', 'contribution_status_id', 'Completed'); $result = $payment->doPayment($paymentParams, 'contribute'); $this->assign('trxn_id', $result['trxn_id']); $contribution->trxn_id = $result['trxn_id']; @@ -1170,7 +1170,7 @@ protected function processCreditCard($submittedValues, $lineItem, $contactID) { * as historically we have had to guess from the context - ie doDirectPayment * = error or success, unless it is a recurring contribution in which case it is pending. */ - if ($result['payment_status_id'] == array_search('Completed', $statuses)) { + if ($result['payment_status_id'] == $completeStatusId) { try { civicrm_api3('contribution', 'completetransaction', array( 'id' => $contribution->id,