Record Refund fails due to thousands separator in amount
Overview
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
Reproduction steps
- 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
- Save
Current behaviour
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
Expected behaviour
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.
Environment information
- 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
Comments
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.