CRM-15835 - Event registrations total amounts with decimals stored incorrectly when...
authoratif-shaikh <shaikh388@gmail.com>
Fri, 30 Jan 2015 13:55:02 +0000 (19:25 +0530)
committeratif-shaikh <shaikh388@gmail.com>
Fri, 30 Jan 2015 13:55:02 +0000 (19:25 +0530)
https://issues.civicrm.org/jira/browse/CRM-15835

CRM/Utils/Rule.php

index 30d49df23a2831febe3c659075e8c601e8226760..dec94a40b6bc765eb7162747fa25218bf047cde2 100644 (file)
@@ -443,7 +443,9 @@ class CRM_Utils_Rule {
     // ugly fix for CRM-6391: do not drop the thousand separator if
     // it looks like it’s separating decimal part (because a given
     // value undergoes a second cleanMoney() call, for example)
-    if ($mon_thousands_sep != '.' or substr($value, -3, 1) != '.') {
+    // CRM-15835 - in case the amount/value contains 0 after decimal
+    // eg 150.5 the following if condition will pass
+    if ($mon_thousands_sep != '.' or (substr($value, -3, 1) != '.' && substr($value, -2, 1) != '.')) {
       $value = str_replace($mon_thousands_sep, '', $value);
     }