From fa3a1dc6c11a42b5436b552068972d37e47bbf5a Mon Sep 17 00:00:00 2001 From: Jaap Jansma <jaap.jansma@civicoop.org> Date: Wed, 9 Oct 2019 14:09:53 +0200 Subject: [PATCH] added currency formatting --- .../FieldOutputHandler/AbstractSimpleFieldOutputHandler.php | 2 ++ .../AggregateFunctionFieldOutputHandler.php | 5 +++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Civi/DataProcessor/FieldOutputHandler/AbstractSimpleFieldOutputHandler.php b/Civi/DataProcessor/FieldOutputHandler/AbstractSimpleFieldOutputHandler.php index c1cd5fda..edfe86c1 100644 --- a/Civi/DataProcessor/FieldOutputHandler/AbstractSimpleFieldOutputHandler.php +++ b/Civi/DataProcessor/FieldOutputHandler/AbstractSimpleFieldOutputHandler.php @@ -96,6 +96,8 @@ class AbstractSimpleFieldOutputHandler extends AbstractFieldOutputHandler implem if (strpos($formattedValue, \CRM_Core_DAO::VALUE_SEPARATOR) !== false) { $formattedValue = explode(\CRM_Core_DAO::VALUE_SEPARATOR, substr($formattedValue, 1, -1)); $formattedValue = implode(",", $formattedValue); + } elseif ($this->inputFieldSpec->type == 'Money') { + $formattedValue = \CRM_Utils_Money::format($rawRecord[$this->inputFieldSpec->alias]); } $output = new FieldOutput($rawRecord[$this->inputFieldSpec->alias]); $output->formattedValue = $formattedValue; diff --git a/Civi/DataProcessor/FieldOutputHandler/AggregateFunctionFieldOutputHandler.php b/Civi/DataProcessor/FieldOutputHandler/AggregateFunctionFieldOutputHandler.php index c8403615..72717c03 100644 --- a/Civi/DataProcessor/FieldOutputHandler/AggregateFunctionFieldOutputHandler.php +++ b/Civi/DataProcessor/FieldOutputHandler/AggregateFunctionFieldOutputHandler.php @@ -44,7 +44,7 @@ class AggregateFunctionFieldOutputHandler extends AbstractSimpleFieldOutputHandl * @return String */ protected function getType() { - return 'Float'; + return $this->inputFieldSpec->type; } /** @@ -61,6 +61,8 @@ class AggregateFunctionFieldOutputHandler extends AbstractSimpleFieldOutputHandl $formattedValue = $value; if (is_numeric($this->number_of_decimals) && $value != null) { $formattedValue = number_format($value, $this->number_of_decimals, $this->decimal_sep, $this->thousand_sep); + } elseif ($this->inputFieldSpec->type == 'Money') { + $formattedValue = \CRM_Utils_Money::format($value); } if ($formattedValue != null) { $formattedValue = $this->prefix . $formattedValue . $this->suffix; @@ -215,7 +217,6 @@ class AggregateFunctionFieldOutputHandler extends AbstractSimpleFieldOutputHandl case 'Integer': case 'Float': case 'Money': - case 'String': return true; break; } -- GitLab