Development issueshttps://lab.civicrm.org/groups/dev/-/issues2023-04-05T05:03:18Zhttps://lab.civicrm.org/dev/core/-/issues/810Non-primary details exported in primary-only exports, when the setting 'Searc...2023-04-05T05:03:18ZAndrew WestNon-primary details exported in primary-only exports, when the setting 'Search Primary Details Only' is set to 'no'If you run an export with 'Export PRIMARY fields', but you have the setting 'Search Primary Details Only' set to 'No', the primary filter is not applied and you simply get the first available row in the table. This also happens when you ...If you run an export with 'Export PRIMARY fields', but you have the setting 'Search Primary Details Only' set to 'No', the primary filter is not applied and you simply get the first available row in the table. This also happens when you select the 'Primary' option when exporting individual fields.
This definitely applies to postal addresses. I haven't tested emails but I think it'll happen there too.
It happens because of this line in CRM_Contact_BAO_Query:
https://github.com/civicrm/civicrm-core/blob/a2540ad336faf7fb0218055a485c1a702200293f/CRM/Contact/BAO/Query.php#L446
which defaults to using the value from the setting. If this is set to no, the result SQL clause doesn't include 'is_primary = 1'.
CRM_Export_BAO_ExportProcessor creates the Query object here:
https://github.com/civicrm/civicrm-core/blob/a2540ad336faf7fb0218055a485c1a702200293f/CRM/Export/BAO/ExportProcessor.php#L509
but doesn't pass through a value for 'primaryLocationOnly' to override the default setting.
I can presumably adapt the above to pass through primaryLocationOnly when users have selected the 'Export PRIMARY fields' option - that *seems* simple enough. I haven't had a chance to dig into how it works when the export specifies individual fields, though - that seems like it'd be more complicated.
To replicate on demo site:
1. Create a new tmp group
2. Find a contact with an existing primary address
3. Add a new address for them, and set it to primary
4. Add this contact to the tmp group
4. Turn off the setting 'Search Primary Details Only'
5. Search for all members of the tmp group, and export them using 'Export PRIMARY fields only'
6. The contact's address in the CSV will be the original address, which is non-primaryhttps://lab.civicrm.org/dev/core/-/issues/1881Improve UX in the event of a smarty error in document merge2023-04-04T05:03:23ZananelsonImprove UX in the event of a smarty error in document mergeOverview
----------------------------------------
Some smarty errors cause data loss. Errors don't give users the opportunity to fix the issue or save their data.
Reproduction steps
----------------------------------------
1. Create a n...Overview
----------------------------------------
Some smarty errors cause data loss. Errors don't give users the opportunity to fix the issue or save their data.
Reproduction steps
----------------------------------------
1. Create a new Print/Merge document for an individual
1. Enter text which will trigger a Smarty error, for example {","|explode:"a,b,c"}
1. Press "Preview"
Current behaviour
----------------------------------------
Receive this error message:
```
User error: Smarty error: [in string:<p>{","|explode:"a,b,c"}</p> line 1]: [plugin] (secure mode) modifier 'explode' is not allowed (Smarty_Compiler.class.php, line 1934) in Smarty->trigger_error() (line 1100 of /home/improv/www/www/sites/all/modules/civicrm/packages/Smarty/Smarty.class.php).
User error: Smarty error: [in string:<p>{","|explode:"a,b,c"}</p> line 1]: [plugin] (secure mode) modifier 'explode' is not allowed (core.load_plugins.php, line 118) in Smarty->trigger_error() (line 1100 of /home/improv/www/www/sites/all/modules/civicrm/packages/Smarty/Smarty.class.php).
Error: Call to undefined function smarty_modifier_explode() in include() (line 5 of /home/improv/www/www/sites/default/files/civicrm/templates_c/en_US/%%34/342/34214B70%%p%3E.php).
```
![image](/uploads/c6c76e926f1487c68d4e3a5d3a0a77e4/image.png)
**The document draft is not saved!**
Expected behaviour
----------------------------------------
Instead, error should be captured and user should receive a warning advising them of the problem, and telling them that their document cannot be saved until the smarty code is valid (giving them an opportunity to copy/paste their content elsewhere).
Environment information
----------------------------------------
* __CiviCRM:__ _5.26.1_https://lab.civicrm.org/dev/core/-/issues/1877Include basic event details on event registration page2023-04-04T05:03:23ZufundoInclude basic event details on event registration pageOverview
----------------------------------------
When inviting people to RSVP for events using CiviMail, we like to link email recipients straight to the registration page to reduce the number of clicks.
It would be good if this page h...Overview
----------------------------------------
When inviting people to RSVP for events using CiviMail, we like to link email recipients straight to the registration page to reduce the number of clicks.
It would be good if this page had the event start date as a minimum (and maybe also the location).
Example use-case
----------------------------------------
1. Link someone directly to the event registration page
2. They can see the event start date to confirm their availability before they register
Current behaviour
----------------------------------------
No info other than the event title on the registration page (without adding manually to the registration form pre-help.
Proposed behaviour
----------------------------------------
It should include at least the event start date on this page
before:
![image](/uploads/9793ae160355b910a4c5af8a232b9a64/image.png)
after:
![image](/uploads/4b5c3b35a5e5a1344d0bc0c94d065390/image.png)
Comments
----------------------------------------
I guess there is an argument to include the whole event info block, though this makes the event info page a bit redundant, and also takes up more page space (important for mobile).
I have a patch for the smarty template which achieves as above.https://lab.civicrm.org/dev/core/-/issues/1876Public PCP URL is wrong on contact dashboard2023-04-03T05:03:34ZandyburnsPublic PCP URL is wrong on contact dashboardAfter creating a PCP, I go to my user dashboard via the contact summary screen > actions > contact dashboard. I scroll down to the PCP block and click more > URL for this page. I get a popup which seems incorrect.
![image](/uploads/958...After creating a PCP, I go to my user dashboard via the contact summary screen > actions > contact dashboard. I scroll down to the PCP block and click more > URL for this page. I get a popup which seems incorrect.
![image](/uploads/958aad907a8b923ff25601c5c035e130/image.png)
I have to click **URL for this page** again and then it is in this format.
https://wpmaster.demo.civicrm.org/wp-admin/admin.php?page=CiviCRM&q=civicrm%2Fpcp%2Finfo&reset=1&id=2&component=contribute
When you get the email notification once it is approved it says 'Go to your page:'
![image](/uploads/346e23daddd22ecc6a719e77a8438e8a/image.png)
That link is the correct one e.g. https://wpmaster.demo.civicrm.org/civicrm/pcp/info/?reset=1&id=2
That same link should be in the PCP block on contact dashboard.
Also if using the user dashboard front or back-end, the link highlighted in red should be the public page, it is not
![Untitled](/uploads/b54b38ad50feca6167ae4007840ef8b7/Untitled.png)
This results in confusion when a user logs in (because they must in order to edit it) because users have no place to see the correct URL's for their PCP's.https://lab.civicrm.org/dev/core/-/issues/1873Possible safari url direction issue2023-04-03T05:03:33ZeileenPossible safari url direction issueLong discussion on this now-closed PR
https://github.com/civicrm/civicrm-core/pull/17422Long discussion on this now-closed PR
https://github.com/civicrm/civicrm-core/pull/17422https://lab.civicrm.org/dev/core/-/issues/4015Import templates2023-04-03T02:33:03ZeileenImport templatesOne hope for the import screens is that on the `DataSource` screen it would be possible to put `template_id` in the url. In this case the settings from that import would load (excluding the actual file/data/table).
I think the template_...One hope for the import screens is that on the `DataSource` screen it would be possible to put `template_id` in the url. In this case the settings from that import would load (excluding the actual file/data/table).
I think the template_id could be an import that had been used or one marked as 'is_template' (the latter would ideally be saveable and would not expire like the job ones do).5.61.0https://lab.civicrm.org/dev/core/-/issues/4130Add template support for Imports2023-04-03T02:31:49ZeileenAdd template support for ImportsWhen importing with Civi-Import it should be possible to use an existing job as a Template - the UserJob table has a `is_template` field for this purpose. Without this using SavedMappings is painful as some fields may not load and map. F...When importing with Civi-Import it should be possible to use an existing job as a Template - the UserJob table has a `is_template` field for this purpose. Without this using SavedMappings is painful as some fields may not load and map. For example the contact field 'Gender' is only available if the contact option is update or create (not the default 'match') so this won't load when the screen is loaded if we are not also loading the relevant options that go with it. Template UserJobs would also be useful outside of Civi-Import for the purposes of loading basic repetitive configuration such as Contact Type, dedupe rule & date format
I do see template UserJobs as eventually replacing saved mappings for imports entirely. There is a ['clone action'](https://lab.civicrm.org/dev/core/-/issues/4182) aspect to this but I no longer see it being important to resolve that right now.
The way I imagine it working is that
1) if `template_id` is in the url then the code loads the values for that UserJob assuming `is_template` is TRUE on the `DataSource` form. This would use `checkPermissions` = FALSE because otherwise only the creator can access a `UserJob`. (if the template_id is passed in the field to select a mapping would be frozen on the DataSource form)
2) a user job template would be updated in sync with the civicrm_mapping record. There is already code for Update & save in a fairly tricksie way on the MapField screen and I propose to soft-link them by virtue of them having the same `name` - so if a `Mapping` is created or updated a template `UserJob` with the same `name` would be too. This makes for a fairly low level of intervention and works with the existing UI, happening when the `MapField` is submitted without any change of fields.
The above is moderately simple the question is how to keep the 2 in sync. On one level it is easy as there are NO template `UserJobs` in use as yet and existing records have empty name fields - so we have `Mapping` records without `UserJobs` but not the reverse. As long as we ensure a `UserJob` of the same name (perhaps with a prefix) is created at the right point of time & deleting it if the Mapping gets created we can reasonably keep them in sync. The job would be updated from the form when the mapping is (I think we can ignore the possibility people would update the mapping in any other way)
A question remains as to how we would originally create the UserJobs. There are 3 options as I see them
1) on upgrade create a `UserJob` for all existing `civicrm_mapping` records that relate to registered import types. This is probably the cleanest from a code point of view. The `metadata` would basically be an empty array
2) when a mapping is selected on the `DataSource` form then in `postProcess` ensure the `Template UserJob` exists
3) when a mapping is selected on the `DataSource` form then if `postProcess` ensure the `Template UserJob` exists IF Civi-Import is enabled and / or IF the import in use is the Contribution Import.
A couple of notes
1) `Template UserJobs` are more flexible that `civicrm_mapping` and I expect they will become the way to go
2) While I see the addition of `template_id` in the url as being sufficient to load a template I expect the path to do that will be a SearchDisplay in `Civi-Import` - so it would be a hidden feature with that disabled
3) The Template is still useful (if added manually to the url) even without CiviImport for loading details on `DataSource`
4) I suspect a one-off create of the templates on upgrade is likely most maintainable but
5) Option 3 does lower our surface area if there are are any problems5.61.0https://lab.civicrm.org/dev/core/-/issues/3937Importing "No" values to Boolean field results in empty2023-04-03T02:21:49ZelilisseckImporting "No" values to Boolean field results in emptyOverview
----------------------------------------
Contact imports to custom "Yes or No" fields work with values 1 or 0. "Yes" also appears to work.
If you import a "No" value, however, the field will be blank for that contact instead o...Overview
----------------------------------------
Contact imports to custom "Yes or No" fields work with values 1 or 0. "Yes" also appears to work.
If you import a "No" value, however, the field will be blank for that contact instead of having the "No"/0 label/value.
Technical details
----------------------------------------
["strtoboolstr"](https://github.com/civicrm/civicrm-core/blob/4ce53ba3de860a5d9aac1b1bbd22b7a29e839af2/CRM/Utils/String.php#L424) gets run twice on this data. [Once on the raw value returning a boolean](https://github.com/civicrm/civicrm-core/blob/902fc38d0d6cd9d09ee02f30cc6621747151a06a/CRM/Import/Parser.php#L1602) and [once later in the code here](https://github.com/civicrm/civicrm-core/blob/902fc38d0d6cd9d09ee02f30cc6621747151a06a/CRM/Contact/Import/Parser/Contact.php#L328)
When you run this on a boolean value (you shouldn't, according to the comments, but perhaps we should check for this), "Yes"/true will _look_ like it's working okay because the preg_match will match for (bool)true but it won't match for (bool)false. I'm sure this has something to do with a PHP oddity I know nothing about but related to the fact that `strlen((bool)true)` is `1` and `strlen((bool)false)` is `0`.
Proposed solution is:
1) Don't run strtoboolstr twice. We don't need that second iteration of it because it's already been run on the data. I'm not sure of any other impacts for this so also:
2) Write a test for importing to a Yes/No field with the 6 values that should work (1,0,yes,no,true,false). I've started writing this test following examples but i'm having trouble getting my import data actually in properly to run the assertEquals on. I will open a WIP PR with this test.
Any other thoughts welcome!
Reproduction steps
----------------------------------------
1. Create a custom field with data type "Yes or No"
2. Create a csv to import first,last,custom_fieldID with data for your custom field "Yes" and "No"
3. Run the import normally through the GUI in the Contacts > Import Contacts workflow
4. Observe custom field results on the imported contacts
Expected behaviour
----------------------------------------
According to code comments, this type of field import should accept "1", "0", "Yes", "No", "true", "false" and they should all fill a "Yes or No" field correctly.
Environment information
----------------------------------------
This was reproduced on the master branch in d9 (5.56.alpha1)5.61.0https://lab.civicrm.org/dev/core/-/issues/1768CiviMail mail job fails to complete, even though mail is sent2023-04-02T05:03:29ZspalmstromCiviMail mail job fails to complete, even though mail is sentOverview
----------------------------------------
This relates to [CiviMail mail job fails to complete, even though mail is sent](https://civicrm.stackexchange.com/questions/35582/civimail-mail-job-fails-to-complete-even-though-mail-is-s...Overview
----------------------------------------
This relates to [CiviMail mail job fails to complete, even though mail is sent](https://civicrm.stackexchange.com/questions/35582/civimail-mail-job-fails-to-complete-even-though-mail-is-sent) that someone else has reported, but I have also seen. If a mail job fails to complete, it does not record the mails it successfully sent, so when it starts again, it sends the emails again.
Reproduction steps
----------------------------------------
It is difficult to reproduce this because we do not always see the behaviour in our environment (Joomla in a shared hosted environment), where we sometimes see this behaviour and at other times we do not because the jobs complte.
Current behaviour
----------------------------------------
Successful emails sent are only reported at the end of each batch.
Expected behaviour
----------------------------------------
The database is updated after each email is sent, so in the event of the batch failing to complete, CiviMail still knows what it has sent.
Environment information
----------------------------------------
* __Browser: Not applicable
* __CiviCRM: Last seen with 5.24.x
* __PHP:_7.2__
* __CMS:__ _Joomla 3.9.x, but probably not relevant._
* __Database:__ _Not relevant.
* __Web Server:__ Not applicable
Comments
----------------------------------------
As aforesaid, we only see the issue when batches fail to complete. We worked around the issue by reducing the mailer batch size to 5.https://lab.civicrm.org/dev/core/-/issues/1870Ability to manually add/remove from smart group to be a preference with defau...2023-04-02T05:03:28ZAndy ClarkAbility to manually add/remove from smart group to be a preference with default of NoSome unexpected results were tracked down to staff having manually added contacts to a smart group. This is with an organisation that uses Civi primarily for membership, and were seeing emails go to contacts whose membership was not curr...Some unexpected results were tracked down to staff having manually added contacts to a smart group. This is with an organisation that uses Civi primarily for membership, and were seeing emails go to contacts whose membership was not current, plus other contacts being in groups that were incorrect. Background - the system was setup originally with a number of smart groups, but subsequent staff changes meant that new staff thought they had to add contacts manually. The design of contacts that are manually added & removed is that they override the smart group criteria, which is a useful feature. However, it would be better if access to this facility could be controlled by a preference, with a default of 'Not available'. At present, it can't be turned off, so this option can be quite dangerous in that it affects the integrity of the data - when users are unaware of the impact of using manual additions to smart groups. See reply & comment from ErikH [here](https://civicrm.stackexchange.com/questions/519/smart-group-with-manually-added-contacts)https://lab.civicrm.org/dev/core/-/issues/3735Can't search contact with only number2023-04-01T16:27:00ZPradeep Nayakpradpnayak@gmail.comCan't search contact with only numberContact search by number has stopped working for a few sites, when searching by only number the system searches by id rather than display/sort name. The system has an external identifier attached to sort/display name which helps the staf...Contact search by number has stopped working for a few sites, when searching by only number the system searches by id rather than display/sort name. The system has an external identifier attached to sort/display name which helps the staff to search the contact based on their old legacy number or by contact name. I can see there has been a [recent change](https://github.com/civicrm/civicrm-core/pull/23609) in Civi which would allow doing a search if the number starts with 0 but it is not the case here.
Is it right to say that force search by id should be a config setting which can be turned off on some systems either via UI or in civicrm.settings.php?5.57.0https://lab.civicrm.org/dev/core/-/issues/1679Paypal IPN sometimes fails to update the next scheduled payment date when rec...2023-04-01T05:03:35ZandrewcormickdockeryPaypal IPN sometimes fails to update the next scheduled payment date when recording the latest recurring paymentIPNs from Paypal do not always correctly update the next scheduled payment date of a Paypal recurring transaction. The reason is because of a seemingly broken default algorithm which is used to calculate this date.
This algorithm has a ...IPNs from Paypal do not always correctly update the next scheduled payment date of a Paypal recurring transaction. The reason is because of a seemingly broken default algorithm which is used to calculate this date.
This algorithm has a weird way of determining whether the parent IPN handler is “handling” the next scheduled date. It says that if the current next scheduled date is the same as the receive date of the incoming transaction, then it is not being “handled” by the child handler. This causes the next scheduled date to be handled by the default handler (which is what we want in the case of Paypal, since Paypal does not calculate this).
The problem with this idea is that the time is truncated from the next scheduled date, effectively setting it at midnight AEDT (for our installation). But the receive date of the transaction from Paypal is in PDT. Thus if a recurring transaction is handled by Paypal after 6am PDT (this doesn’t happen often, but maybe about 10% of the time), it effectively arrives “the following day” in AEDT, causing the above test to fail and thus not triggering the routine to handle the next scheduled date calculation. This date then gets “stuck”, since it will also not be handled in subsequent recurring transactions, as it will never again match the incoming transaction receive date.
The issue presents itself, in our case, with some two thirds of our Paypal recurring payments having "stuck" next scheduled contribution dates which are never updated. Our records show that it gets correctly updated for about 5 to 10 payments until a payment is made after midnight AEDT (6am PDT), after which updates stall and is never corrected no matter how many more payments are made.
I have a suggested fix, I'll create a PR which people can comment on.https://lab.civicrm.org/dev/core/-/issues/1859Recurring Contributions: Custom field of type Date Date Select is ignored dur...2023-04-01T05:03:34ZatheiaRecurring Contributions: Custom field of type Date Date Select is ignored during searchesOverview
----------------------------------------
Custom fields of type Date applied to Recurring Contributions are ignored in at least Contact Advanced Searches. The search returns results as if the custom date field in question is lef...Overview
----------------------------------------
Custom fields of type Date applied to Recurring Contributions are ignored in at least Contact Advanced Searches. The search returns results as if the custom date field in question is left empty entirely.
https://chat.civicrm.org/civicrm/pl/pde69cq1stfdpg6oesi4jzihir
Reproduction steps
----------------------------------------
1. Click on **Administer-> Customize Data and Screens -> Custom Fields**
2. Click on **Add set of Custom Fields**
3. Enter a Set Name, set **Used for** to **Recurring Contributions**, and click **Save**.
4. Add a Field label, Set **Data and Input Field Type** to **Date**, set **Date Format** to **mm/dd/yy**, **Is this Field Searchable?** : **Yes**, and click **Save**.
5. Create a recurring contribution (e.g. on dmaster: https://dmaster.demo.civicrm.org/sites/all/modules/civicrm/extern/rest.php?entity=ContributionRecur&action=create&api_key=userkey&key=sitekey&json={"contact_id":203,"amount":5,"frequency_interval":1,"frequency_unit":"month","is_test":1,"contribution_status_id":"In Progress"})
6. Find the contact for whom the recurring contribution was created, click on **Contributions** then **Recurring Contributions**, then **edit** next to the one you created.
7. Fill in 07/02/20 for your custom date field.
8. Click on **Search** -> **Advanced Search**
9. Click on **Contributions** -> **Recurring Contributions** -> **All Recurring Contributions**, click Search. You will get your user
10. Click **Edit Search Criteria** -> in your custom date field, set **Today**, click Search.
You will still get your search result, even though you filtered by a date that should not have matched.
Current behaviour
----------------------------------------
You will still get your search result, even though you filtered by a date that should not have matched.
Expected behaviour
----------------------------------------
You should get 0 search results (if the above scenario was followed exactly), because your search filter should have excluded all records.
Environment information
----------------------------------------
* __Browser:__ _Firefox Quantum 68.10.0esr_
* __CiviCRM:__ _5.29.alpha1(dmaster)/5.26.2_
* __PHP:__ _dmaster/7.4__
* __CMS:__ _Drupal (dmaster)/Drupal 7.72_
* __Database:__ _dmaster/Ver 15.1 Distrib 10.1.45-MariaDB, for Linux (x86_64) using readline 5.1_
* __Web Server:__ _dmaster/Nginx 1.19_
Comments
----------------------------------------
This is the first time I've reported an issue — apologies if I missed anything!
Let me know if there is anyway I can help.
Best wishes,
Alexhttps://lab.civicrm.org/dev/core/-/issues/1765Windows $civicrm_paths['civicrm.root']['url'] incorrect2023-03-31T05:03:22ZAlanDixonWindows $civicrm_paths['civicrm.root']['url'] incorrectOn a functioning windows install of D7/CiviCRM 5.19, an upgrade to 5.24 and 5.25 resulted in a very broken install and inability to run the upgrade url.
Fixed by setting $civicrm_paths['civicrm.root']['url'] in my civicrm.settings.php f...On a functioning windows install of D7/CiviCRM 5.19, an upgrade to 5.24 and 5.25 resulted in a very broken install and inability to run the upgrade url.
Fixed by setting $civicrm_paths['civicrm.root']['url'] in my civicrm.settings.php file.
Setting $civicrm_setting['URL Preferences']['userFrameworkResourceURL'] did not work.
All css/js urls appeared to have been generated by using CIVICRM_UF_BASEURL.$civicrm_root (i.e. the path was prefixed by C:/).https://lab.civicrm.org/dev/core/-/issues/3804Civicase dashboard not displaying recently performed activities2023-03-30T09:37:49ZKurund JalmiCivicase dashboard not displaying recently performed activitiesCiviCase Dashboard does not display 'Recently Performed Activities` when there are no `Upcoming Activities`.CiviCase Dashboard does not display 'Recently Performed Activities` when there are no `Upcoming Activities`.5.61.0Kurund JalmiKurund Jalmihttps://lab.civicrm.org/dev/core/-/issues/1471Smart groups with deleted/disabled custom fields throw fatal error on its usage.2023-03-30T05:03:42ZjitendraSmart groups with deleted/disabled custom fields throw fatal error on its usage.To replicate -
- Create a smart group with custom date as one of the filter.
- Disable the custom field after the smart group creation.
- The update smart group count `/civicrm/group?reset=1&update_smart_groups=1` functionality returns ...To replicate -
- Create a smart group with custom date as one of the filter.
- Disable the custom field after the smart group creation.
- The update smart group count `/civicrm/group?reset=1&update_smart_groups=1` functionality returns a DB error.
![image](/uploads/5482a85c55b162c84d2e5cfc7c1857b5/image.png)
- Usage of this group in mailings does not calculate the recipient -
![image](/uploads/ede5567e4cd0b68db9c9a1ae80fef133/image.png)
**Possible Solutions**
- Fix the code to ignore the disabled custom field criteria while fetching the formvalues for the smart group.
This calculates the count and retrieves all the contacts correctly but is not following the exact filter condition setup by the user while creating this group.
- Produce a warning on the custom field delete page that this field is being used by a smart group. And avoid deletion?
- System Status warning with an indication that there are some smart groups configured on your site that uses disabled custom fields as a filter.
- Probably 1 and 3 both?
ping @petednz @eileenjitendrajitendrahttps://lab.civicrm.org/dev/core/-/issues/890Multiple line item shown on view contribution if participant is transferred t...2023-03-30T05:03:41ZjitendraMultiple line item shown on view contribution if participant is transferred to another contact.To replicate -
- Create a priceset for an event with `Text / Numeric Quantity` field type. Amount = $10.
- Register contact A to the event using the above price option.
- Transfer the event participation to another contact B.
- View con...To replicate -
- Create a priceset for an event with `Text / Numeric Quantity` field type. Amount = $10.
- Register contact A to the event using the above price option.
- Transfer the event participation to another contact B.
- View contribution on the main contact, it displays double line items for the participation.
![image](/uploads/86637f21b6b327fc15888b92e8a86bac/image.png)
I think the older participant status is set to "transferred" so it should remove the contribution link from the line item table.jitendrajitendrahttps://lab.civicrm.org/dev/core/-/issues/4149User editable Message Templates, the Contact Action: Send an Email and the Co...2023-03-29T21:09:22Zjustinfreeman (Agileware)User editable Message Templates, the Contact Action: Send an Email and the Contact Action: Print Merge/Document cannot use any Smarty Tokens with the crmDate function because CKEditor 4 unnecessarily HTML encodes single quotes (') and double quotes (")User editable Message Templates, the Contact Action: Send an Email and the Contact Action: Print Merge/Document cannot use any Smarty Tokens with the crmDate function because CKEditor 4 unnecessarily HTML encodes single quotes (') and do...User editable Message Templates, the Contact Action: Send an Email and the Contact Action: Print Merge/Document cannot use any Smarty Tokens with the crmDate function because CKEditor 4 unnecessarily HTML encodes single quotes (') and double quotes (").
So if you use a Smarty Token like:
```{contribution.receive_date|crmDate:"%E%f %B %Y"}```
```{contribution.receive_date|crmDate:'%E%f %B %Y'}```
When CKEditor 4 parses the HTML it converts this into:
```{contribution.receive_date|crmDate:"%E%f %B %Y"}```
```{contribution.receive_date|crmDate:'%E%f %B %Y'}```
Effectively rendering the crmDate function unusable in these situations.
Using CKEditor 5 does solve this specific problem, however CKEditor 5 introduces new problems such as the inability for users to resize images, loss of some formatting controls and importantly prevents the ability to view/edit the source HTML.
Agileware Ref: CIVICRM-21035.61.0https://lab.civicrm.org/dev/core/-/issues/3428SearchKit display results does not seem to respect the contribution currency2023-03-29T15:26:43ZErikHommelSearchKit display results does not seem to respect the contribution currencyOverview
----------------------------------------
When I create a searchkit search for soft credits and contribution and then click on View Results I get a display with the dollar sign against the amount while the contribution currency i...Overview
----------------------------------------
When I create a searchkit search for soft credits and contribution and then click on View Results I get a display with the dollar sign against the amount while the contribution currency is euro. This is probably because my default currency is set to USD. Once I change my default currency to Euro it is fine.
Reproduction steps
----------------------------------------
1. Create a contribution with euro as currency.
1. Create a searchkit search with amount and currency.
1. Click on **View Results**.
Current behaviour
----------------------------------------
Results display with dollar sign even if currency is euro (see attached print)
![afbeelding](/uploads/1cb4853e4dc4085fdbf687d221eb32ec/afbeelding.png)
Expected behaviour
----------------------------------------
Currency should show with the appropriate currency symbol even if the default currency is different than the contribution currency.
Environment information
----------------------------------------
* __CiviCRM:__ 5.48.2colemanwcolemanwhttps://lab.civicrm.org/dev/core/-/issues/1837Civicrm settings still require group for mandatory overrides???2023-03-29T05:03:21ZeileenCivicrm settings still require group for mandatory overrides???Our docs say group & groupname are fully deprecated here
https://docs.civicrm.org/dev/en/latest/framework/setting/
but they are still documented as being required for overrides in civicrm.settings.php & I *think* they are still needed ...Our docs say group & groupname are fully deprecated here
https://docs.civicrm.org/dev/en/latest/framework/setting/
but they are still documented as being required for overrides in civicrm.settings.php & I *think* they are still needed if doing an override here
https://docs.civicrm.org/sysadmin/en/latest/customize/settings/
@totten you can probably confirm....
Perhaps it's just
```
$civicrm_setting['antyhing works here ']['customFileUploadDir'] = '/var/www/testing/sites/default/files/civicrm/upload';
```
@ejegg