Record Refund fails due to thousands separator in amount
When recording a refund, such as on a change of registration level on an event, if the refund exceeds 1,000 the intial save will fail. This is due to the thousands separator being in the number
- Create an event Price set with two fee levels 5,000 and 1,000 $ € currency is not material
- Assign Price set to an event
- Add a Participant at 5,000 level and record payment
- Edit the event and change selections to the 1,000 level
- Go to the Contribution and Record Refund
- Choose Payment Method
- Enter Fee Amount
The form does not save. A message appaears that the Net Amount should be equal to difference between the payment amount and the fee amount
This error occurs due to the thousands separator. Remove it and it will save.
Expected behavior would be to either handle the thousands separator properly or not display it.
- Browser: FireFox 70
- CiviCRM: 5.19.1
- PHP: Tested on 7.2 and 7.3 (same behavior)
- CMS:WP 5.3_
- Database: MariaDB 10.1
- Web Server: Apache 2.4
There is a work around here, but this is a regression. Tested in 5.14.2 and it worked fine. I have not tested on 5.18 yet, as I wanted to get the report in.