From d09e593c32c29d151bdaae4d944fe05ba24d70a8 Mon Sep 17 00:00:00 2001 From: eileen Date: Mon, 22 Jan 2018 11:48:23 +1300 Subject: [PATCH] CRM-21256 Improve performance of payment processor load --- CRM/Financial/BAO/PaymentProcessor.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/CRM/Financial/BAO/PaymentProcessor.php b/CRM/Financial/BAO/PaymentProcessor.php index cf54a3b52de..c3312c6f674 100644 --- a/CRM/Financial/BAO/PaymentProcessor.php +++ b/CRM/Financial/BAO/PaymentProcessor.php @@ -444,8 +444,12 @@ public static function getPaymentProcessors($capabilities = array(), $ids = FALS * @return bool */ public static function hasPaymentProcessorSupporting($capabilities = array()) { - $result = self::getPaymentProcessors($capabilities); - return (!empty($result)) ? TRUE : FALSE; + $capabilitiesString = implode('', $capabilities); + if (!isset(\Civi::$statics[__CLASS__]['supported_capabilities'][$capabilitiesString])) { + $result = self::getPaymentProcessors($capabilities); + \Civi::$statics[__CLASS__]['supported_capabilities'][$capabilitiesString] = (!empty($result)) ? TRUE : FALSE; + } + return \Civi::$statics[__CLASS__]['supported_capabilities'][$capabilitiesString]; } /**