From 996288d39cb503148a4024be6335a15c873a022c Mon Sep 17 00:00:00 2001
From: Kevin Cristiano <kcristiano@kcristiano.com>
Date: Thu, 13 May 2021 08:10:17 -0400
Subject: [PATCH] civicrm release

---
 civicrm.php                                 |  4 +--
 civicrm/CRM/Core/Payment.php                |  4 +--
 civicrm/CRM/Utils/Money.php                 |  2 +-
 civicrm/civicrm-version.php                 |  2 +-
 civicrm/release-notes.md                    |  9 +++++
 civicrm/release-notes/5.37.2.md             | 37 +++++++++++++++++++++
 civicrm/sql/civicrm_data.mysql              |  2 +-
 civicrm/sql/civicrm_generated.mysql         |  2 +-
 civicrm/vendor/autoload.php                 |  2 +-
 civicrm/vendor/composer/autoload_real.php   | 14 ++++----
 civicrm/vendor/composer/autoload_static.php | 12 +++----
 civicrm/xml/version.xml                     |  2 +-
 12 files changed, 69 insertions(+), 23 deletions(-)
 create mode 100644 civicrm/release-notes/5.37.2.md

diff --git a/civicrm.php b/civicrm.php
index 7e40d2663c..86a722fbe8 100644
--- a/civicrm.php
+++ b/civicrm.php
@@ -2,7 +2,7 @@
 /**
  * Plugin Name: CiviCRM
  * Description: CiviCRM - Growing and Sustaining Relationships
- * Version: 5.37.1
+ * Version: 5.37.2
  * Requires at least: 4.9
  * Requires PHP:      7.2
  * Author: CiviCRM LLC
@@ -54,7 +54,7 @@ if (!defined('ABSPATH')) {
 }
 
 // Set version here: when it changes, will force Javascript & CSS to reload.
-define('CIVICRM_PLUGIN_VERSION', '5.37.1');
+define('CIVICRM_PLUGIN_VERSION', '5.37.2');
 
 // Store reference to this file.
 if (!defined('CIVICRM_PLUGIN_FILE')) {
diff --git a/civicrm/CRM/Core/Payment.php b/civicrm/CRM/Core/Payment.php
index 72b407bf2f..abe4aa7e44 100644
--- a/civicrm/CRM/Core/Payment.php
+++ b/civicrm/CRM/Core/Payment.php
@@ -1166,9 +1166,9 @@ abstract class CRM_Core_Payment {
   protected function getAmount($params = []) {
     if (!CRM_Utils_Rule::numeric($params['amount'])) {
       CRM_Core_Error::deprecatedWarning('Passing Amount value that is not numeric is deprecated please report this in gitlab');
-      return CRM_Utils_Money::formatLocaleNumericRoundedByPrecision(filter_var($params['amount'], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION), 2);
+      return CRM_Utils_Money::formatUSLocaleNumericRounded(filter_var($params['amount'], FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION), 2);
     }
-    return CRM_Utils_Money::formatLocaleNumericRoundedByPrecision($params['amount'], 2);
+    return CRM_Utils_Money::formatUSLocaleNumericRounded($params['amount'], 2);
   }
 
   /**
diff --git a/civicrm/CRM/Utils/Money.php b/civicrm/CRM/Utils/Money.php
index e81330950b..76f71ea2b3 100644
--- a/civicrm/CRM/Utils/Money.php
+++ b/civicrm/CRM/Utils/Money.php
@@ -188,7 +188,7 @@ class CRM_Utils_Money {
    *
    * @return string
    */
-  protected static function formatUSLocaleNumericRounded($amount, int $numberOfPlaces): string {
+  public static function formatUSLocaleNumericRounded($amount, int $numberOfPlaces): string {
     if (!extension_loaded('intl') || !is_numeric($amount)) {
       // @todo - we should not attempt to format non-numeric strings. For now
       // these will not fail but will give notices on php 7.4
diff --git a/civicrm/civicrm-version.php b/civicrm/civicrm-version.php
index 6eb65f9e9c..6f6ccf9f07 100644
--- a/civicrm/civicrm-version.php
+++ b/civicrm/civicrm-version.php
@@ -1,7 +1,7 @@
 <?php
 /** @deprecated */
 function civicrmVersion( ) {
-  return array( 'version'  => '5.37.1',
+  return array( 'version'  => '5.37.2',
                 'cms'      => 'Wordpress',
                 'revision' => '' );
 }
diff --git a/civicrm/release-notes.md b/civicrm/release-notes.md
index e50e21dbd8..cc921b72be 100644
--- a/civicrm/release-notes.md
+++ b/civicrm/release-notes.md
@@ -15,6 +15,15 @@ Other resources for identifying changes are:
     * https://github.com/civicrm/civicrm-joomla
     * https://github.com/civicrm/civicrm-wordpress
 
+## CiviCRM 5.37.2
+
+Released May 12, 2021
+
+- **[Synopsis](release-notes/5.37.2.md#synopsis)**
+- **[Bugs resolved](release-notes/5.37.2.md#bugs)**
+- **[Credits](release-notes/5.37.2.md#credits)**
+- **[Feedback](release-notes/5.37.2.md#feedback)**
+
 ## CiviCRM 5.37.1
 
 Released May 11, 2021
diff --git a/civicrm/release-notes/5.37.2.md b/civicrm/release-notes/5.37.2.md
new file mode 100644
index 0000000000..24ad9e5233
--- /dev/null
+++ b/civicrm/release-notes/5.37.2.md
@@ -0,0 +1,37 @@
+# CiviCRM 5.37.2
+
+Released May 12, 2021
+
+- **[Synopsis](#synopsis)**
+- **[Bugs resolved](#bugs)**
+- **[Credits](#credits)**
+- **[Feedback](#feedback)**
+
+## <a name="synopsis"></a>Synopsis
+
+| *Does this version...?*                                         |          |
+| --------------------------------------------------------------- | -------- |
+| Change the database schema?                                     | no       |
+| Alter the API?                                                  | no       |
+| Require attention to configuration options?                     | no       |
+| Fix problems installing or upgrading to a previous version?     | no       |
+| Introduce features?                                             | no       |
+| **Fix bugs?**                                                   | **yes**  |
+
+## <a name="bugs"></a>Bugs resolved
+
+* **_CiviContribute_: Fix monetary formatting when using non-decimal separators on certain payment processors
+  ([#20277](https://github.com/civicrm/civicrm-core/pull/20277))**
+
+## <a name="credits"></a>Credits
+
+This release was developed by the following authors and reviewers:
+
+Wikimedia Foundation - Eileen McNaughton; MJW Consulting - Matthew Wire; JMA Consulting -
+Seamus Lee; CiviCRM - Tim Otten
+
+## <a name="feedback"></a>Feedback
+
+These release notes are edited by Tim Otten and Andrew Hunt.  If you'd like to
+provide feedback on them, please login to https://chat.civicrm.org/civicrm and
+contact `@agh1`.
diff --git a/civicrm/sql/civicrm_data.mysql b/civicrm/sql/civicrm_data.mysql
index d961c02fe5..d5a2b6c99e 100644
--- a/civicrm/sql/civicrm_data.mysql
+++ b/civicrm/sql/civicrm_data.mysql
@@ -23875,4 +23875,4 @@ INSERT INTO `civicrm_report_instance`
     ( `domain_id`, `title`, `report_id`, `description`, `permission`, `form_values`)
 VALUES
     (  @domainID, 'Survey Details', 'survey/detail', 'Detailed report for canvassing, phone-banking, walk lists or other surveys.', 'access CiviReport', 'a:39:{s:6:"fields";a:2:{s:9:"sort_name";s:1:"1";s:6:"result";s:1:"1";}s:22:"assignee_contact_id_op";s:2:"eq";s:25:"assignee_contact_id_value";s:0:"";s:12:"sort_name_op";s:3:"has";s:15:"sort_name_value";s:0:"";s:17:"street_number_min";s:0:"";s:17:"street_number_max";s:0:"";s:16:"street_number_op";s:3:"lte";s:19:"street_number_value";s:0:"";s:14:"street_name_op";s:3:"has";s:17:"street_name_value";s:0:"";s:15:"postal_code_min";s:0:"";s:15:"postal_code_max";s:0:"";s:14:"postal_code_op";s:3:"lte";s:17:"postal_code_value";s:0:"";s:7:"city_op";s:3:"has";s:10:"city_value";s:0:"";s:20:"state_province_id_op";s:2:"in";s:23:"state_province_id_value";a:0:{}s:13:"country_id_op";s:2:"in";s:16:"country_id_value";a:0:{}s:12:"survey_id_op";s:2:"in";s:15:"survey_id_value";a:0:{}s:12:"status_id_op";s:2:"eq";s:15:"status_id_value";s:1:"1";s:11:"custom_1_op";s:2:"in";s:14:"custom_1_value";a:0:{}s:11:"custom_2_op";s:2:"in";s:14:"custom_2_value";a:0:{}s:17:"custom_3_relative";s:1:"0";s:13:"custom_3_from";s:0:"";s:11:"custom_3_to";s:0:"";s:11:"description";s:75:"Detailed report for canvassing, phone-banking, walk lists or other surveys.";s:13:"email_subject";s:0:"";s:8:"email_to";s:0:"";s:8:"email_cc";s:0:"";s:10:"permission";s:17:"access CiviReport";s:6:"groups";s:0:"";s:9:"domain_id";i:1;}');
-UPDATE civicrm_domain SET version = '5.37.1';
+UPDATE civicrm_domain SET version = '5.37.2';
diff --git a/civicrm/sql/civicrm_generated.mysql b/civicrm/sql/civicrm_generated.mysql
index 4627355d00..2758f0a0e0 100644
--- a/civicrm/sql/civicrm_generated.mysql
+++ b/civicrm/sql/civicrm_generated.mysql
@@ -399,7 +399,7 @@ UNLOCK TABLES;
 
 LOCK TABLES `civicrm_domain` WRITE;
 /*!40000 ALTER TABLE `civicrm_domain` DISABLE KEYS */;
-INSERT INTO `civicrm_domain` (`id`, `name`, `description`, `version`, `contact_id`, `locales`, `locale_custom_strings`) VALUES (1,'Default Domain Name',NULL,'5.37.1',1,NULL,'a:1:{s:5:\"en_US\";a:0:{}}');
+INSERT INTO `civicrm_domain` (`id`, `name`, `description`, `version`, `contact_id`, `locales`, `locale_custom_strings`) VALUES (1,'Default Domain Name',NULL,'5.37.2',1,NULL,'a:1:{s:5:\"en_US\";a:0:{}}');
 /*!40000 ALTER TABLE `civicrm_domain` ENABLE KEYS */;
 UNLOCK TABLES;
 
diff --git a/civicrm/vendor/autoload.php b/civicrm/vendor/autoload.php
index 9c768a2912..3ce8421ffb 100644
--- a/civicrm/vendor/autoload.php
+++ b/civicrm/vendor/autoload.php
@@ -4,4 +4,4 @@
 
 require_once __DIR__ . '/composer/autoload_real.php';
 
-return ComposerAutoloaderInit72f67de33e1b44e47fbb763283ffdc83::getLoader();
+return ComposerAutoloaderInit53863566eba8991ed6e3f477970e00f4::getLoader();
diff --git a/civicrm/vendor/composer/autoload_real.php b/civicrm/vendor/composer/autoload_real.php
index c470b2b119..7fc8ab34e6 100644
--- a/civicrm/vendor/composer/autoload_real.php
+++ b/civicrm/vendor/composer/autoload_real.php
@@ -2,7 +2,7 @@
 
 // autoload_real.php @generated by Composer
 
-class ComposerAutoloaderInit72f67de33e1b44e47fbb763283ffdc83
+class ComposerAutoloaderInit53863566eba8991ed6e3f477970e00f4
 {
     private static $loader;
 
@@ -19,9 +19,9 @@ class ComposerAutoloaderInit72f67de33e1b44e47fbb763283ffdc83
             return self::$loader;
         }
 
-        spl_autoload_register(array('ComposerAutoloaderInit72f67de33e1b44e47fbb763283ffdc83', 'loadClassLoader'), true, true);
+        spl_autoload_register(array('ComposerAutoloaderInit53863566eba8991ed6e3f477970e00f4', 'loadClassLoader'), true, true);
         self::$loader = $loader = new \Composer\Autoload\ClassLoader();
-        spl_autoload_unregister(array('ComposerAutoloaderInit72f67de33e1b44e47fbb763283ffdc83', 'loadClassLoader'));
+        spl_autoload_unregister(array('ComposerAutoloaderInit53863566eba8991ed6e3f477970e00f4', 'loadClassLoader'));
 
         $includePaths = require __DIR__ . '/include_paths.php';
         $includePaths[] = get_include_path();
@@ -31,7 +31,7 @@ class ComposerAutoloaderInit72f67de33e1b44e47fbb763283ffdc83
         if ($useStaticLoader) {
             require_once __DIR__ . '/autoload_static.php';
 
-            call_user_func(\Composer\Autoload\ComposerStaticInit72f67de33e1b44e47fbb763283ffdc83::getInitializer($loader));
+            call_user_func(\Composer\Autoload\ComposerStaticInit53863566eba8991ed6e3f477970e00f4::getInitializer($loader));
         } else {
             $map = require __DIR__ . '/autoload_namespaces.php';
             foreach ($map as $namespace => $path) {
@@ -52,19 +52,19 @@ class ComposerAutoloaderInit72f67de33e1b44e47fbb763283ffdc83
         $loader->register(true);
 
         if ($useStaticLoader) {
-            $includeFiles = Composer\Autoload\ComposerStaticInit72f67de33e1b44e47fbb763283ffdc83::$files;
+            $includeFiles = Composer\Autoload\ComposerStaticInit53863566eba8991ed6e3f477970e00f4::$files;
         } else {
             $includeFiles = require __DIR__ . '/autoload_files.php';
         }
         foreach ($includeFiles as $fileIdentifier => $file) {
-            composerRequire72f67de33e1b44e47fbb763283ffdc83($fileIdentifier, $file);
+            composerRequire53863566eba8991ed6e3f477970e00f4($fileIdentifier, $file);
         }
 
         return $loader;
     }
 }
 
-function composerRequire72f67de33e1b44e47fbb763283ffdc83($fileIdentifier, $file)
+function composerRequire53863566eba8991ed6e3f477970e00f4($fileIdentifier, $file)
 {
     if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
         require $file;
diff --git a/civicrm/vendor/composer/autoload_static.php b/civicrm/vendor/composer/autoload_static.php
index 4826d2d041..c51965be23 100644
--- a/civicrm/vendor/composer/autoload_static.php
+++ b/civicrm/vendor/composer/autoload_static.php
@@ -4,7 +4,7 @@
 
 namespace Composer\Autoload;
 
-class ComposerStaticInit72f67de33e1b44e47fbb763283ffdc83
+class ComposerStaticInit53863566eba8991ed6e3f477970e00f4
 {
     public static $files = array (
         '320cde22f66dd4f5d3fd621d3e88b98f' => __DIR__ . '/..' . '/symfony/polyfill-ctype/bootstrap.php',
@@ -575,11 +575,11 @@ class ComposerStaticInit72f67de33e1b44e47fbb763283ffdc83
     public static function getInitializer(ClassLoader $loader)
     {
         return \Closure::bind(function () use ($loader) {
-            $loader->prefixLengthsPsr4 = ComposerStaticInit72f67de33e1b44e47fbb763283ffdc83::$prefixLengthsPsr4;
-            $loader->prefixDirsPsr4 = ComposerStaticInit72f67de33e1b44e47fbb763283ffdc83::$prefixDirsPsr4;
-            $loader->prefixesPsr0 = ComposerStaticInit72f67de33e1b44e47fbb763283ffdc83::$prefixesPsr0;
-            $loader->fallbackDirsPsr0 = ComposerStaticInit72f67de33e1b44e47fbb763283ffdc83::$fallbackDirsPsr0;
-            $loader->classMap = ComposerStaticInit72f67de33e1b44e47fbb763283ffdc83::$classMap;
+            $loader->prefixLengthsPsr4 = ComposerStaticInit53863566eba8991ed6e3f477970e00f4::$prefixLengthsPsr4;
+            $loader->prefixDirsPsr4 = ComposerStaticInit53863566eba8991ed6e3f477970e00f4::$prefixDirsPsr4;
+            $loader->prefixesPsr0 = ComposerStaticInit53863566eba8991ed6e3f477970e00f4::$prefixesPsr0;
+            $loader->fallbackDirsPsr0 = ComposerStaticInit53863566eba8991ed6e3f477970e00f4::$fallbackDirsPsr0;
+            $loader->classMap = ComposerStaticInit53863566eba8991ed6e3f477970e00f4::$classMap;
 
         }, null, ClassLoader::class);
     }
diff --git a/civicrm/xml/version.xml b/civicrm/xml/version.xml
index 0433f3a5d9..0ebfe517d6 100644
--- a/civicrm/xml/version.xml
+++ b/civicrm/xml/version.xml
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="iso-8859-1" ?>
 <version>
-  <version_no>5.37.1</version_no>
+  <version_no>5.37.2</version_no>
 </version>
-- 
GitLab