Development issueshttps://lab.civicrm.org/groups/dev/-/issues2024-02-02T13:10:39Zhttps://lab.civicrm.org/dev/core/-/issues/4944Mass SMS continue button creates a new mass SMS2024-02-02T13:10:39ZDaveDMass SMS continue button creates a new mass SMSCame up during PR review.
The screens appear as though it's editing the existing one but there's a warning about missing ssid, so I assume it's not getting passed on so it then creates a new one.
1. Mailings - New SMS.
1. Fill out the ...Came up during PR review.
The screens appear as though it's editing the existing one but there's a warning about missing ssid, so I assume it's not getting passed on so it then creates a new one.
1. Mailings - New SMS.
1. Fill out the fields. Click Next.
1. Click Continue Later.
1. This takes you to the Find Mass SMS screen and you'll see your draft.
1. Click the Continue link at the far right.
1. It looks as though you're editing the draft, but click Next and then Next again, and then click the Continue Later button.
1. Note in the Find Mass SMS screen there's now two draft mailings.https://lab.civicrm.org/dev/core/-/issues/4943Activity count on contact tab is always including case activities2024-01-29T13:29:26ZDaveDActivity count on contact tab is always including case activitiesRelated: https://lab.civicrm.org/dev/core/-/issues/4930Related: https://lab.civicrm.org/dev/core/-/issues/49305.70.0https://lab.civicrm.org/dev/core/-/issues/4942Event confirmation page is a bit messed up2024-02-06T15:14:43ZDaveDEvent confirmation page is a bit messed upIn master. Followup to #4918.
1. If you don't have a limit on max participants, the confirmation page gives you an error saying there are only 0 spaces left and you can't finish registering.
2. With a waitlist, you can't register since ...In master. Followup to #4918.
1. If you don't have a limit on max participants, the confirmation page gives you an error saying there are only 0 spaces left and you can't finish registering.
2. With a waitlist, you can't register since it just keeps taking you back to the register page.5.71.0https://lab.civicrm.org/dev/core/-/issues/4941Number field input validation does not respect decimal separator setting (eve...2024-02-12T17:14:12ZDetlev SieberNumber field input validation does not respect decimal separator setting (event custom field)## Overview
This is a variant of https://lab.civicrm.org/dev/core/-/issues/4154, regarding custom fields for events of type _This iPlease describe your problem or bug in detail._
_If you have already posted on __https://civicrm.stackex...## Overview
This is a variant of https://lab.civicrm.org/dev/core/-/issues/4154, regarding custom fields for events of type _This iPlease describe your problem or bug in detail._
_If you have already posted on __https://civicrm.stackexchange.com__ or __https://chat.civicrm.org__, please include the link to that conversation._
## Reproduction steps
1. Under Administer \> Localization \> Languages, Currency, Locations, set "Thousands Separator" to "." (dot) and "Decimal Delimiter" to "," (comma).
2. Create a custom field extending Events. Data type: Number.
3. Edit an existing event (or: add a new event). In the number field, enter a number that includes a comma, such as "1,5".
4. Press Save: nothing happens
5. Reload page: Error message appears "**Error One of parameters (value: 1,5) is not of the type Float**"
## Current behaviour
Validation fails with the error message "**Error One of parameters (value: 1,5) is not of the type Float**"
## Expected behaviour
Validation should not fail for decimal numbers with decimal separator ","
## Environment information
* **CiviCRM:** 5.69.3
* **PHP:** 7,4, 8.1
* **CMS:** Drupal, WordPress
## Comments
This bug was fixed for some fields with #4154 (https://github.com/civicrm/civicrm-core/pull/28369)
Also, I believe this is some kind of regression, because in a system of one of my clients, this did work \~15 months ago. However, tbh I have no clear idea when it broke. (and still, it cannot completely excluded that the existing data was entered with decimal separator ".")5.71.0https://lab.civicrm.org/dev/core/-/issues/4940Proposal to Change the Invoice date in the default Invoice message template t...2024-02-08T10:45:03ZeileenProposal to Change the Invoice date in the default Invoice message template to contribution.receive_dateThis spins off one discussion topic from https://lab.civicrm.org/dev/core/-/issues/1403 -
As part of our general effort to make the WorkflowMessage templates operate independently of the quickform layer (ie be available as actions from ...This spins off one discussion topic from https://lab.civicrm.org/dev/core/-/issues/1403 -
As part of our general effort to make the WorkflowMessage templates operate independently of the quickform layer (ie be available as actions from SearchKit etc) we should clarify which value is used for the invoice_date in the default message template that we ship from \`{$invoice_date}\`
```html
{domain.now|crmDate:"Full"}
or
{contribution.receive_date|crmDate:"Full"}
```
If we change the default it will affect new installs and un-customised templates. I'm not proposing any push upgrade on the customised templates at this stage so for most invoice-using sites this will be no change at this point. However, I am going to try to 'complete' the variable to token changes in this template so that anyone who is updating their customised template or installing a new site is using the tokens (& hence will be able to benefit from message previewability via MessageAdmin now & sending & rendering from outside QF if they install a relevant extension /when we add to core).
Potentially if we want to make it clear to people that they can change it we can use one of
```html
{domain.now|crmDate:"Full"}{* Code comment: - You can replace the domain.now token with this to show the contribution date instead {contribution.receive_date|crmDate:"Full"} *}
OR
{contribution.receive_date|crmDate:"Full"}{* Code comment: - You can replace the domain.now token with this to show the current date instead with {domain.now|crmDate:"Full"} *}
```
Note that the assumption in this gitlab is that any change would be opt in for existing sites (since basically everyone who uses invoices puts a logo in there). There is a proposal at https://github.com/civicrm/civicrm-core/pull/28630 that would force a change on everyone. I'm not convinced we should do a force update because it is pretty clear from the code & code history that the use of now was a deliberate attempt to meet a use case. However I have added an option to the emjoi poll below to allow people to vote for a forced update - basically a string_replace on upgrade.
EMOJI POLL Options
1) :boom: Change to {domain.now|crmDate:"Full"}
2) :man_dancing_tone2: Change to {contribution.receive_date|crmDate:"Full"}
3) :avocado: Change to 1 with additional in-code comments per above
4) :bellhop: Change to 2 with additional in code comments per above
5) :pick: Do 2 with a forced upgrade to replace {$invoice_date} with the above with {contribution.receive_date|crmDate:"Full"}https://lab.civicrm.org/dev/core/-/issues/4939Logged in user who has an existing membership is not seeing this mentioned on...2024-02-01T01:29:08ZpetednzLogged in user who has an existing membership is not seeing this mentioned on a Membership pagePREVIOUS
If logged in/checksum user who has a membership visits a membership page offering that Membership Type they were greeted with "Your XX Membership expires on YY"
CURRENT
Replicated on dmaster - no such message is showingPREVIOUS
If logged in/checksum user who has a membership visits a membership page offering that Membership Type they were greeted with "Your XX Membership expires on YY"
CURRENT
Replicated on dmaster - no such message is showing5.69.4https://lab.civicrm.org/dev/core/-/issues/4938Saving a civireport causes the report to crash with `TypeError: Cannot access...2024-01-27T04:53:42ZDaveDSaving a civireport causes the report to crash with `TypeError: Cannot access offset of type string on string in HTML_QuickForm_advmultiselect->toHtml`1. Edit some settings on a civireport.
2. Save the civireport.
3. TypeError: Cannot access offset of type string on string in HTML_QuickForm_advmultiselect->toHtml() (line 807 of ...\sites\all\modules\civicrm\packages\HTML\QuickForm\advm...1. Edit some settings on a civireport.
2. Save the civireport.
3. TypeError: Cannot access offset of type string on string in HTML_QuickForm_advmultiselect->toHtml() (line 807 of ...\sites\all\modules\civicrm\packages\HTML\QuickForm\advmultiselect.php).
There is no stacktrace so I'm not sure yet what it doesn't like.5.70.0https://lab.civicrm.org/dev/core/-/issues/4937(regression) FormBuilder forms with yes/no and autocomplete fail in Firefox2024-01-31T08:51:22ZJonGold(regression) FormBuilder forms with yes/no and autocomplete fail in FirefoxOverview
----------------------------------------
In Civi 5.69 (and master) forms that meet certain criteria fail to submit in Firefox. I believe there are scenarios other than the one I describe below, but this represents a relatively ...Overview
----------------------------------------
In Civi 5.69 (and master) forms that meet certain criteria fail to submit in Firefox. I believe there are scenarios other than the one I describe below, but this represents a relatively simple replicable case.
I did a `git bisect` and tracked it down to https://github.com/civicrm/civicrm-core/pull/28452 (no Gitlab bot that's not a pull request for this issue).
Reproduction steps
----------------------------------------
I've attached a FormBuilder form that's a relatively simple replication case. This requires a field of type "Yes/No" called `yesno` in a custom group with name `contact_fields2`.
Select "yes" or "no" on the custom field, press "Submit".
Current behaviour
----------------------------------------
If you submit this form in Firefox, you see the error "Sorry an error occurred and your information was not saved.", but then the page reloads, though the URL changes:
e.g.:
```
# original
http://dmaster.localhost/civicrm/org-member-renewal
# post-submit
http://dmaster.localhost/civicrm/org-member-renewal?contact-fields-2-yesno-1=0
```
In Chrome, the page submits successfully.
There's also a ton of JS console errors.
On my civicrm-buildkit site, they looked like this:
```
Error: [$rootScope:infdig] http://errors.angularjs.org/1.8.2/$rootScope/infdig?p0=10&p1=%5B%5B%7B%22msg%22%3A%22fn%3A%20fn%22%2C%22newVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%7B%7D%7D%2C%22oldVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%7B%7D%7D%7D%5D%2C%5B%7B%22msg%22%3A%22fn%3A%20fn%22%2C%22newVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%7B%7D%7D%2C%22oldVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%7B%7D%7D%7D%5D%2C%5B%7B%22msg%22%3A%22fn%3A%20fn%22%2C%22newVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%7B%7D%7D%2C%22oldVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%7B%7D%7D%7D%5D%2C%5B%7B%22msg%22%3A%22fn%3A%20fn%22%2C%22newVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%7B%7D%7D%2C%22oldVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%7B%7D%7D%7D%5D%2C%5B%7B%22msg%22%3A%22fn%3A%20fn%22%2C%22newVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%7B%7D%7D%2C%22oldVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%7B%7D%7D%7D%5D%5D
Angular 41
jQuery 2
<anonymous> Angular
jQuery 7
<anonymous> Common.js:1659
jQuery 8
angular.js:15697:15
```
On my 5.69.2 non-buildkit site, it looked like this:
```
Uncaught Error: [$rootScope:infdig] 10 $digest() iterations reached. Aborting!
Watchers fired in the last 5 iterations: [[{"msg":"fn: fn","newVal":{"formName":"afform:afformOrganizationMembershipRenewal","fieldName":"Organization2:id","values":{}},"oldVal":{"formName":"afform:afformOrganizationMembershipRenewal","fieldName":"Organization2:id","values":"..."}}],[{"msg":"fn: fn","newVal":{"formName":"afform:afformOrganizationMembershipRenewal","fieldName":"Organization2:id","values":"..."},"oldVal":"..."}],[{"msg":"fn: fn","newVal":{"formName":"afform:afformOrganizationMembershipRenewal","fieldName":"Organization2:id","values":"..."},"oldVal":"..."}],[{"msg":"fn: fn","newVal":{"formName":"afform:afformOrganizationMembershipRenewal","fieldName":"Organization2:id","values":"..."},"oldVal":"..."}],[{"msg":"fn: fn","newVal":{"formName":"afform:afformOrganizationMembershipRenewal","fieldName":"Organization2:id","values":"..."},"oldVal":"..."}]]
https://errors.angularjs.org/1.8.2/$rootScope/infdig?p0=10&p1=%5B%5B%7B%22msg%22%3A%22fn%3A%20fn%22%2C%22newVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%7B%7D%7D%2C%22oldVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%22...%22%7D%7D%5D%2C%5B%7B%22msg%22%3A%22fn%3A%20fn%22%2C%22newVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%22...%22%7D%2C%22oldVal%22%3A%22...%22%7D%5D%2C%5B%7B%22msg%22%3A%22fn%3A%20fn%22%2C%22newVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%22...%22%7D%2C%22oldVal%22%3A%22...%22%7D%5D%2C%5B%7B%22msg%22%3A%22fn%3A%20fn%22%2C%22newVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%22...%22%7D%2C%22oldVal%22%3A%22...%22%7D%5D%2C%5B%7B%22msg%22%3A%22fn%3A%20fn%22%2C%22newVal%22%3A%7B%22formName%22%3A%22afform%3AafformOrganizationMembershipRenewal%22%2C%22fieldName%22%3A%22Organization2%3Aid%22%2C%22values%22%3A%22...%22%7D%2C%22oldVal%22%3A%22...%22%7D%5D%5D
Angular 8
$onChanges http://reamp.local/wp-content/plugins/civicrm/civicrm/ang/crmUi.js?r=GUtKAen_US:789
Angular 34
jQuery 2
<anonymous> Angular
jQuery 7
<anonymous> http://reamp.local/wp-content/plugins/civicrm/civicrm/js/Common.js?r=GUtKAen_US:1659
jQuery 8
angular.js:138:12
```
Expected behaviour
----------------------------------------
Form should always submit successfully.
Environment information
----------------------------------------
* __Browser:__ Firefox 120.0.1
* __CiviCRM:__ master
* __PHP:__ 8.1
* __CMS:__ Drupal 7
* __Database:__ Replicated w/ MariaDB 10.6 and 10.11
* __Web Server:__ Apache 2.45.69.4https://lab.civicrm.org/dev/core/-/issues/4936Standalone: drop downs not displaying fields correctly2024-01-27T21:54:10ZAndy ClarkStandalone: drop downs not displaying fields correctlyThere is a lack of room in drop downs to display field names, so that in some cases it's hard to know what the field name is. For example, selecting the phone type for a contact shows only the first letter of the phone type - only 'M' f...There is a lack of room in drop downs to display field names, so that in some cases it's hard to know what the field name is. For example, selecting the phone type for a contact shows only the first letter of the phone type - only 'M' for mobile. Or 'Website Type' which is undecipherable. Tested on both Firefox and Chrome browsers. This is using the 5.69.2 Standalone release.https://lab.civicrm.org/dev/core/-/issues/4935Standalone: Cannot add a contact to a group after group creation2024-01-24T18:01:16ZAndy ClarkStandalone: Cannot add a contact to a group after group creationHere's the problem: 1. Create the group 2) 'Add to group' screen appears - enter contact name & search 3) select contacts found and click 'Add contact to whatever-you-called-the-group' 4) then 'Add to group' appears but when you click i...Here's the problem: 1. Create the group 2) 'Add to group' screen appears - enter contact name & search 3) select contacts found and click 'Add contact to whatever-you-called-the-group' 4) then 'Add to group' appears but when you click it error message 'Select Group is a required field.' appears but there is no group to select. In fact I couldn't find a way to add a contact to a group at all as the actions for a contact are restricted to just a few actions. This is caused by permissions so not actually a problem so close.
Using the 5.69.2 version of Standalonehttps://lab.civicrm.org/dev/core/-/issues/4934Standalone: messages from Civi don't appear as expected2024-03-11T18:54:28ZAndy ClarkStandalone: messages from Civi don't appear as expectedMessages from Civi don't appear as expected e.g. when testing outbound email, check the mail() button and click 'Send and Save email' and no message will appear. This is 100% reproducible. Sometimes messages will appear a couple of scre...Messages from Civi don't appear as expected e.g. when testing outbound email, check the mail() button and click 'Send and Save email' and no message will appear. This is 100% reproducible. Sometimes messages will appear a couple of screens after they have been created, but not always. Using the 5.69.2 version of Standalone.RichRichhttps://lab.civicrm.org/dev/core/-/issues/4933Standalone: Cannot update default organisation to update it after Standalone ...2024-01-27T16:03:23ZAndy ClarkStandalone: Cannot update default organisation to update it after Standalone installAfter Standalone installation, it's require to update the default organisation to give it a name etc. However this crashes with the attached error. This is using the released 5.69.2 version of Standalone![screenshot_20240124_170636](/u...After Standalone installation, it's require to update the default organisation to give it a name etc. However this crashes with the attached error. This is using the released 5.69.2 version of Standalone![screenshot_20240124_170636](/uploads/c59bc5d9505b56cdb8764ffb36f0ad53/screenshot_20240124_170636.png)https://lab.civicrm.org/dev/core/-/issues/4932Outbound SMS and Send Email action missing when viewing contact summary2024-01-24T16:39:34ZDaveDOutbound SMS and Send Email action missing when viewing contact summaryI think it's from https://github.com/civicrm/civicrm-core/pull/27973/files. Note how it used to check for special types [BEFORE](https://github.com/civicrm/civicrm-core/pull/27973/files#diff-dfbc52a8403be6cfef3ecfd332d7b7fcc2e3ca579b325d...I think it's from https://github.com/civicrm/civicrm-core/pull/27973/files. Note how it used to check for special types [BEFORE](https://github.com/civicrm/civicrm-core/pull/27973/files#diff-dfbc52a8403be6cfef3ecfd332d7b7fcc2e3ca579b325d4a419c39a3226fdbd7L90) checking filter=1. But now it includes the filter [up front](https://github.com/civicrm/civicrm-core/pull/27973/files#diff-6edb9e1abb30f7ec07c2ea0cecde36eefe0bebf9535022ecd8e8625f02517192R85) so it doesn't get a chance to check for SMS.5.70.0https://lab.civicrm.org/dev/core/-/issues/4931Auto-renew checkbox hidden by default2024-01-29T03:48:57ZpatricklamAuto-renew checkbox hidden by defaultOverview
----------------------------------------
When signing up for a membership, where the membership type has auto-renew being available as an option, the auto-renew checkbox is initially hidden and only shows up after clicking on th...Overview
----------------------------------------
When signing up for a membership, where the membership type has auto-renew being available as an option, the auto-renew checkbox is initially hidden and only shows up after clicking on the membership type.
Reproduction steps
----------------------------------------
1. Create a membership type with auto-renew optional.
2. Create a contribution page with auto-renew optional.
3. Visit the contribution page. Membership amount shown, but not the "Please renew my membership automatically" checkbox.
4. Clicking on the membership amount causes the autorenew checkbox to appear.
Current behaviour
----------------------------------------
Autorenew checkbox is initially invisible and only appears after clicking on the membership amount.
Expected behaviour
----------------------------------------
Autorenew checkbox should appear on page load.
Environment information
----------------------------------------
Can reproduce on the demo sandbox with Firefox and Chrome.
Comments
----------------------------------------
Patch available: https://github.com/civicrm/civicrm-core/pull/290235.70.0https://lab.civicrm.org/dev/coworker/-/issues/13Logging inadequate2024-01-25T14:19:24ZeileenLogging inadequateOur syslog is full of
Jan 23 22:03:34 coworker[1015]: #033[31m[2024-01-23T22:03:34.987520+00:00] CiviQueueWatcher.ERROR: Failed to read queues!#033[0m
The actual logged exception includes the exception but because this does not reach s...Our syslog is full of
Jan 23 22:03:34 coworker[1015]: #033[31m[2024-01-23T22:03:34.987520+00:00] CiviQueueWatcher.ERROR: Failed to read queues!#033[0m
The actual logged exception includes the exception but because this does not reach syslog because without logging to a file it winds up adding the ColorFormatter with no context or extra
https://lab.civicrm.org/dev/coworker/-/blob/master/src/Command/ConfigurationTrait.php#L168
The easiest fix would be to just add to the format line - eg
`$consoleFormatter = new ColoredLineFormatter(NULL, '[%datetime%] %channel%.%level_name%: %message%');`
`$consoleFormatter = new ColoredLineFormatter(NULL, '[%datetime%] %channel%.%level_name%: %message% %context% %extra%');`
or bring it into line with the LineFormatter used in file mode - ie pass in NULL & we get
` public const SIMPLE_FORMAT = "[%datetime%] %channel%.%level_name%: %message% %context% %extra%\n";`
There are various ways we can make this configurable but I lean towards passing in NULL for the format & using the defaults. As we don't have obvious other users it seems hard to make a case for a lot of work on configurability & when there is an obvious advantage of just using the package default over the existing default that feels like the easy / sane fix.
Related: - we have a lot of noise in our syslog from these two
Jan 23 12:45:17 coworker[1448965]: #033[31m[2024-01-23T12:45:17.882285+00:00] Pipe[ctl#1].ERROR: Received unexpected response line: "{"jsonrpc":"2.0","result":[],"id":667944}"#033[0m
Jan 23 12:45:19 coworker[1448965]: #033[31m[2024-01-23T12:45:19.882223+00:00] Pipe[ctl#1].ERROR: Received unexpected response line: "civicrm.wmf.INFO: Early return as queue is backed up. 529 contributions in the last 5 minutes is greater than the threshold of 500"#033[0m
In the former case I think the issue is that it should be a notice not an error - this seems to be what happens when coworker respawns as part of it's normal operation
In the latter case the issue is not that it gets logged - but that it gets logged every second. We might be able to figure out how to do something to pause the queue in this case but it would also be every second when the queue processing is in maintenance mode I think. Perhaps that is fine since that is a more unusual eventhttps://lab.civicrm.org/dev/core/-/issues/4930Activity count is incorrect if contact is source and target2024-01-28T20:05:48ZbgmActivity count is incorrect if contact is source and targetRegression on 5.70/RC:
- Disable the AdminUI extension
- Go to a contact record
- New activity / Meeting
- Enter the same contact in the fields "with contact" and "assigned to contact"
- Save
The activity count displayed on the tab wil...Regression on 5.70/RC:
- Disable the AdminUI extension
- Go to a contact record
- New activity / Meeting
- Enter the same contact in the fields "with contact" and "assigned to contact"
- Save
The activity count displayed on the tab will count will be 3 instead of 1:
![image](/uploads/f4feac6831c8b35d58e88547129de366/image.png)
The AdminUI core-ext mitigates this problem by re-calculating, but we still see the incorrect count for a few seconds.5.70.0https://lab.civicrm.org/dev/core/-/issues/4929SK based on DB Entity includes contacts from the trash even when not specifie...2024-02-23T15:31:51ZlottieSK based on DB Entity includes contacts from the trash even when not specified as criteria## Overview
_When DB Entity is used as the 'search for' entity, it includes contacts from the trash even if not specified in the criteria of the original SK where the DB Entity display was constructed._
_This is the original post in _[...## Overview
_When DB Entity is used as the 'search for' entity, it includes contacts from the trash even if not specified in the criteria of the original SK where the DB Entity display was constructed._
_This is the original post in _[_Mattermost_](https://chat.civicrm.org/civicrm/pl/nji7p7prsid7dkf6p7ha3qksha)_._
## Reproduction steps
1. To test this you **_need to have some deleted contacts in your trash_**.
2. **Add a new** **SK** and do not change anything in the compose window (entity Contacts, everything default).
3. **Add a DB Entity display** to the SK you created in step 1 and preview it
4. **Save the SK** and **clear the cache** (I'm finding a have to clear the cache a 2-3 times)
5. **Add a new SK**
6. As the first **search for** entity, **_choose the DB Entity_** you created in step 2 and view the results
## Current behaviour
_The results returned for the child SK based on the DB Entity are higher than the results returned for the parent (first) SK. And the table created for the SK DB Entity the same number as shown in child SK. Note the result count in each of the following images. I have two contacts in the trash._
The SK created in step 1 (the parent for the DB Entity display - _Basic Contact Search_) has 201 results.
![sk-basic-contact-search_1.png](/uploads/c39cf6e5f33df445605656635569d70c/sk-basic-contact-search_1.png)
The SK where the DB Entity (_Basic Contact Search Child)_ created in step 1 is used as the **Search for** entity has 203 results.
![sk-basic-contact-search-child-based-on-db-entity_2.png](/uploads/7b7b5f3cc961fd0d3338fd06ea7726fa/sk-basic-contact-search-child-based-on-db-entity_2.png)
If I add the following where clause to the parent SK (_Basic Contact Search)_:
``WHERE (`a`.`is_deleted` = "0")``
![sk-basic-contact-search-addwhere-trash.png](/uploads/2a894589478f15154cebea240eaccbad/sk-basic-contact-search-addwhere-trash.png){width=491 height=178}
I get the correct result in my SK (_Basic Contact Search Child_) that is based on the DB Entity. The 201 results matches the original SK (_Basic Contact Search_).
![sk-basic-contact-search-child-updated.png](/uploads/ea5ebf91d8dc36c941cfa90a6409c411/sk-basic-contact-search-child-updated.png){width=525 height=272}
## Expected behaviour
_One should not be required to add the where clause to exclude the contacts in the trash. It seems as though that should be the default behaviour._
## Environment information
* **Browser:** _Firefox 59.0.1/Chrome 78.0.3904/Safari 13_
* **CiviCRM:** _5.69.2_
* **PHP:** _8.0_
* **CMS:** _Drupal 7.99_
* **Database:** _MariaDB 10.6_
* **Web Server:** _Apache 2.4_colemanwcolemanwhttps://lab.civicrm.org/dev/core/-/issues/4928Event registration crashes under Windows - is this a Smarty3 issue?2024-01-31T17:12:28ZspalmstromEvent registration crashes under Windows - is this a Smarty3 issue?## Overview
I raised this in Stackexchange and have had some feedback ([Is this the end of the road for CiviCRM under Windows?](https://civicrm.stackexchange.com/questions/46268/is-it-the-end-of-the-road-for-civicrm-under-windows?noredi...## Overview
I raised this in Stackexchange and have had some feedback ([Is this the end of the road for CiviCRM under Windows?](https://civicrm.stackexchange.com/questions/46268/is-it-the-end-of-the-road-for-civicrm-under-windows?noredirect=1#comment55813_46268))
## Reproduction steps
1. Create an event.
2. Fill in details for two people and click Review.
3. Click Register.
4. Got a cannot write file error:
```plaintext
SmartyException: "unable to write file <Drupal root>\web\sites\default\files\civicrm\templates_c\en_GB\c3\0d\eb\c30deb6712dca60a591491c1b9b34a88872d619f_0.string.{eval var=$smartySingleUseString|smarty:nodefaults}.php"
```
5. After replacing string: with eval: in line 1040 of \`\`\`\\vendor\\civicrm\\civicrm-core\\CRM\\Utils\\String.php\`\` got
```plaintext
Civi\Crypto\Exception\CryptoException: Failed to find key by ID or tag (z6BNl0_wDYQft0x4mbQidOEKlHk) in <Drupal root>\vendor\civicrm\civicrm-core\Civi\Crypto\CryptoToken.php on line 143
```
## Current behaviour
See above. The file write error is because Windows doesn't support colons and other unusual characters in file names.
## Expected behaviour
Registration should be successful.
## Environment information
* **Browser:** _IIS_ but probably not relevant.
* **CiviCRM:** _5.71.Alpha1 but also seen in 5.69.2_ The issue in the latter is stopping us updating our live environment.
* **PHP:** \_8.3.1_\_
* **CMS:** _Drupal 10.2.2_
* **Database:** _MySQL 8.0_
* **Web Server:** _IIS 10_
## Comments
Smarty is clearly intended to support Windows as there are references to it in the code. It looks as though the syntax for smartySingleUseString requires file names that are incompatible with running under Windows, or maybe I have misunderstood something. My knowledge of the mail system doesn't readily lend itself to discovering where the encryption keys or tags should be found, but maybe somebody reading this has a better knowledge than I.
I have not cluttered the issue with the long stack traces.5.71.0https://lab.civicrm.org/dev/core/-/issues/4927unrelease regression (master) Event with no participant yet is still full2024-01-28T19:35:40Zspalmstromunrelease regression (master) Event with no participant yet is still fullOverview
----------------------------------------
If you create an event on the Demo site and attempt to register, you are told it is full, though the event is new.
Reproduction steps
----------------------------------------
1. Create a...Overview
----------------------------------------
If you create an event on the Demo site and attempt to register, you are told it is full, though the event is new.
Reproduction steps
----------------------------------------
1. Create a new event with Online Registration.
1. Attempt to register.
1. You are told the event is full.
2.
Current behaviour
----------------------------------------
You are told the event is full.
```
Expected behaviour
----------------------------------------
You should be able to register for the event.
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:__ _Edge_. but probably irrelevant.
* __CiviCRM:__ _5.1.Alpha1_ The demo system.
* __PHP:__ _8.1__
* __CMS:__ _Whatever Demo is running on._
* __Database:__ _Whatever Demo uses_
* __Web Server:__ _Whatever Demo uses_
Comments
----------------------------------------
I saw this problem on the Demo system. I'm unable to investigate on my local system due to another issue that I shall be raising.5.71.0https://lab.civicrm.org/dev/core/-/issues/4926Drupal 10: `cv` fails on CiviCRM 5.69.22024-01-19T19:41:46ZpcurrierDrupal 10: `cv` fails on CiviCRM 5.69.2Overview
----------------------------------------
This is essentially a dupe of https://lab.civicrm.org/dev/core/-/issues/3438 -- Civi tries to call the drupal logger before it has been bootstrapped.
Reproduction steps
-----------------...Overview
----------------------------------------
This is essentially a dupe of https://lab.civicrm.org/dev/core/-/issues/3438 -- Civi tries to call the drupal logger before it has been bootstrapped.
Reproduction steps
----------------------------------------
1. Run a cv command, like "cv api system.check"
2. Get the error below if anything is logged before Drupal is up
Current behaviour
----------------------------------------
Here is the error from "cv -vvv":
```
In Drupal.php line 169:
[Drupal\Core\DependencyInjection\ContainerNotInitializedException]
\Drupal::$container is not initialized yet. \Drupal::setContainer() must be called with a real container.
Exception trace:
at /var/www/d8/web/core/lib/Drupal.php:169
Drupal::getContainer() at /var/www/d8/web/core/lib/Drupal.php:673
Drupal::logger() at /var/www/d8/vendor/civicrm/civicrm-core/CRM/Utils/System/Drupal8.php:301
CRM_Utils_System_Drupal8->url() at /var/www/d8/vendor/civicrm/civicrm-core/CRM/Utils/System.php:282
CRM_Utils_System::url() at /var/www/d8/vendor/civicrm/civicrm-core/tools/extensions/formprotection/settings/formprotection.setting.php:180
include() at /var/www/d8/vendor/civicrm/civicrm-core/Civi/Core/SettingsMetadata.php:109
Civi\Core\SettingsMetadata::loadSettingsMetadata() at /var/www/d8/vendor/civicrm/civicrm-core/Civi/Core/SettingsMetadata.php:92
Civi\Core\SettingsMetadata::loadSettingsMetaDataFolders() at /var/www/d8/vendor/civicrm/civicrm-core/Civi/Core/SettingsMetadata.php:66
Civi\Core\SettingsMetadata::getMetadata() at /var/www/d8/vendor/civicrm/civicrm-core/Civi/Core/SettingsManager.php:220
Civi\Core\SettingsManager->getDefaults() at /var/www/d8/vendor/civicrm/civicrm-core/Civi/Core/SettingsManager.php:102
Civi\Core\SettingsManager->useDefaults() at /var/www/d8/vendor/civicrm/civicrm-core/CRM/Core/Config.php:103
CRM_Core_Config::singleton() at phar:///usr/sbin/cv/src/Bootstrap.php:241
Civi\Cv\Bootstrap->boot() at phar:///usr/sbin/cv/src/Util/BootTrait.php:101
Civi\Cv\Command\ApiCommand->_boot_full() at n/a:n/a
call_user_func() at phar:///usr/sbin/cv/src/Util/BootTrait.php:45
Civi\Cv\Command\ApiCommand->boot() at phar:///usr/sbin/cv/src/Command/ApiCommand.php:59
Civi\Cv\Command\ApiCommand->execute() at phar:///usr/sbin/cv/vendor/symfony/console/Command/Command.php:255
Symfony\Component\Console\Command\Command->run() at phar:///usr/sbin/cv/vendor/symfony/console/Application.php:1009
Symfony\Component\Console\Application->doRunCommand() at phar:///usr/sbin/cv/vendor/symfony/console/Application.php:273
Symfony\Component\Console\Application->doRun() at phar:///usr/sbin/cv/src/Application.php:82
Civi\Cv\Application->doRun() at phar:///usr/sbin/cv/vendor/symfony/console/Application.php:149
Symfony\Component\Console\Application->run() at phar:///usr/sbin/cv/src/Application.php:49
Civi\Cv\Application::main() at phar:///usr/sbin/cv/bin/cv:27
require() at /usr/sbin/cv:14
```
Expected behaviour
----------------------------------------
cv should not throw this error.
Environment information
----------------------------------------
* CiviCRM: 5.69.2
* PHP: 8.1.14
* CMS: Drupal 10.2
Comments
----------------------------------------
I tried bgm's fix from issue https://lab.civicrm.org/dev/core/-/issues/3438 (basically having CRM_Utils_System_Drupal8->url() return null before calling logger() if Drupal is not bootstrapped yet) and the error disappeared.