CiviCRM Core issueshttps://lab.civicrm.org/dev/core/-/issues2024-01-05T03:42:45Zhttps://lab.civicrm.org/dev/core/-/issues/4881A contribution "Pay Later" option results in PHP Fatal error: Uncaught TypeE...2024-01-05T03:42:45ZyurgA contribution "Pay Later" option results in PHP Fatal error: Uncaught TypeError: array_key_exists() ..BAO/ContributionSoft.php:506Overview
----------------------------------------
WSOD on Contribution page ( confirmed on https://wpmaster.demo.civicrm.org/contribution-page/ ) if "Pay Later" enabled - possible it is a combination of options though, see below the for...Overview
----------------------------------------
WSOD on Contribution page ( confirmed on https://wpmaster.demo.civicrm.org/contribution-page/ ) if "Pay Later" enabled - possible it is a combination of options though, see below the form configuration
Form Configuration
----------------------------------------
"Amounts" tab:
1. "Contribution Amounts" enabled
2 "Pay later option" enabled
3. **No** "Price set", fixed contribution options
4. "Allow other amounts" enabled with the "Minimum Amount" set as 0
"Membership" tab
1. "General" membership type selected, default
2. Require Membership Signup enabled
3. Separate Membership Payment enabled
4. Display Membership Fee enabled
Current behaviour
----------------------------------------
WSOD on https://wpmaster.demo.civicrm.org/civicrm/contribute/transact/?_qf_Confirm_display=true&qfKey=CRMContributeControllerContribution2dtfiluw56xww48w88wk88k4cgsg44ws8cg4o4owwkoc8s8wow_9990
PHP error log ( from the other server, obviously, since we have no access to wpmaster.demo.civicrm.org internals ):
```
PHP Fatal error: Uncaught TypeError: array_key_exists(): Argument #2 ($array) must be of type array, null given in /wp-content/plugins/civicrm/civicrm/CRM/Contribute/BAO/ContributionSoft.php:506
Stack trace:
#0 /wp-content/plugins/civicrm/civicrm/CRM/Contribute/BAO/ContributionPage.php(327): CRM_Contribute_BAO_ContributionSoft::formatHonoreeProfileFields(Object(CRM_Core_Smarty), NULL, NULL)
#1 /wp-content/plugins/civicrm/civicrm/CRM/Contribute/Form/Contribution/Confirm.php(1717): CRM_Contribute_BAO_ContributionPage::sendMail(30350, Array, false, false, Array)
#2 /wp-content/plugins/civicrm/civicrm/CRM/Contribute/Form/Contribution/Confirm.php(1403): CRM_Contribute_Form_Contribution_Confirm->postProcessMembership(Array, 30350, Array, Array, Array, Array, true, NULL, false, '2', Array)
#3 /wp-content/plugins/civicrm/civicrm/CRM/Contribute/Form/Contribution/Confirm.php(2489): CRM_Contribute_Form_Contribution_Confirm->processMembership(Array, 30350, Array, Array, Array)
#4 /wp-content/plugins/civicrm/civicrm/CRM/Contribute/Form/Contribution/Confirm.php(2294): CRM_Contribute_Form_Contribution_Confirm->doMembershipProcessing(30350, Array, Array, Array)
#5 /wp-content/plugins/civicrm/civicrm/CRM/Contribute/Form/Contribution/Confirm.php(817): CRM_Contribute_Form_Contribution_Confirm->processFormSubmission(30350)
#6 /wp-content/plugins/civicrm/civicrm/CRM/Core/Form.php(622): CRM_Contribute_Form_Contribution_Confirm->postProcess()
#7 /wp-content/plugins/civicrm/civicrm/CRM/Contribute/Form/Contribution/Main.php(1430): CRM_Core_Form->mainProcess()
#8 /wp-content/plugins/civicrm/civicrm/CRM/Contribute/Form/Contribution/Main.php(1188): CRM_Contribute_Form_Contribution_Main->skipToThankYouPage()
#9 /wp-content/plugins/civicrm/civicrm/CRM/Core/Form.php(622): CRM_Contribute_Form_Contribution_Main->postProcess()
#10 /wp-content/plugins/civicrm/civicrm/CRM/Core/QuickForm/Action/Upload.php(153): CRM_Core_Form->mainProcess()
#11 /wp-content/plugins/civicrm/civicrm/CRM/Core/QuickForm/Action/Upload.php(120): CRM_Core_QuickForm_Action_Upload->realPerform(Object(CRM_Contribute_Form_Contribution_Main), 'upload')
#12 /wp-content/plugins/civicrm/civicrm/packages/HTML/QuickForm/Controller.php(203): CRM_Core_QuickForm_Action_Upload->perform(Object(CRM_Contribute_Form_Contribution_Main), 'upload')
#13 /wp-content/plugins/civicrm/civicrm/packages/HTML/QuickForm/Page.php(103): HTML_QuickForm_Controller->handle(Object(CRM_Contribute_Form_Contribution_Main), 'upload')
#14 /wp-content/plugins/civicrm/civicrm/CRM/Core/Controller.php(355): HTML_QuickForm_Page->handle('upload')
#15 /wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(322): CRM_Core_Controller->run(Array, NULL)
#16 /wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(69): CRM_Core_Invoke::runItem(Array)
#17 /wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(36): CRM_Core_Invoke::_invoke(Array)
#18 /wp-content/plugins/civicrm/civicrm.php(1199): CRM_Core_Invoke::invoke(Array)
```
Environment information
----------------------------------------
* CiviCRM: 5.68.0, CiviCRM 5.70.alpha1 (via https://wpmaster.demo.civicrm.org)
* PHP version 8.1.26
* CMS:WordPress 6.4.2
Comments
----------------------------------------
Line 506 of /wp-content/plugins/civicrm/civicrm/CRM/Contribute/BAO/ContributionSoft.php:506 reads:
```
switch ($profileContactType) {
case 'Individual':
/* 506 -> */ if (array_key_exists('prefix_id', $params)) {
$honorName = CRM_Utils_Array::value($params['prefix_id'],
```
so it looks like $params are NULL at this point. Should they be or we just add _if(!empty($params_ here and let it go?5.69.0https://lab.civicrm.org/dev/core/-/issues/4880Price field and value weights not respected in 5.682024-01-02T23:55:23ZJonGoldPrice field and value weights not respected in 5.68Overview
----------------------------------------
Price fields and values are sorted by primary key, not weight, on contribution pages.
Reproduction steps
----------------------------------------
1. Open up a price set.
1. Change the we...Overview
----------------------------------------
Price fields and values are sorted by primary key, not weight, on contribution pages.
Reproduction steps
----------------------------------------
1. Open up a price set.
1. Change the weight of some items.
1. See if it changed the contribution page..
Current behaviour
----------------------------------------
Sort by primary key.
Expected behaviour
----------------------------------------
Sort by weight.
Comments
----------------------------------------
PR is here: https://github.com/civicrm/civicrm-core/pull/28842
I wasn't going to make a lab.c.o ticket but I suspect that the "regression" tag here is what blocks a release, and with 5.69 almost upon us, I wanted to make sure this got seen.5.69.0JonGoldJonGoldhttps://lab.civicrm.org/dev/core/-/issues/4879Duplicate declaration of static variable under PHP 8.32024-01-31T22:30:42ZspalmstromDuplicate declaration of static variable under PHP 8.3Overview
----------------------------------------
_Please 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 conversatio...Overview
----------------------------------------
_Please 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. Go to the web site.
1. The site crashes with
```
PHP Fatal error: Duplicate declaration of static variable $fields in <drupal root>/vendor/civicrm/civicrm-core/CRM/Mailing/Event/BAO/MailingEventForward.php on line 236
```
Current behaviour
----------------------------------------
```
PHP Fatal error: Duplicate declaration of static variable $fields in <drupal root>/vendor/civicrm/civicrm-core/CRM/Mailing/Event/BAO/MailingEventForward.php on line 236
```
Once the static declaration has been removed, you get.
```
PHP Fatal error: Duplicate declaration of static variable $fields in <D:\CiviCRM_Custom.git\drupal8>drupal root>/vendor/civicrm/civicrm-core/CRM/Import/Parser.php on line 1131
```
Expected behaviour
----------------------------------------
The home page should appear.
Environment information
----------------------------------------
<!-- Some of the items below may not be relevant for every bug - if in doubt please include more information than you think is neccessary. -->
* __Browser:__ _MS Edge_ but probably not relevant
* __CiviCRM:__ _Master/5.68.x..._ <!-- If this problem relates to an upgrade, then specify both old and new versions -->
* __PHP:__ _8.3_ and I suspect very relevant.
* __CMS:__ _Drupal 10.2.0_ but may not be relevant
* __Database:__ _MySQL 8.0.35_ but probably not relevant.
* __Web Server:__ _IIS 10_ but probably not relevant.
Comments
----------------------------------------
Cannot reproduce in Demo as it is running PHP 8.1.x. Drupal now wants at least 8.2 if my understanding is correct.5.69.2https://lab.civicrm.org/dev/core/-/issues/4878Bundled Snappy is affected by CVE-2023-281152024-01-05T08:17:36ZDmitry SmirnovBundled Snappy is affected by CVE-2023-28115As [reported in Debian](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1036284), bundled snappy is affected by the [CVE-2023-28115](https://www.cve.org/CVERecord?id=CVE-2023-28115) vulnerability:
> Snappy is a PHP library allowing th...As [reported in Debian](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1036284), bundled snappy is affected by the [CVE-2023-28115](https://www.cve.org/CVERecord?id=CVE-2023-28115) vulnerability:
> Snappy is a PHP library allowing thumbnail, snapshot or PDF generation from a url or a html page. Prior to version 1.4.2, Snappy is vulnerable to PHAR deserialization due to a lack of checking on the protocol before passing it into the `file_exists()` function. If an attacker can upload files of any type to the server he can pass in the phar:// protocol to unserialize the uploaded file and instantiate arbitrary PHP objects. This can lead to remote code execution especially when snappy is used with frameworks with documented POP chains like Laravel/Symfony vulnerable developer code. If a user can control the output file from the `generateFromHtml()` function, it will invoke deserialization. This vulnerability is capable of remote code execution if Snappy is used with frameworks or developer code with vulnerable POP chains. It has been fixed in version 1.4.2.
* https://github.com/KnpLabs/snappy/security/advisories/GHSA-gq6w-q6wh-jggc
* https://github.com/KnpLabs/snappy/pull/469
* https://github.com/KnpLabs/snappy/commit/1ee6360cbdbea5d09705909a150df7963a88efd6 (v1.4.2)5.69.0https://lab.civicrm.org/dev/core/-/issues/4877Membership level is miscomputed if you use "Go back" to fix a mistake2024-01-05T03:42:45ZtottenMembership level is miscomputed if you use "Go back" to fix a mistake## Overview
When using a ContributionPage to choose a membership type, you have the option to "Go back" and change
## Reproduction steps
1. Create a site with demo data (_I'm using dmaster_). This includes a dummy payment processor, s...## Overview
When using a ContributionPage to choose a membership type, you have the option to "Go back" and change
## Reproduction steps
1. Create a site with demo data (_I'm using dmaster_). This includes a dummy payment processor, some membership types ("General", "Student"), and a ContributionPage.
2. In a private window, open the ContributionPage for membership registration (`civicrm/contribute/transact?reset=1&id=2`)
3. Choose the "General" membership type. Fill out dummy billing info. Continue to next page.
4. On the confirmation page, read the summary. __You see the "General" selection... and realize it's a mistake.__ You want to change.
5. Press "Go Back"
6. Change the membership to the correct/intended value ("Student"). Continue to the next page.
## Current behavior
On the confirmation page, you see contradictory information. One section reports "Student" membership, and the other section reports "General" membership.
![Screenshot_2023-12-31_at_7.15.05_PM](/uploads/9013a642427bc6685087c71088f15d83/Screenshot_2023-12-31_at_7.15.05_PM.png)
If you ignore this and proceed, then it will processed as a "General" membership -- using your original/mistaken value instead of final/corrected value.
The mistaken values (label/price/period) will appear in the email receipt, the `Contribution` record, and the `Membership` record.
## Expected behavior
After changing your choice to "Student", all screens/records/emails should use the final/corrected value.
## Environment information
* **Browser:** Firefox
* **CiviCRM:** 5.69
* **PHP:** 8.1
* **CMS:** D7
* **Database:** MySQL 8
* **Web Server:** Apache
## Comments
I noticed this while testing other issues, so my local setup involved some other configuration. These parts probably don't matter for this scenario. But just in case there's trouble with reproducing, here's a list of other config steps:
* Make a new membership type, "Part Time Student", which recurs every 6 months
* Update the ContributionPage to enable "Part Time Student" (along with "General" and "Student")
* Change the prices on all membership types to be values like $6, $7, $8, $10. (These values are [more convenient for testing iATS credit card mode](https://content.iatspayments.com/developers-test-credit-card-numbers).)
* Add payment processor for iATS CC (TEST88). But don't actually use it. It's just an extra one hanging around.5.69.0https://lab.civicrm.org/dev/core/-/issues/4876Email greeting config crashes on some smarty `if` statements if quotes are in...2024-01-15T11:27:07ZDaveDEmail greeting config crashes on some smarty `if` statements if quotes are involvedI don't think this is recent, but in message templates I remember there was some handling so that you could do e.g. `{if '{token.something}' == ''}aaa{else}bbb{/if}`, and if `{token.something}`'s value contained apostrophes it would stil...I don't think this is recent, but in message templates I remember there was some handling so that you could do e.g. `{if '{token.something}' == ''}aaa{else}bbb{/if}`, and if `{token.something}`'s value contained apostrophes it would still work. I haven't checked if that's still working but if you do the same in an email greeting it will crash. Example:
1. Create a new contact with first name `D'Andre`.
2. Down in communication prefs choose customized for the email greeting and put `Dear {if '{contact.first_name}' == ''}Friend{else}{contact.first_name}{/if}`.
3. When you save it crashes because the apostrophe confuses it.
4. It's not related to choosing "customized". It happens if this is your normal config at admin - communications - email greetings.
5. It also happens if you try double-quotes and then the name contains a double-quote.
I can work around it with `Dear {if {contact.first_name|boolean}}{contact.first_name}{else}Friend{/if}`, but if I wanted to compare to an actual value that wouldn't help.https://lab.civicrm.org/dev/core/-/issues/4875Better tracking of Scheduled Reminders including Reporting2024-02-21T19:56:17ZshaneonabikeBetter tracking of Scheduled Reminders including Reporting## Overview
_It has come up quite a few times with several clients of ours, whereby they want to see what Scheduled messages went out, if they bounced, and other details. In a few cases, the Scheduled Reminders were not configured prope...## Overview
_It has come up quite a few times with several clients of ours, whereby they want to see what Scheduled messages went out, if they bounced, and other details. In a few cases, the Scheduled Reminders were not configured properly by the client, which is understandable but that's another UI issue._
_So I think it could be really helpful to provide this type of tracking, including click-through, FFWD, etc for Scheduled Reminders like regular mailings._
## Example use-case
1. Set up a Scheduled Reminder for an Event or Membership Renewal
2. Go to Reports to view the progress of Scheduled Reminders
3. Filter by click-throughs, bounce, etc.
## Current behaviour
_Same as above. Presently, the only workaround in some cases like Scheduled Reminders is to create a "fake" mailing that is sent out to one person. Then copying the code generated into the Scheduled Reminder allows a person to actually track the Scheduled Reminder information like you would with a regular mailing because it is associated to our "fake" mailing. But this is super not sustainable or even doable for Event Reminders._
## Proposed behaviour
_Basically, I think it could be extremely useful to integrate the same functionality for Mailing tracking (including bounce) to Scheduled Reminders._https://lab.civicrm.org/dev/core/-/issues/4874Smarty3: file not found in extension2024-02-10T03:20:14ZJonGoldSmarty3: file not found in extensionOverview
----------------------------------------
I changed all my dev sites to use Smarty3, but have been hitting errors. I often need to disable Smarty3 to get my work done, and I've had a hard time isolating some of the bugs, but I h...Overview
----------------------------------------
I changed all my dev sites to use Smarty3, but have been hitting errors. I often need to disable Smarty3 to get my work done, and I've had a hard time isolating some of the bugs, but I have one that I think typifies many I've seen.
Reproduction steps
----------------------------------------
1. Install https://github.com/MegaphoneJon/autopagealias.
1. Try to configure the "Title and Settings" tab of any contribution page.
Current behaviour
----------------------------------------
500 error. Backtrace at the bottom.
Expected behaviour
----------------------------------------
Page loads.
Comments
----------------------------------------
This extension is supposed to [load a template into a region](https://github.com/MegaphoneJon/autopagealias/blob/345b08dd296547499cea49c39fb6c82690800716/autopagealias.php#L55-L57) which is what fails.
Backtrace:
```
SmartyException: "Unable to load template 'file:autopagealias.tpl'"
#0 /home/jon/local/mysite/web/sites/all/modules/civicrm/packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatebase.php(232): Smarty_Internal_Template->render()
#1 /home/jon/local/mysite/web/sites/all/modules/civicrm/packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatebase.php(116): Smarty_Internal_TemplateBase->_execute()
#2 /home/jon/local/mysite/web/sites/all/modules/civicrm/CRM/Core/Region.php(81): Smarty_Internal_TemplateBase->fetch()
#3 /home/jon/local/mysite/web/sites/all/modules/civicrm/CRM/Core/Region.php(157): CRM_Core_Region->{closure}()
#4 /home/jon/local/mysite/web/sites/all/modules/civicrm/CRM/Core/Smarty/plugins/block.crmRegion.php(26): CRM_Core_Region->render()
#5 /home/jon/local/mysite/web/sites/default/files/civicrm/templates_c/en_US/c8/a8/bd/c8a8bd2f0d2e36364b83a4b0b14004fe7f08dd67_0.file.default.tpl.php(40): smarty_block_crmRegion()
#6 /home/jon/local/mysite/web/sites/all/modules/civicrm/packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_template_resource_base.php(123): content_65836ac8491583_28697209()
#7 /home/jon/local/mysite/web/sites/all/modules/civicrm/packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_template_compiled.php(114): Smarty_Template_Resource_Base->getRenderedTemplateCode()
#8 /home/jon/local/mysite/web/sites/all/modules/civicrm/packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_internal_template.php(216): Smarty_Template_Compiled->render()
#9 /home/jon/local/mysite/web/sites/all/modules/civicrm/packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_internal_template.php(385): Smarty_Internal_Template->render()
#10 /home/jon/local/mysite/web/sites/default/files/civicrm/templates_c/en_US/5c/4f/99/5c4f999cd4ef413bb2921f2d4e6361f852f26f8a_0.file.snippet.tpl.php(73): Smarty_Internal_Template->_subTemplateRender()
#11 /home/jon/local/mysite/web/sites/all/modules/civicrm/packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_template_resource_base.php(123): content_65836ac8383521_30854142()
#12 /home/jon/local/mysite/web/sites/all/modules/civicrm/packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_template_compiled.php(114): Smarty_Template_Resource_Base->getRenderedTemplateCode()
#13 /home/jon/local/mysite/web/sites/all/modules/civicrm/packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_internal_template.php(216): Smarty_Template_Compiled->render()
#14 /home/jon/local/mysite/web/sites/all/modules/civicrm/packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatebase.php(232): Smarty_Internal_Template->render()
#15 /home/jon/local/mysite/web/sites/all/modules/civicrm/packages/smarty3/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatebase.php(116): Smarty_Internal_TemplateBase->_execute()
#16 /home/jon/local/mysite/web/sites/all/modules/civicrm/CRM/Core/QuickForm/Action/Display.php(117): Smarty_Internal_TemplateBase->fetch()
#17 /home/jon/local/mysite/web/sites/all/modules/civicrm/CRM/Core/QuickForm/Action/Display.php(83): CRM_Core_QuickForm_Action_Display->renderForm()
#18 /home/jon/local/mysite/web/sites/all/modules/civicrm/packages/HTML/QuickForm/Controller.php(203): CRM_Core_QuickForm_Action_Display->perform()
#19 /home/jon/local/mysite/web/sites/all/modules/civicrm/packages/HTML/QuickForm/Page.php(103): HTML_QuickForm_Controller->handle()
#20 /home/jon/local/mysite/web/sites/all/modules/civicrm/CRM/Core/Controller.php(355): HTML_QuickForm_Page->handle()
#21 /home/jon/local/mysite/web/sites/all/modules/civicrm/CRM/Utils/Wrapper.php(98): CRM_Core_Controller->run()
#22 /home/jon/local/mysite/web/sites/all/modules/civicrm/CRM/Core/Invoke.php(295): CRM_Utils_Wrapper->run()
#23 /home/jon/local/mysite/web/sites/all/modules/civicrm/CRM/Core/Invoke.php(69): CRM_Core_Invoke::runItem()
#24 /home/jon/local/mysite/web/sites/all/modules/civicrm/CRM/Core/Invoke.php(36): CRM_Core_Invoke::_invoke()
#25 /home/jon/local/mysite/web/sites/all/modules/civicrm/drupal/civicrm.module(472): CRM_Core_Invoke::invoke()
#26 /home/jon/local/mysite/web/includes/menu.inc(527): civicrm_invoke()
#27 /home/jon/local/mysite/web/index.php(21): menu_execute_active_handler()
#28 {main}
```https://lab.civicrm.org/dev/core/-/issues/4873SearchKit - Add inputMode setting to allow clauses to reference column values...2024-02-12T16:30:40ZsamuelsovSearchKit - Add inputMode setting to allow clauses to reference column values in conditionsRelated to https://github.com/civicrm/civicrm-core/pull/28112
The next step is to allow the feature of field selection for conditions :
![image](/uploads/c400052bf32ca7944a87fdae2d2d3bf6/image.png)
I believe it's already possible from...Related to https://github.com/civicrm/civicrm-core/pull/28112
The next step is to allow the feature of field selection for conditions :
![image](/uploads/c400052bf32ca7944a87fdae2d2d3bf6/image.png)
I believe it's already possible from the managed file so it's likely only a UI limitation.colemanwcolemanwhttps://lab.civicrm.org/dev/core/-/issues/4872SearchKit: Many "group by" requests result in "illegal offset type" 500 error2024-01-05T03:42:44ZJonGoldSearchKit: Many "group by" requests result in "illegal offset type" 500 errorOverview
----------------------------------------
Grouping results that contain both individual and organizations in the results leads to an "illegal offset type" error.
Reproduction steps
----------------------------------------
Import...Overview
----------------------------------------
Grouping results that contain both individual and organizations in the results leads to an "illegal offset type" error.
Reproduction steps
----------------------------------------
Import and run this SearchKit query.
```
[
[
"SavedSearch",
"save",
{
"records": [
{
"name": "illegal_offset_type",
"label": "illegal offset type",
"api_entity": "Contact",
"api_params": {
"version": 4,
"select": [
"COUNT(id) AS COUNT_id",
"GROUP_CONCAT(DISTINCT sort_name) AS GROUP_CONCAT_sort_name",
"GROUP_CONCAT(DISTINCT contact_type:label) AS GROUP_CONCAT_contact_type_label",
"GROUP_CONCAT(DISTINCT contact_sub_type:label) AS GROUP_CONCAT_contact_sub_type_label"
],
"orderBy": [],
"where": [],
"groupBy": [
"Contact_Address_contact_id_01.street_address"
],
"join": [
[
"Address AS Contact_Address_contact_id_01",
"LEFT",
[
"id",
"=",
"Contact_Address_contact_id_01.contact_id"
],
[
"Contact_Address_contact_id_01.is_primary",
"=",
true
]
]
],
"having": []
}
}
],
"match": [
"name"
]
}
]
]
```
Current behaviour
----------------------------------------
500 error:
```
TypeError: Illegal offset type in Civi\Api4\Utils\FormattingUtil::contactFieldsToRemove() (line 430 of /home/jon/local/civicrm-buildkit/build/dmaster/web/sites/all/modules/civicrm/Civi/Api4/Utils/FormattingUtil.php).
```
Expected behaviour
----------------------------------------
No error.JonGoldJonGoldhttps://lab.civicrm.org/dev/core/-/issues/4871Afform - Reset button click does not refresh the search result table with emp...2023-12-20T19:19:39ZjitendraAfform - Reset button click does not refresh the search result table with empty filtersTo replicate:
- Create a search kit to search for contacts.
- Add a form builder with a filter input Display Name. Also enable Reset button.
- View the search form and search for display name:
![image](/uploads/61162fab96405b82341a39ddb...To replicate:
- Create a search kit to search for contacts.
- Add a form builder with a filter input Display Name. Also enable Reset button.
- View the search form and search for display name:
![image](/uploads/61162fab96405b82341a39ddb461d9d6/image.png)
- Click Reset and search again.
**Expected**: The search refreshes the table with empty displayname and returns all contacts.
**Actual**: The search does not refresh the table.
![image](/uploads/7b807b8aee9ee97d3b8c5b5c98a133aa/image.png)
Note: If i clear the textbox manually and hit search, the search is working fine.https://lab.civicrm.org/dev/core/-/issues/4870consider adding type info to cache interfaces that extend PSR-16 Simple Cache?2024-02-18T14:03:46Zcomposerjkconsider adding type info to cache interfaces that extend PSR-16 Simple Cache?It looks like in August 2021, the PHP-FIG [PSR-16 Simple Cache](https://github.com/php-fig/simple-cache) interface had parameter and return type info added to the method definitions.
Noticed when the 2.1+ update to the [Breeze](https://...It looks like in August 2021, the PHP-FIG [PSR-16 Simple Cache](https://github.com/php-fig/simple-cache) interface had parameter and return type info added to the method definitions.
Noticed when the 2.1+ update to the [Breeze](https://wordpress.org/plugins/breeze/) WordPress cache plugin referenced the updated cache interface definition via the included [Mobile Detect](https://github.com/serbanghita/Mobile-Detect/) package.
Maybe there's an adjustment to be made or maybe they (Mobile Detect folk) are including the PSR definitions incorrectly? Have not investigated.
Here's the error message that caused me to notice and track down the issue:
`An error of type E_COMPILE_ERROR was caused in line 43 of the file /…/wp-content/plugins/civicrm/civicrm/CRM/Utils/Cache/Interface.php. Error message: Declaration of CRM_Utils_Cache_Interface::get($key, $default = null) must be compatible with Psr\SimpleCache\CacheInterface::get(string $key, mixed $default = null): mixed`
Initial PSR-16 implementation inclusion was in issue #174.https://lab.civicrm.org/dev/core/-/issues/4869Mailing labels do not work with custom tokens anymore2024-01-06T00:51:57ZMariaVMailing labels do not work with custom tokens anymoreI thought I have seen this issue already but I could not find it. In case there is, feel free to close.
Since 5.64.4 or probably earlier, the mailing labels do not work with custom tokens anymore.
An update to 5.67.3 did not help. The p...I thought I have seen this issue already but I could not find it. In case there is, feel free to close.
Since 5.64.4 or probably earlier, the mailing labels do not work with custom tokens anymore.
An update to 5.67.3 did not help. The page is just blank with no labels at all.
My colleague and I were trying to analyze this problem a bit further but could not find a solution.
The custom token itself works when creating a document.
In case it would be interesting to have a look on the code, I have attached the files.
The custom token produces also warnings for non-existent array indices:
```
PHP Warning: Undefined array key "County" in /html/wordpress/wp-content/plugins/civicrm/civicrm/CRM/Admin/Form/Preferences/Address.php on line 83
PHP Warning: Undefined array key "Street Address Parsing" in /html/wordpress/wp-content/plugins/civicrm/civicrm/CRM/Admin/Form/Preferences/Address.php on line 95
PHP Warning: Undefined array key "county" in /html/wordpress/wp-content/uploads/civicrm/templates_c/de_DE/%%B0/B09/B09DCA78%%Location.tpl.php on line 78
PHP Warning: Trying to access array offset on value of type null in /html/wordpress/wp-content/uploads/civicrm/templates_c/de_DE/%%B0/B09/B09DCA78%%Location.tpl.php on line 78
```
Does anybody have an idea what could be a problem? Could it be an incompatibility with PHP8?
[csaddressemployer.inc](/uploads/7602180cf302b3fc9e2d67d49b62f61e/csaddressemployer.inc)
[tokenhelpers.inc](/uploads/9702807fed78d384f2226aadf99a173c/tokenhelpers.inc)5.69.0https://lab.civicrm.org/dev/core/-/issues/4868Add action for copy activity2023-12-20T19:16:21ZyashodhaAdd action for copy activityWe do have copy action on various entities like _Contribution Page_, _Events_.
It might be handy to have the same for _Activity _as well.
Also provide _Save as New_ feature/ when clicked we can have a new activity created with addition...We do have copy action on various entities like _Contribution Page_, _Events_.
It might be handy to have the same for _Activity _as well.
Also provide _Save as New_ feature/ when clicked we can have a new activity created with additional tweaks based on a pre-existing activity. This would come esp handy for activities which have lots of Activity Contacts/Targets/assignees and custom dat awith the original activity acting as a template.yashodhayashodhahttps://lab.civicrm.org/dev/core/-/issues/4867civi_case/civi_campaign extensions not configured properly on a fresh install2024-01-05T03:42:41ZDaveDcivi_case/civi_campaign extensions not configured properly on a fresh installLeads to crash if you try to enable the extension from the extension screen. They enable properly from the components screen.
Might be from https://github.com/civicrm/civicrm-core/commit/9640b86f59daf80991989f0848e02c01ead202d7? I'm not...Leads to crash if you try to enable the extension from the extension screen. They enable properly from the components screen.
Might be from https://github.com/civicrm/civicrm-core/commit/9640b86f59daf80991989f0848e02c01ead202d7? I'm not sure because I don't use the extension screen to manage these, and on all the PR sites and dmaster.demo they are enabled already at install, so I don't have a good sense of when it started.
PR coming shortly5.69.0https://lab.civicrm.org/dev/core/-/issues/4866Advance search fails for tag search2023-12-18T16:10:50ZPradeep Nayakpradpnayak@gmail.comAdvance search fails for tag searchWhen using advanced search for contacts based on tag and activity created within this month fails to search and export.
![Screen_Recording_2023-12-16_at_13.39.26](/uploads/d27cab973f06ef4b2b61cbd1024b976a/Screen_Recording_2023-12-16_at...When using advanced search for contacts based on tag and activity created within this month fails to search and export.
![Screen_Recording_2023-12-16_at_13.39.26](/uploads/d27cab973f06ef4b2b61cbd1024b976a/Screen_Recording_2023-12-16_at_13.39.26.mov)5.70.0https://lab.civicrm.org/dev/core/-/issues/4865The "X" on advanced search accordions isn't doing the right thing anymore2023-12-20T19:15:35ZDaveDThe "X" on advanced search accordions isn't doing the right thing anymoreFollowup to https://lab.civicrm.org/dev/core/-/issues/4856
It looks like it's been a problem since at least 5.63.
What used to happen was if you just collapsed the accordion, it still used whatever search criteria had been entered (bec...Followup to https://lab.civicrm.org/dev/core/-/issues/4856
It looks like it's been a problem since at least 5.63.
What used to happen was if you just collapsed the accordion, it still used whatever search criteria had been entered (because after the search the form still needs to retain the search criteria even with them collapsed), and in fact even just opening the accordion would make it do the table joins (e.g. if you open the contributions accordion it's the same as "only show me contacts who have at least one contribution"). That's all working now again after 4856. But the "X" at the far right of the accordion header was there to completely remove the criteria and table joins from the query. That's not working anymore, and broke before any accordion changes.
It is _sort of_ working in the sense that it will clear contribution date for example, but not some other fields like id or transaction. And in both cases the accordion still pops open after search. Also note the defaults disappear so it's now including test and template contributions.
And additionally, for transaction, if you repeat and close the accordion again and click search again, you get a crash because it tries to pass array for some reason to mysqli_escape_string.https://lab.civicrm.org/dev/core/-/issues/4864Edit contribution Undefined array key on dmaster2024-03-12T17:47:47ZJoeMurrayEdit contribution Undefined array key on dmasterTrying to edit contribution created at https://lab.civicrm.org/dev/core/-/issues/4863 leads to page of php/smarty issues:
Warning: Undefined array key "defaultContribution" in include() (line 86 of /srv/buildkit/build/dmaster/.civibuild...Trying to edit contribution created at https://lab.civicrm.org/dev/core/-/issues/4863 leads to page of php/smarty issues:
Warning: Undefined array key "defaultContribution" in include() (line 86 of /srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/templates_c/en_US/%%6F/6F7/6F7BB438%%Contribution.tpl.php).
Warning: Undefined array key "displayLineItemFinancialType" in include() (line 24 of /srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/templates_c/en_US/%%F2/F21/F21A46C1%%LineItem.tpl.php).
Warning: Undefined array key "getTaxDetails" in include() (line 32 of /srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/templates_c/en_US/%%F2/F21/F21A46C1%%LineItem.tpl.php).
Warning: Undefined array key "getTaxDetails" in include() (line 37 of /srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/templates_c/en_US/%%F2/F21/F21A46C1%%LineItem.tpl.php).
Warning: Undefined array key "pricesetFieldsCount" in include() (line 44 of /srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/templates_c/en_US/%%F2/F21/F21A46C1%%LineItem.tpl.php).
Warning: Undefined array key "displayLineItemFinancialType" in include() (line 57 of /srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/templates_c/en_US/%%F2/F21/F21A46C1%%LineItem.tpl.php).
Warning: Undefined array key "getTaxDetails" in include() (line 70 of /srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/templates_c/en_US/%%F2/F21/F21A46C1%%LineItem.tpl.php).
Warning: Undefined array key "getTaxDetails" in include() (line 74 of /srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/templates_c/en_US/%%F2/F21/F21A46C1%%LineItem.tpl.php).
Warning: Undefined array key "pricesetFieldsCount" in include() (line 90 of /srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/templates_c/en_US/%%F2/F21/F21A46C1%%LineItem.tpl.php).
Warning: Undefined array key "getTaxDetails" in include() (line 102 of /srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/templates_c/en_US/%%F2/F21/F21A46C1%%LineItem.tpl.php).
Warning: Undefined array key "pricesetFieldsCount" in include() (line 124 of /srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/templates_c/en_US/%%F2/F21/F21A46C1%%LineItem.tpl.php).
Warning: Undefined array key "hookDiscount" in include() (line 151 of /srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/templates_c/en_US/%%F2/F21/F21A46C1%%LineItem.tpl.php).https://lab.civicrm.org/dev/core/-/issues/4863contribution ThankYou.tpl.php notice errors on dmaster, contribution total am...2023-12-19T22:08:35ZJoeMurraycontribution ThankYou.tpl.php notice errors on dmaster, contribution total amount $0Scenario 1: On dmaster, with default value for mug premium ($12.50), on live Donation page, choose $50 donation, ask for mug, complete credit card info, no honoree, no title for donor, then on thank you page you get errors below.
Simpli...Scenario 1: On dmaster, with default value for mug premium ($12.50), on live Donation page, choose $50 donation, ask for mug, complete credit card info, no honoree, no title for donor, then on thank you page you get errors below.
Simplifying scenario 2: on dmaster Donate page, leave default $10 amount, no premium, fill in required fields for Billing Name and Address as shown, credit card info, then on thank you page get errors below. Note that Title field is not provided on page, and honoree sections not on page. Need to change template to make them optional is my guess.
![2023-12-15_18-00-19](/uploads/05ba7c9c528596b757c01845da3e03ff/2023-12-15_18-00-19.png)
BUG: in both cases, it shows total paid was $0.00.
![2023-12-15_18-09-17](/uploads/f263bd2a81e8f222c4a8672dec0ad49b/2023-12-15_18-09-17.png)
Warning: fopen(/srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/ConfigAndLog/CiviCRM.1.daaf15586b7efa7b235b62c7.log): Failed to open stream: Permission denied in Log_file->open() (line 216 of /srv/buildkit/build/dmaster/web/sites/all/modules/civicrm/vendor/pear/log/Log/file.php).
Warning: fopen(/srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/ConfigAndLog/CiviCRM.1.daaf15586b7efa7b235b62c7.log): Failed to open stream: Permission denied in Log_file->open() (line 216 of /srv/buildkit/build/dmaster/web/sites/all/modules/civicrm/vendor/pear/log/Log/file.php).
Warning: Undefined array key "honoreeProfileFields" in include() (line 232 of /srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/templates_c/en_US/%%0D/0D2/0D2EEFAF%%ThankYou.tpl.php).
Warning: Undefined array key "title" in include() (line 377 of /srv/buildkit/build/dmaster/.civibuild/private/default/civicrm/templates_c/en_US/%%0D/0D2/0D2EEFAF%%ThankYou.tpl.php).
![2023-12-15_17-58-12](/uploads/2f7129203c925d45366ad241efc25eac/2023-12-15_17-58-12.png)5.69.0https://lab.civicrm.org/dev/core/-/issues/4862Standalone: cannot update unauthenticated 'everyone' permissions2024-02-05T17:57:44ZRichStandalone: cannot update unauthenticated 'everyone' permissionsThe `CRM_Standaloneusers_BAO_Role::_checkAccess()` method won't let us update the everyone role.
We're supposed to not be allowed to *delete* the everyone role, but we should be able to update the permissions of it.The `CRM_Standaloneusers_BAO_Role::_checkAccess()` method won't let us update the everyone role.
We're supposed to not be allowed to *delete* the everyone role, but we should be able to update the permissions of it.RichRich