Caching fixes
authorEileen McNaughton <emcnaughton@wikimedia.org>
Tue, 27 Jul 2021 22:57:30 +0000 (10:57 +1200)
committerEileen McNaughton <emcnaughton@wikimedia.org>
Wed, 28 Jul 2021 01:02:38 +0000 (13:02 +1200)
CRM/Utils/Token.php

index 8d065c4021f1e05fb936cc94749e17c7ad1e9dba..6e9ea5b403e9e9f8a7e56bf6ba08f81ce3bc6041 100644 (file)
@@ -1559,7 +1559,7 @@ class CRM_Utils_Token {
   protected static function _buildContributionTokens() {
     $key = 'contribution';
 
-    if (self::$_tokens[$key] == NULL) {
+    if (!isset(Civi::$statics[__CLASS__][__FUNCTION__][$key])) {
       $processor = new CRM_Contribute_Tokens();
       $tokens = array_merge(CRM_Contribute_BAO_Contribution::exportableFields('All'),
         ['campaign' => [], 'financial_type' => [], 'payment_instrument' => []],
@@ -1571,8 +1571,9 @@ class CRM_Utils_Token {
           $tokens[$token['name']] = [];
         }
       }
-      self::$_tokens[$key] = array_keys($tokens);
+      Civi::$statics[__CLASS__][__FUNCTION__][$key] = array_keys($tokens);
     }
+    self::$_tokens[$key] = Civi::$statics[__CLASS__][__FUNCTION__][$key];
   }
 
   /**