CiviCRM Core issueshttps://lab.civicrm.org/dev/core/-/issues2024-03-07T13:35:18Zhttps://lab.civicrm.org/dev/core/-/issues/5054Add postal address columns to soft credit report2024-03-07T13:35:18ZyashodhaAdd postal address columns to soft credit reportAdd postal address columns for both `Soft Credit` and `Contributor`contacts to soft credit report .Add postal address columns for both `Soft Credit` and `Contributor`contacts to soft credit report .yashodhayashodhahttps://lab.civicrm.org/dev/core/-/issues/5053Formbuilder/ event tab: Add the possibility to create or select a location2024-03-07T13:34:54ZNadaillacFormbuilder/ event tab: Add the possibility to create or select a locationIn the tab event, there should be the possibility to select a location or create a location, and in that case set all location fields. Similarly to the current backend form.
This enhancement could be funded.
Discussed with @colemanwIn the tab event, there should be the possibility to select a location or create a location, and in that case set all location fields. Similarly to the current backend form.
This enhancement could be funded.
Discussed with @colemanwhttps://lab.civicrm.org/dev/core/-/issues/5052drupal 8 - php warnings on every page: html_entity_decode(): Passing null to ...2024-03-02T20:06:02ZDaveDdrupal 8 - php warnings on every page: html_entity_decode(): Passing null to parameter #1 ($string) of type string is deprecatedThis just started last night. I'm guessing from https://github.com/civicrm/civicrm-core/pull/29496This just started last night. I'm guessing from https://github.com/civicrm/civicrm-core/pull/29496https://lab.civicrm.org/dev/core/-/issues/5051Setting a default membership type in a contribution page has no effect2024-03-05T19:37:44ZUpperholmeSetting a default membership type in a contribution page has no effectRunning 5.70.1 and setting up a new contribution page as a membership sign-up form. I want the membership type to be pre-selected for users viewing the form (I am only offering one membership type on this form), so I tick the desired mem...Running 5.70.1 and setting up a new contribution page as a membership sign-up form. I want the membership type to be pre-selected for users viewing the form (I am only offering one membership type on this form), so I tick the desired membership type and set it as the default option in the form configuration (as an aside it seems to be the case that once a default is set it can't be unset).
However, when viewing the resulting form the membership type is not selected. I've checked and confirmed this behaviour on the wpmaster demo site.5.71.0https://lab.civicrm.org/dev/core/-/issues/5050Message Templates: Membership Receipt, On-line and Contribution Receipt, On-l...2024-03-01T04:21:49Zjustinfreeman (Agileware)Message Templates: Membership Receipt, On-line and Contribution Receipt, On-line - both include userText ("Receipt Message") which is not used for these workflows.Message Templates: Membership Receipt, On-line and Contribution Receipt, On-line - both include userText ("Receipt Message”) which is not used for these workflows. The userText ("Receipt Message") is only used when recording a Contributi...Message Templates: Membership Receipt, On-line and Contribution Receipt, On-line - both include userText ("Receipt Message”) which is not used for these workflows. The userText ("Receipt Message") is only used when recording a Contribution, off-line.
userText ("Receipt Message") is not set for the following workflows:
- Membership, Off-line
- Membership, On-line
- Contribution, On-line
To summarise when a Receipt Message is set or available:
- Membership, Off-line - When the user sets the Receipt Message field
- Membership, On-line - On the related Contribution Page
- Contribution, Off-line - No ability to set a Receipt Message, field is not available
- Contribution, On-line - On the related Contribution Page
Agileware Ref: CIVICRM-2226https://lab.civicrm.org/dev/core/-/issues/5049Ability to add custom css class and/or ID to any formbuilder element2024-03-12T19:08:51ZnoahAbility to add custom css class and/or ID to any formbuilder elementOverview
----------------------------------------
In FormBuilder, the user should be able to add an arbitrary css class or id to any container, fieldset, field, button etc.
Based on discussion among @colemanw @JonGold @shaneonabike @tot...Overview
----------------------------------------
In FormBuilder, the user should be able to add an arbitrary css class or id to any container, fieldset, field, button etc.
Based on discussion among @colemanw @JonGold @shaneonabike @totten at the Montreal sprint.colemanwcolemanwhttps://lab.civicrm.org/dev/core/-/issues/5048Unstyled error message for end, when adding recurring start date, but no end.2024-02-29T21:29:35ZherbdoolUnstyled error message for end, when adding recurring start date, but no end.Create an activity, enter a recurring start date and leave the end blank. Attempt to save. An unstyled error message will appear next to the end options. Hard to notice.
![2024-02-29_16.21.51_foodbank-demo.lndo.site_d204c5cf45eb](/uploa...Create an activity, enter a recurring start date and leave the end blank. Attempt to save. An unstyled error message will appear next to the end options. Hard to notice.
![2024-02-29_16.21.51_foodbank-demo.lndo.site_d204c5cf45eb](/uploads/427dc932af3388533c868137eefe47cf/2024-02-29_16.21.51_foodbank-demo.lndo.site_d204c5cf45eb.png)
It should be generated like other inline error messages and also show up in the corner popup.https://lab.civicrm.org/dev/core/-/issues/5047Custom Fields appear to be unavailable under 5.70.12024-03-07T13:34:08ZspalmstromCustom Fields appear to be unavailable under 5.70.1Overview
----------------------------------------
When you navigate to CiviCRM -> Administer -> Custom Data and Screens -> Custom Fields, you don't see any and the Action button is disabled.
Reproduction steps
-------------------------...Overview
----------------------------------------
When you navigate to CiviCRM -> Administer -> Custom Data and Screens -> Custom Fields, you don't see any and the Action button is disabled.
Reproduction steps
----------------------------------------
1. CiviCRM -> Administer -> Custom Field Groups
1. You get the behaviour described above.
Current behaviour
----------------------------------------
![image](/uploads/160d43a48d3da9cf85027bd00173b7e7/image.png)
Notice, no custom field group and the greyed out Action.
Expected behaviour
----------------------------------------
The custom field groups should be listed and the Action button enabled.
Environment information
----------------------------------------
<!-- Some of the items below may not be relevant for every bug - if in doubt please include more information than you think is neccessary. -->
* __Browser:__ _MS Edge_ but probably irrelevant.
* __CiviCRM:__ _5.70.1_
* __PHP:__ _8.3.1__ but probably irrelevant.
* __CMS:__ _Drupal 10.2.3_
* __Database:__ _MySQL 8.3.0/8.0.36_
* __Web Server:__ _IIS 10_
Comments
----------------------------------------
_Anything else you would like the reviewer to note._
I have tried debugging this, but have so far not succeeded, so I haven't been able to generate a PR. There will be others with more knowledge than I who can probably point to where to look. 5.72.alpha1 does not show the issue, neither does our production system stuck on 5.68.1 because our test system is displaying the above issue among others.https://lab.civicrm.org/dev/core/-/issues/5046Batch Membership Form: displayed total incorrect when numbers localized2024-03-07T13:33:05ZjamesbugdenBatch Membership Form: displayed total incorrect when numbers localizedOverview
----------------------------------------
Total calculation uses parseFloat which ignores localization settings.
This creates a display issue.
Batch Data Entry for Contributions / Total Amount Entered does not display correc...Overview
----------------------------------------
Total calculation uses parseFloat which ignores localization settings.
This creates a display issue.
Batch Data Entry for Contributions / Total Amount Entered does not display correctly when localized
![image](/uploads/6dd56b9e04871d1cc985ad0b3d1a1675/image.png)
Reproduction steps
----------------------------------------
1. Change Thousands and Decimal separators to space and comma
- Changing Default Language has no effect on issue.
- Default Language should determine thousands separator and decimal delimiter (but it doesn't).
2. Go to Batch Data Entry for Contributions form
3. Enter Number of Items equals 1 and a Total Amount containing a decimal and Save
4. On next form, enter the Amount with a decimal
- Total Amount Entered does not show the decimal
Current behaviour
----------------------------------------
Total Amount Entered is calculated using using JS parseFloat, which ignores localization.
The total does not show any decimal amount, and if the thousands separator is used, is even worse.
For example, in a French locale, 1000,10 & 1000,10 will total to 2000,00
And 1 000,10 & 1 000,10 will total to 2,00
Expected behaviour
----------------------------------------
The total calculation needs to use a locale aware method.
Suggested solution
---
Use localized input (parseMoney) and output (formatMoney) functions.
parseMoney replaces parseFloat but needs to be written.
https://github.com/eileenmcnaughton/civicrm-core/blob/7fd53dcad9604faff6b377a251f7227ab7f6d909/templates/CRM/Batch/Form/Entry.tpl#L287
```
function calculateActualTotal() {
var total = 0;
cj('input[id*="_total_amount"]').each(function () {
if (cj(this).val()) {
total += CRM.parseMoney(cj(this).val());
}
});
cj('.batch-actual-total').html(CRM.formatMoney(total));
}
```https://lab.civicrm.org/dev/core/-/issues/5045CiviCRM 5.70.0 - CiviCRM 5.72.alpha1, Manage Groups page (not SearchKit) the...2024-03-18T15:30:58Zjustinfreeman (Agileware)CiviCRM 5.70.0 - CiviCRM 5.72.alpha1, Manage Groups page (not SearchKit) the "quick edit" feature for the Group Title will include the "Child of" details in the editable fieldCiviCRM 5.70.0 - CiviCRM 5.72.alpha1, Manage Groups page (not SearchKit) the "quick edit" feature for the Group Title will include the "Child of" details in the editable field.
- Instead of editing: "Advisory Board"
- The text edited i...CiviCRM 5.70.0 - CiviCRM 5.72.alpha1, Manage Groups page (not SearchKit) the "quick edit" feature for the Group Title will include the "Child of" details in the editable field.
- Instead of editing: "Advisory Board"
- The text edited is: "Advisory BoardChild of: Summer Program Volunteers"
As shown below in screenshot from CiviCRM 5.72.alpha1 - https://dmaster.demo.civicrm.org/civicrm/group?reset=1
![image](/uploads/56206568c0a4103b7fa27f30602156d0/image.png)
Agileware Ref: CIVICRM-2224https://lab.civicrm.org/dev/core/-/issues/5044CiviCRM 5.70.0, When doing a back-end event registration for an Event which u...2024-03-18T15:30:22Zjustinfreeman (Agileware)CiviCRM 5.70.0, When doing a back-end event registration for an Event which uses a Priceset, the event registration allows a $0 registration fee which does not record any line itemsWhen doing a back-end event registration for an Event which uses a Priceset, the event registration allows a $0 registration fee which does not record any line items. This causes Priceset related errors when generating the emails using t...When doing a back-end event registration for an Event which uses a Priceset, the event registration allows a $0 registration fee which does not record any line items. This causes Priceset related errors when generating the emails using the Message Template. Event registration will just “hang” and the following logged to the error log.
```
An error of type E_ERROR was caused in line 474 of the file civicrm/CRM/Financial/BAO/Order.php. Error message: Uncaught TypeError: CRM_Financial_BAO_Order::getPriceSetID(): Return value must be of type int, null returned in
CRM/Financial/BAO/Order.php:474
```
CiviCRM 5.70.0
Agileware Ref: CIVICRM-2220https://lab.civicrm.org/dev/core/-/issues/5043Ability to set font type, font size and line spacing as default2024-02-29T16:43:58Zaydunsaidan.saunders@squiffle.ukAbility to set font type, font size and line spacing as default(From a user at a visibility charity.)
When you create a new activity, the text box for the activity defaults to sand-serif and 13 point.
It would be beneficial to have the ability to set a default font type and size, along with defaul...(From a user at a visibility charity.)
When you create a new activity, the text box for the activity defaults to sand-serif and 13 point.
It would be beneficial to have the ability to set a default font type and size, along with default line spacing, for all text boxes.
For example, we mandate Arial, 14 pt and 1.5 line spacing for electronic communications. That’s what we would like to have a standard on our version of CiviCRM. Having the ability to set these as default on CiviCRM saves workers from having to manually change font type and size when using the activity details box.
I don’t think there is any way to set line spacing in Civi. This would be a much-needed addition, if possible.https://lab.civicrm.org/dev/core/-/issues/5042Website examples with accessibility options2024-03-07T13:31:28Zaydunsaidan.saunders@squiffle.ukWebsite examples with accessibility options(Not a typical issue, but not sure where better to put it.)
For those working on theming and accessibility, here are two example sites of interest:
https://visibilityscotland.org.uk/ The stick figure top left gives accessibility optio...(Not a typical issue, but not sure where better to put it.)
For those working on theming and accessibility, here are two example sites of interest:
https://visibilityscotland.org.uk/ The stick figure top left gives accessibility options for:
- Increase and decrease text
- Grayscale
- High contrast
- Negative contrast
- Light background
- Links underline
- Readable font
https://www.macularsociety.org/ Different options available under Accessibility Options (top left)https://lab.civicrm.org/dev/core/-/issues/5041Make Font Awesome icons more accessible2024-03-01T00:00:50ZnicolMake Font Awesome icons more accessibleIcon fonts aren't accessible by default as, unlike images, they don't have an alt description.
Updating this issue following feedback from @mthompson in the [accessibility channel](https://chat.civicrm.org/civicrm/pl/pa1hs9qsnty75bhb9qy...Icon fonts aren't accessible by default as, unlike images, they don't have an alt description.
Updating this issue following feedback from @mthompson in the [accessibility channel](https://chat.civicrm.org/civicrm/pl/pa1hs9qsnty75bhb9qy54j715w).
We started looking at [Font Awesome's recommendation](https://fontawesome.com/docs/web/dig-deeper/accessibility) to distinguish between icons that are 'decorative', ie not useful and screen readers can ignore, hidden with `aria-hidden="true"`; vs 'semantic', this is meaningful and important, e.g. a bookmark icon.
However, @mthompson said "icons are not really decorative elements (which are commonly excluded). They are functional... Even with decorative it requires a good understanding of what needs to be included and what should be hidden, depending on context and purpose of the decorations. A good rule of thumb is to question why a particular graphic is there and would hiding it be discriminatory or helpful."
I turned then to the [WCAG guidelines on icons](https://www.w3.org/WAI/WCAG21/Techniques/aria/ARIA24) (should have started there) and they don't recommend using `aria-hidden="true"`. They instead suggest `role="img"`with `aria-label`, e.g. `<span class="icon icon-email" role="img" aria-label="Email"></span>`.
This isn't what Civi docs or help icon classes do. So this issue has three steps:
- [ ] update the docs, to suggest best practice for icons: https://docs.civicrm.org/dev/en/latest/framework/ui/#icons
- [ ] update the [icon helper functions](https://docs.civicrm.org/dev/en/latest/framework/ui/#icon-helper-functions) that auto-generate icon markup
- [ ] bulk update icons in the Civi UI. It may be that the font-awesome name is helpful in most instances so this could be done by script… e.g. turning `<i class="crm-i fa-birthday-cake" aria-hidden="true"></i>` into `<span class="crm-i fa-birthday-cake" role="img" aria-label="birthday cake"></span>` (emphasis isn't supported for aria-label).https://lab.civicrm.org/dev/core/-/issues/5040Events - Registration Confirmation and Receipt (on-line) template fails to co...2024-03-12T00:54:25ZspalmstromEvents - Registration Confirmation and Receipt (on-line) template fails to compileOverview
----------------------------------------
The default `Events - Registration Confirmation and Receipt (on-line)` fails to compile, giving this error:
`"Syntax error in template "eval:{crmScope extensionKey=""}<!DOCTYPE html..."...Overview
----------------------------------------
The default `Events - Registration Confirmation and Receipt (on-line)` fails to compile, giving this error:
`"Syntax error in template "eval:{crmScope extensionKey=""}<!DOCTYPE html..." on line 471 "{capture assign=selfservice_preposition}{if 0 && > 0}{ts}before{/ts}{else}{ts}after{/ts}{/if}{/capture}" - Unexpected "> ""`
|----------------------------------------------------------|
Reproduction steps
----------------------------------------
1. Attempt to register for an event.
1. Enter details.
1. Click on Review.
1. Click on Register.
1. You get an error message.
Current behaviour
----------------------------------------
This error message is generated internally, but was only visible when debugging because of [Call to SmartyCompilerException fails in <drupal root>/vendor/civicrm/civicrm-packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php on template compiler error.
](https://lab.civicrm.org/dev/core/-/issues/5039)
```
"Syntax error in template "eval:{crmScope extensionKey=""}<!DOCTYPE html..." on line 471 "{capture assign=selfservice_preposition}{if 0 && > 0}{ts}before{/ts}{else}{ts}after{/ts}{/if}{/capture}" - Unexpected "> ""
```
Expected behaviour
----------------------------------------
You get a registration confirmation page.
Environment information
----------------------------------------
* __Browser:__ _MS Edge_ but probably irrelevant
* __CiviCRM:__ _5.70.1_
* __PHP:__ _8.3.1__
* __CMS:__ _Drupal 10.2.3_
* __Database:__ _MySQL 8.0.36_ but probably irrelevant.
* __Web Server:__ _IIS_ but probably irrelevant.
Comments
----------------------------------------
The 'offending' code is somewhere here, I suspect (lines 461 - 471) but I haven't been able to discover it.
```
{if {event.allow_selfcancelxfer|boolean}}
<tr>
<td colspan="2" {$valueStyle}>
{capture assign=selfservice_preposition}{if {event.selfcancelxfer_time|boolean} && {event.selfcancelxfer_time} > 0}{ts}before{/ts}{else}{ts}after{/ts}{/if}{/capture}
{ts 1="{event.selfcancelxfer_time}" 2="$selfservice_preposition"}You may transfer your registration to another participant or cancel your registration up to %1 hours %2 the event.{/ts}
{if {contribution.paid_amount|boolean}}{ts}Cancellations are not refundable.{/ts}{/if}<br/>
{capture assign=selfService}{crmURL p='civicrm/event/selfsvcupdate' q="reset=1&pid={participant.id}&{contact.checksum}" h=0 a=1 fe=1}{/capture}
<a href="{$selfService}">{ts}Click here to transfer or cancel your registration.{/ts}</a>
</td>
</tr>
{/if}
```5.71.0https://lab.civicrm.org/dev/core/-/issues/5039Call to SmartyCompilerException fails in <drupal root>/vendor/civicrm/civicrm...2024-03-07T13:30:53ZspalmstromCall to SmartyCompilerException fails in <drupal root>/vendor/civicrm/civicrm-packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php on template compiler error.Overview
----------------------------------------
When `<drupal root>/vendor/civicrm/civicrm-packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php` fails to compile a template, it attempts to cre...Overview
----------------------------------------
When `<drupal root>/vendor/civicrm/civicrm-packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php` fails to compile a template, it attempts to create a `SmartyCompilerException` by calling this code:
```
$e = new SmartyCompilerException($error_text);
$e->line = $line;
$e->source = trim(preg_replace('![\t\r\n]+!', ' ', $match[ $line - 1 ]));
$e->desc = $args;
$e->template = $this->template->source->filepath;
throw $e;
```
It crashes on the first line giving this message instead.
```
PHP Fatal error: Type of SmartyCompilerException::$line must be int (as in class Exception) in D:\CiviCRM_Custom.git\drupal_test\vendor\civicrm\civicrm-packages\smarty3\vendor\smarty\smarty\libs\sysplugins\smartycompilerexception.php on line 8
```
Reproduction steps
----------------------------------------
1. Attempt to register for an event on line.
1. Enter details.
1. Click Review.
1. Click Register.
Current behaviour
----------------------------------------
With the current (5.70.1) `Events - Registration Confirmation and Receipt (on-line)` template, you get the above error.
|----------------------------------------------------------
Expected behaviour
----------------------------------------
You get a successful registration.
Environment information
----------------------------------------
* __Browser:__ _MS Edge_ but probably irrelevant
* __CiviCRM:__ _5.70.1_
* __PHP:__ _8.3.1__
* __CMS:__ _Drupal 10.2.3_
* __Database:__ _MySQL 8.0._
* __Web Server:__ _IIS_
Comments
----------------------------------------
The fatal error occurs in the first line of the code snippet (line 1153) before the line number is entered. I have been unable to determine which Exception is being extended. This will, of course, only be an issue if there is a problem compiling a template.https://lab.civicrm.org/dev/core/-/issues/5038Default admin when installing2024-03-07T21:36:59ZErikHommelDefault admin when installingWhen installing standalone a user name and password can be entered. These fields have defaults, which led to confusions by 2 installers. They did not notice this and left the default values, and later on could not log in as they did not ...When installing standalone a user name and password can be entered. These fields have defaults, which led to confusions by 2 installers. They did not notice this and left the default values, and later on could not log in as they did not know user nor passwords. Defaults should be removed and fields mandatory.
Also I need to be able to add an email address. If I now did not notice the user and password and then click on the "forgot password" link an email will be sent to a localdomain e-mail address which is not very helpful.https://lab.civicrm.org/dev/core/-/issues/5037Standalone: installation of CiviCRM in another language2024-03-12T13:23:06ZjaapjansmaStandalone: installation of CiviCRM in another languageThe installer for CiviCRM standalone gives an error message when you select another language then English.
The installer is capable of downloading the translation files however this is not implemented yet in the standalone installer.The installer for CiviCRM standalone gives an error message when you select another language then English.
The installer is capable of downloading the translation files however this is not implemented yet in the standalone installer.jaapjansmajaapjansmahttps://lab.civicrm.org/dev/core/-/issues/5036Database Error Using Include/Exclude Search With Long Group Names2024-03-02T03:28:20ZLKuttnerDatabase Error Using Include/Exclude Search With Long Group NamesA database error occurs when attempting to do an Include/Exclude search with a group name over 64 characters in length.
[error]
$Fatal Error Details = array:3 [
"message" => "DB Error: unknown error"
"code" => null
"exception...A database error occurs when attempting to do an Include/Exclude search with a group name over 64 characters in length.
[error]
$Fatal Error Details = array:3 [
"message" => "DB Error: unknown error"
"code" => null
"exception" => Civi\Core\Exception\DBQueryException {
-errorData: array:2 [
"exception" => DB_Error {
+error_message_prefix: ""
+mode: 16
+level: 1024
+code: -1
+message: "DB Error: unknown error"
+userinfo: """
INSERT INTO civicrm_tmp_e_iggroup_1d303da385fcd81408e677514935ea99 (contact_id, group_names)
SELECT civicrm_contact.id as contact_id, civicrm_group.title as group_name
FROM civicrm_contact
INNER JOIN civicrm_group_contact
ON civicrm_group_contact.contact_id = civicrm_contact.id
LEFT JOIN civicrm_group
ON civicrm_group_contact.group_id = civicrm_group.id WHERE
civicrm_group_contact.status = 'Added' AND
civicrm_group_contact.group_id IN(3058) [nativecode=1406 ** **Data too long for column** 'group_names' at row 1]
"""
+backtrace: array:29 [
0 => array:6 [
"file" => ".../modules/civicrm/vendor/pear/db/DB.php"
"line" => 997
"function" => "__construct"
"class" => "PEAR_Error"
"type" => "->"
"args" => array:5 [
0 => "DB Error: unknown error"
1 => -1
2 => 16
3 => array:2 [
0 => "CRM_Core_Error"
1 => "exceptionHandler"
]
4 => """
INSERT INTO civicrm_tmp_e_iggroup_1d303da385fcd81408e677514935ea99 (contact_id, group_names)
SELECT civicrm_contact.id as contact_id, civicrm_group.title as group_name
FROM civicrm_contact
INNER JOIN civicrm_group_contact
ON civicrm_group_contact.contact_id = civicrm_contact.id
LEFT JOIN civicrm_group
ON civicrm_group_contact.group_id = civicrm_group.id WHERE
civicrm_group_contact.status = 'Added' AND
civicrm_group_contact.group_id IN(3058) [nativecode=1406 ** **Data too long for column** 'group_names' at row 1]
"""
]
]https://lab.civicrm.org/dev/core/-/issues/5035Editing an unpaid event registration to add a partial payment crashes2024-02-26T22:27:11ZDaveDEditing an unpaid event registration to add a partial payment crashesI think this is at least semi-recent since I know one site that uses this workflow regularly.
1. Create a backend event registration.
2. Uncheck the record payment checkbox.
3. Save.
4. Edit the registration.
5. Check the record payment...I think this is at least semi-recent since I know one site that uses this workflow regularly.
1. Create a backend event registration.
2. Uncheck the record payment checkbox.
3. Save.
4. Edit the registration.
5. Check the record payment checkbox and put in a partial payment.
6. Crash - Mandatory key(s) missing from params array: trxn_date. Note that on edit the Contribution Date field in the payment section is blank, as opposed to when first creating it. But note also that entering a full payment does not crash.
`civicrm_api3('Payment', 'create', Array) at /CRM/Event/Form/Participant.php:1095`5.71.0