Development issueshttps://lab.civicrm.org/groups/dev/-/issues2024-03-07T13:44:21Zhttps://lab.civicrm.org/dev/core/-/issues/5063Payment Processor shows Machine Name instead of Backend Title in Configure Ev...2024-03-07T13:44:21Za.valllloveraPayment Processor shows Machine Name instead of Backend Title in Configure Event FeeCurrently the Machine Name of the Payment Processor is shown instead of the Backend Title in Configure Event Fee.
![image.png](/uploads/8029ab7c4e2e343a7adcd43b9ff57bbd/image.png)
![image.png](/uploads/15041218f9d5c10911b5b3d4c5e72fcb/...Currently the Machine Name of the Payment Processor is shown instead of the Backend Title in Configure Event Fee.
![image.png](/uploads/8029ab7c4e2e343a7adcd43b9ff57bbd/image.png)
![image.png](/uploads/15041218f9d5c10911b5b3d4c5e72fcb/image.png)
In Event:
![image.png](/uploads/d8ed15dd94db3f41c2c6ac93ed4544cc/image.png)
Additionally, this means that is meaningless to rename the Backend Title since it will not be displayed. Seems that is getting the `name` field instead of the `title` field.
The tests were made in Master.
EDIT: Seems the problem is here: [PseudoConstant.php](https://github.com/civicrm/civicrm-core/blob/2b410a28eb62e3fc0ada7df712e538794cd06efa/CRM/Core/PseudoConstant.php#L978)https://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/5028Add CKEditor/WYSIWYG to the Event Confirmation Email Text Field2024-02-28T12:47:28ZpbarmakAdd CKEditor/WYSIWYG to the Event Confirmation Email Text FieldPer a discussion with Eileen, it would be great to finally get the Confirmation Email Text field of Event Online Registrations to use CKEditor. That will allow admins to create much nicer confirmation emails (with embedded graphics and b...Per a discussion with Eileen, it would be great to finally get the Confirmation Email Text field of Event Online Registrations to use CKEditor. That will allow admins to create much nicer confirmation emails (with embedded graphics and branding) without the need to learn HTML. Given the Registration Screen Introductory Text and Thank-you Screen text both have this option, it seems like a good idea to also have it for the confirmation email.https://lab.civicrm.org/dev/core/-/issues/4907Event full inconsistencies2024-01-15T11:35:24ZeileenEvent full inconsistenciesThe way EventFull is calculated in apiv4 is not consistent with elsewhere
apiv4 returns a field `'remaining_participants'` which is
event.max_participants - COUNT(participant rows for the event where contact is not deleted, participant ...The way EventFull is calculated in apiv4 is not consistent with elsewhere
apiv4 returns a field `'remaining_participants'` which is
event.max_participants - COUNT(participant rows for the event where contact is not deleted, participant is not test and participant status is_counted)
By contrast apiv3 returns the contents of `CRM_Event_BAO_Participant::eventFull()` which also takes into account the participant role and other aspects of the status
`eventFull()` has some funky parameters - there are 12 calls to it
| caller | returnEmptySeats |includeWaitingList|returnWaitingCount|considerTestParticipant|onlyPositiveStatuses|
| ------ | ------ |------ |------ |------ |------ |
| apiv3-event | TRUE |TRUE|FALSE|FALSE|FALSE|
| Participant::eventFullMessage | FALSE |FALSE|FALSE|FALSE|FALSE|
| Participant::eventFullMessage(2) | FALSE |TRUE|TRUE|FALSE|FALSE|
|ParticipantStatusType::process|TRUE|FALSE|FALSE|FALSE|
|ParticipantTest|FALSE|TRUE|FALSE|FALSE|FALSE|
|Registration::preProcess|FALSE|if-event-has-waitlist|FALSE|FALSE|FALSE|
|Registration::preProcess(2)|TRUE|if-event-has-waitlist|FALSE|FALSE|FALSE|
|Event_Confirm::formRule|FALSE|if-event-has-waitlist|FALSE|FALSE|FALSE|
|ParticipantConfirm|TRUE|FALSE|TRUE|FALSE|TRUE|
|Register::preProcess|FALSE|if-event-has-waitlist|FALSE|FALSE|FALSE|
|EventInfo::run|FALSE|if-event-has-waitlist|FALSE|FALSE|FALSE|
|event-cart|TRUE|TRUE|FALSE|FALSE|FALSE|
Note that this issue somewhat relates/ explains
https://lab.civicrm.org/dev/event/-/issues/23https://lab.civicrm.org/dev/core/-/issues/4902Unnecessary Event Breadcrumb When Editing Event2024-02-01T10:45:52ZthemakUnnecessary Event Breadcrumb When Editing EventWhen editing an event - the breadcrumbs that display are:
CiviCRM > CiviEvent Dashboard > Manage Events > Manage Events
The first 3 make sense, but the last one actually links to the edit event page that you are editing. While I have se...When editing an event - the breadcrumbs that display are:
CiviCRM > CiviEvent Dashboard > Manage Events > Manage Events
The first 3 make sense, but the last one actually links to the edit event page that you are editing. While I have seen breadcrumbs include the current page you are on, usually they are not linked and sometimes greyed out. To stay consistent with other parts of civi, I would remove the last breadcrumb. If we decide to keep for some reason - at very least it should say Configure Event - not Manage Event.
5.69.1 - also replicated in 5.71.alpha1
![Screenshot_2024-01-10_at_12.52.30_PM](/uploads/d6048cb7a5167aab82e3dca9c2aba45d/Screenshot_2024-01-10_at_12.52.30_PM.png)https://lab.civicrm.org/dev/core/-/issues/4849Shorten all Event iCal descriptions to match Add event to Google Calendar2024-03-07T00:52:44ZshaneonabikeShorten all Event iCal descriptions to match Add event to Google CalendarOverview
----------------------------------------
Presently, the _Add event to Google Calendar_ provide the ability to add a CiviCRM event into Google Calendars. The description is reduced down to the first paragraph and a link to the Ev...Overview
----------------------------------------
Presently, the _Add event to Google Calendar_ provide the ability to add a CiviCRM event into Google Calendars. The description is reduced down to the first paragraph and a link to the Event details is provided below. This is a lot cleaner than the present _Add event to iCalendar_, which includes all the Event description
![Selection_001](/uploads/33efb84cb475bfff4b087364d08d705c/Selection_001.png)
Example use-case
----------------------------------------
1. Create a New Event
1. Add a long description
1. View Event Info page
Current behaviour
----------------------------------------
The description provided in the ```ics``` and other formats is quite long.
Proposed behaviour
----------------------------------------
Reduce the description down to one paragraph with a link to the actual Event within the description. It would make it consistent and also probably a bit cleaner since most people (I think) don't read a full description after they have added something to their calendar but a reference is awesome!https://lab.civicrm.org/dev/core/-/issues/4809Backend register for event via credit card has problematic pre-help text and ...2023-12-06T23:06:43ZDaveDBackend register for event via credit card has problematic pre-help text and should be completely removed and replaced with only a translation-friendly indicator of live vs testCopied from https://github.com/civicrm/civicrm-core/pull/28309
I think the [tpl line](https://github.com/civicrm/civicrm-core/blob/6c6fdea6429f39d552d0cc6bae0254d27daa4919/templates/CRM/Event/Form/Participant.tpl#L31) needs to be comple...Copied from https://github.com/civicrm/civicrm-core/pull/28309
I think the [tpl line](https://github.com/civicrm/civicrm-core/blob/6c6fdea6429f39d552d0cc6bae0254d27daa4919/templates/CRM/Event/Form/Participant.tpl#L31) needs to be completely replaced. I would remove the first sentence since it adds no value since right above it already says the name when it's present, and when it's not present is the cause of this notice, and then the second sentence is not correct in other languages (the "live"/"test" is always in english). Elsewhere the approach for that when there's a known list of values is to just hardcode the full sentences in an `{if}` block.
I do think it's important to identify if it's live or test, but since none of the above has been raised as an issue the help text itself seems very unimportant. Maybe it should just have some kind of icon indicating live or test and that's it.https://lab.civicrm.org/dev/core/-/issues/4744Proposal - remove 'record contribution' from back office participant form whe...2023-11-02T15:27:49ZeileenProposal - remove 'record contribution' from back office participant form where pending contribution existsIf a participant record is updated where a pending record exists you need to update the status from pending to completed
![image](/uploads/1450500ef919017c7eee5c9ef326de6c/image.png)
![image](/uploads/87bc885b56fd756e897dc416a47eccd9/...If a participant record is updated where a pending record exists you need to update the status from pending to completed
![image](/uploads/1450500ef919017c7eee5c9ef326de6c/image.png)
![image](/uploads/87bc885b56fd756e897dc416a47eccd9/image.png)
However - this ONLY updates the contribution - without a separate action to update the participant status the participant status is unchanged
This is wildly confusing.
I propose we don't show 'record contribution' section when there is an existing payment & instead offer an 'add payment' button that pops up the Add payment form if clicked...https://lab.civicrm.org/dev/core/-/issues/4743Refreshing event registration thank you page resulting error2023-11-17T15:44:51Zvakeesan26Refreshing event registration thank you page resulting errorRefreshing Event registration thank you page resulting error as below
**Could not find valid value for id**
![image](/uploads/15aa0a835556a286a3ab8172cb13c63d/image.png)Refreshing Event registration thank you page resulting error as below
**Could not find valid value for id**
![image](/uploads/15aa0a835556a286a3ab8172cb13c63d/image.png)https://lab.civicrm.org/dev/core/-/issues/4704Event Info displays "registration is closed", but it requires login2023-10-20T17:45:41ZbgmEvent Info displays "registration is closed", but it requires loginIn commit 597e807091d835fba28a636ea8f9da76bf63b1a0, the condition for assigning this variable changed:
```
--- a/CRM/Event/Page/EventInfo.php
+++ b/CRM/Event/Page/EventInfo.php
@@ -280,10 +280,8 @@ class CRM_Event_Page_EventInfo extends...In commit 597e807091d835fba28a636ea8f9da76bf63b1a0, the condition for assigning this variable changed:
```
--- a/CRM/Event/Page/EventInfo.php
+++ b/CRM/Event/Page/EventInfo.php
@@ -280,10 +280,8 @@ class CRM_Event_Page_EventInfo extends CRM_Core_Page {
$this->assign('registerURL', $url);
}
}
- elseif (CRM_Core_Permission::check('register for events')) {
- $this->assign('registerClosed', TRUE);
- }
}
+ $this->assign('registerClosed', !empty($values['event']['is_online_registration']) && !$isEventOpenForRegistration);
$this->assign('allowRegistration', $allowRegistration);
```
The template in `templates/CRM/Event/Page/EventInfo.tpl` has the following code:
```
{if $registerClosed}
<div class="spacer"></div>
<div class="messages status no-popup">
<i class="crm-i fa-info-circle" aria-hidden="true"></i>
{ts}Registration is closed for this event{/ts}
</div>
{/if}
```
On a specific project, we previously had the following conditions:
- People had to login in order to register for an event
- Registrations can be closed at some pointhttps://lab.civicrm.org/dev/core/-/issues/4634Replace all form-assigned variables from event workflow templates2024-02-22T05:21:07ZeileenReplace all form-assigned variables from event workflow templates**The goal is to remove all form based variables from the event workflow templates in order to**
1) make them work consistently from whereever they are called
2) make them display in preview mode (eg. with Message Admin extension)
3) re...**The goal is to remove all form based variables from the event workflow templates in order to**
1) make them work consistently from whereever they are called
2) make them display in preview mode (eg. with Message Admin extension)
3) reduce hacky code in the form layer with associated brittleness & fragility
4) eliminate the notices
5) make the code more similar on event templates
**To this end we have a few strategies**
1) Use tokens whereever possible. These are standardised across Workflow Templates & Event templates & follow consistent naming
2) Establish consistent variables to be assigned at the WorkFlow layer where tokens are not suitable
**Status**
**Workflow variables**
- `$participants` - this is an array of all participants associated with the registration with details in subkeys:
- contact_display_name
- line_items
- totals
- `$participantDetail` - the item from the above array that relates to the recipient participant
- `$isPrimary` is this the primary participant
- `$taxTerm` is broadly available in workflow templates - eg 'VAT'
- `$isShowLineItems` (comes from the price set is_quick_config)
**Tokens**
Tokens are available from event, participant, contact & contribution entities
**To do**
- [ ] Work through variables `$isOnWaitlist` `$isRequireApproval` (all event forms)
- [ ] Replace `$participant_status` with a token (online receipt)
- [ ] Replace is_pay_later with token (online receipt)
- [ ] Replace isAmountZero with token (online receipt)
- [ ] Replace isAdditionalParticipant with !$isPrimary (online receipt)
- [ ] Replace {$pay_later_receipt} with token (offline receipt)
- [ ] Replace event_confirm_text with token (online receipt)
- [ ] Replace `$receive_date`, financialType (online receipt)
- [ ] Replace isShowLocation with token (online receipt)
- [ ] Make sense of `$payer.name` (online receipt)
- [ ] Assign billingName, address from the ContributionWorkflowTrait or token - comes from civicrm_contribution.address_id.*
- [ ] Maybe credit_card_type, number etc come from the financial_trxn table
- [ ] Replace `$lineItems|@count` with something from the participant array & doesn't used smarty-2-only |@count (online & offline receipt)
- [ ] Replace $priceSetFieldsCount with something from the workflow message template layer, also `{foreach from=$lineItem item=pcount}` loop
- [ ] Replace $event.confirm_email_text with `$userText` offline receipt
- [ ] Move event_registration_receipt to event cart - this extension is being phased out so we can let it go once that is the case
- [ ] Move assigning `customGroups` to the workflow template (offline receipt) https://github.com/civicrm/civicrm-core/pull/27596
- [ ] Move assigning profiles to the workflow template (online receipt)
- [ ] Get tokens & token substution & examples working for remaining participant templates -transfered, cancelled etc
- [ ] $hookDiscountMessage - ? not surehttps://lab.civicrm.org/dev/core/-/issues/4620CiviEvent dashboard: start date is 7 days ago2023-09-26T12:23:49ZmasettoCiviEvent dashboard: start date is 7 days agoI follow up https://civicrm.stackexchange.com/questions/22424/how-to-customize-events-dashboard.
The event dashboard now shows recent and upcoming events (where start date is 7 days ago OR later).
It would be convenient if the numbe...I follow up https://civicrm.stackexchange.com/questions/22424/how-to-customize-events-dashboard.
The event dashboard now shows recent and upcoming events (where start date is 7 days ago OR later).
It would be convenient if the number of days was configurable in the preferences of CiviEvents (`civicrm/admin/setting/preferences/event`).
Do you think it is useful and required by others as well?https://lab.civicrm.org/dev/core/-/issues/4534Price set discount by date back office issues2023-08-24T18:33:09ZlarsssandergreenPrice set discount by date back office issuesThese are probably not a priority for anyone, but I ran into these while testing @eileen's recent PR, so thought I might as well note them:
1. Discount set shows as a select on edit participant, but only in certain circumstances (haven'...These are probably not a priority for anyone, but I ran into these while testing @eileen's recent PR, so thought I might as well note them:
1. Discount set shows as a select on edit participant, but only in certain circumstances (haven't quite worked this out, but something to do with number of discount sets and/or whether the dates are current or in the past). It also seems to be wrong, showing the current discount set based on the current date, not the one for the participant. Regardless, it shouldn't be changeable here as that does nothing. It should either always show as frozen or never show at all.
2. On the other hand, discount set should always be selectable on Change Selections, with the default set to the discount set that the participant currently has (then if you change from adult to student ticket or something, they still get the discount based on date, but you also can change the discount if needed).
3. Discount set is selectable when registering a single participant from back office, but not on the Register search task for multiple participants. It should be.https://lab.civicrm.org/dev/core/-/issues/4526Unselecting price set discount set for back office event registration disappe...2023-08-23T02:51:57ZlarsssandergreenUnselecting price set discount set for back office event registration disappears fee block1. Add a discount set to a quick config price set for an event
2. Add new event registration from back office
3. Unselect the default discount set (which you would do if you wanted to charge the person full price)
The fee block disappea...1. Add a discount set to a quick config price set for an event
2. Add new event registration from back office
3. Unselect the default discount set (which you would do if you wanted to charge the person full price)
The fee block disappears, you cannot select any price options. The discount set is automatically re-selected, but the price options do not re-appear.https://lab.civicrm.org/dev/core/-/issues/4520Simplify and improve offline event receipt template contribution section details2023-09-23T22:55:28ZlarsssandergreenSimplify and improve offline event receipt template contribution section detailsAn offline event receipt includes the following (in this case, for a pending (pay later) registration):
![image](/uploads/67eefa5dc465c6ee31b71d7523f2c20c/image.png)
Here's a non-pending one:
![image](/uploads/954f9780ed01de7e46519f6b...An offline event receipt includes the following (in this case, for a pending (pay later) registration):
![image](/uploads/67eefa5dc465c6ee31b71d7523f2c20c/image.png)
Here's a non-pending one:
![image](/uploads/954f9780ed01de7e46519f6b36f2dc2b/image.png)
1. I don't think we need to include Registration Date. I don't know when this would be useful information for the recipient. It is almost always going to be the date of the email and even if it isn't (which I think is only possible if you manually change the date while inputting the registration), what purpose does it serve for the recipient? Note that we have Transaction Date just below this and they are going to be the same almost all the time. If it is important to someone that we include both we could do so if they are different, but I don't really see why we need to include Registration Date in an email receipt.
1. Paid By: This should not be included if no payment was recorded, as it is misleading in that case.
1. Total Amount: This should be included and we should show a balance if no payment has been made and the status is pending (pay later) - but not if the status is otherwise, because then we can assume that we aren't charging the person. In this case, we shouldn't include a total at all.
1. Pay later text. This should be included if we register the person as pending (pay later) and this text exists. It looks like there is some attempt to include this in the template, but it doesn't seem to work - I think is_pay_later may not be set for offline registrations.
2. Financial Type: Do we need to include this? In general, I think it doesn't add anything, but I suppose it could be useful to differentiate donations from non-donations. Seems like that could also be misleading though, as only part of the contribution may be tax deductible. I'd lean on the side of removing this.https://lab.civicrm.org/dev/core/-/issues/4518Indicate in additional participant confirmation email when their status is pe...2023-08-24T14:01:24ZlarsssandergreenIndicate in additional participant confirmation email when their status is pending (pay later)When an additional participant receives a confirmation email and their status is pending (pay later), there is nothing to indicate their status in the email, so it looks like they are fully registered. We should include something like:
...When an additional participant receives a confirmation email and their status is pending (pay later), there is nothing to indicate their status in the email, so it looks like they are fully registered. We should include something like:
"Your registration is pending payment."https://lab.civicrm.org/dev/core/-/issues/4517Show a message to let event registrants know that additional participants wil...2023-08-24T14:00:38ZlarsssandergreenShow a message to let event registrants know that additional participants will receive an email confirming their registrationWhen you register additional participants for an event and enter an email for those additional participants, an email confirmation is sent to the additional participants' emails. We should include text on the additional participants scre...When you register additional participants for an event and enter an email for those additional participants, an email confirmation is sent to the additional participants' emails. We should include text on the additional participants screen indicating that this confirmation email will be sent when there is an email field on the page, something like:
"An email confirming registration will be sent to the email address provided below."https://lab.civicrm.org/dev/core/-/issues/4512Profile notify on submit for event registration additional participants only ...2023-08-18T21:15:34ZlarsssandergreenProfile notify on submit for event registration additional participants only works if profile is used for primary participantThis one is a little obscure, but thought I might as well note it.
If you set up an event registration using a profile that sends a notification email on submit and you use that profile for the primary participant and the additional par...This one is a little obscure, but thought I might as well note it.
If you set up an event registration using a profile that sends a notification email on submit and you use that profile for the primary participant and the additional participants, everything works as intended. But if the additional participant profile that has the notification is only used for the additional participant and not the primary participant, then no notification will be sent.
This is because we only build the profile fields and send the notification if [notify is TRUE for customPre or customPost here.](https://github.com/civicrm/civicrm-core/blob/e6b439e4eb032b269fc823a7782cc2d8bb9d8304/CRM/Event/BAO/Event.php#L1077). The notification being sent for the additional participant in the case where the notification profile is used for the primary participant is sort of an unintended side effect and it would be better to handle each profile on the registration form separately.https://lab.civicrm.org/dev/core/-/issues/4496Event template fix-ups2023-08-17T14:18:50ZeileenEvent template fix-upsGenerally the goal is to make event templates not dependent on the form layer (using tokens & the MessageTemplate harness)
I'm creating this tracking issue to load up some screen shots for comparisonsGenerally the goal is to make event templates not dependent on the form layer (using tokens & the MessageTemplate harness)
I'm creating this tracking issue to load up some screen shots for comparisonshttps://lab.civicrm.org/dev/core/-/issues/4485Replace Event Total by Total Amount on confirm/thankyou pages2023-08-11T23:03:31ZyashodhaReplace Event Total by Total Amount on confirm/thankyou pagesReplace _Event Total_ by _Total Amount_ on confirm/thankyou pagesReplace _Event Total_ by _Total Amount_ on confirm/thankyou pages5.66.0yashodhayashodha