Development issueshttps://lab.civicrm.org/groups/dev/-/issues2023-12-08T23:38:04Zhttps://lab.civicrm.org/dev/core/-/issues/4760[PHP 8.2] Access to an undefined property in CRM_Contribute_Form_Contribution...2023-12-08T23:38:04Zjofranzfranz@systopia.de[PHP 8.2] Access to an undefined property in CRM_Contribute_Form_Contribution_ConfirmI tried to add the info to this report:
```
➜ civicrm-core (2b6d15a4629bff5922f35f33ce15e909ff633666) phpstan analyse -l 0 CRM/Contribute/Form/Contribution/Confirm.php
------ ----------------------------------------------------------...I tried to add the info to this report:
```
➜ civicrm-core (2b6d15a4629bff5922f35f33ce15e909ff633666) phpstan analyse -l 0 CRM/Contribute/Form/Contribution/Confirm.php
------ -------------------------------------------------------------------------------------------------------------------------------
Line CRM/Contribute/Form/Contribution/Confirm.php
------ -------------------------------------------------------------------------------------------------------------------------------
270 Access to an undefined property CRM_Contribute_Form_Contribution_Confirm::$_lineItem.
💡 Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property
489 Access to an undefined property CRM_Contribute_Form_Contribution_Confirm::$_lineItem.
💡 Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property
554 Access to an undefined property object::$_membershipBlock.
💡 Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property
704 Access to an undefined property CRM_Contribute_Form_Contribution_Confirm::$_membershipTypeValues.
💡 Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property
1485 Access to an undefined property CRM_Contribute_Form_Contribution_Confirm::$_lineItem.
💡 Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property
2290 Access to an undefined property CRM_Contribute_Form_Contribution_Confirm::$_lineItem.
💡 Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property
2301 Access to an undefined property CRM_Contribute_Form_Contribution_Confirm::$_lineItem.
💡 Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property
2478 Access to an undefined property CRM_Contribute_Form_Contribution_Confirm::$_lineItem.
💡 Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property
------ -------------------------------------------------------------------------------------------------------------------------------
```
Related: #4072https://lab.civicrm.org/dev/core/-/issues/4759Search Preferences -> Autocomplete Contact Search selections not respected2023-11-13T20:03:23ZalicefruminSearch Preferences -> Autocomplete Contact Search selections not respectedOverview
----------------------------------------
Search Preferences -> Autocomplete Contact Search selections not respected by quicksearch.
Reproduction steps
----------------------------------------
1. login as an admin
2. Go to CiviC...Overview
----------------------------------------
Search Preferences -> Autocomplete Contact Search selections not respected by quicksearch.
Reproduction steps
----------------------------------------
1. login as an admin
2. Go to CiviCRM Admin Menu -> Administer -> Customize Data and Screens -> Search Preferences
3. Update the "Autocomplete Contact Search" field to include "Postal Code"
4. Click "Save"
5. Clear Caches
6. Search for a contact with a postal code in the quicksearch box.
Current behaviour
----------------------------------------
Postal Code not included in quicksearch results even if the contact has one.
Expected behaviour
----------------------------------------
the postal code should be included in the quicksearch results if the contact has one
Environment information
----------------------------------------
I was able to recreate this on 5.66.2 and 5.69.alpha1https://lab.civicrm.org/dev/financial/-/issues/220With tax enabled Total Amount is confusing in online receipt and tax amount l...2023-11-15T18:37:43ZDaveDWith tax enabled Total Amount is confusing in online receipt and tax amount line is wrongIt used to show the amount before tax and the tax amount. But now it looks like this. There was $2 tax.
![untitled3](/uploads/2d19419c080ae6f6f009d1e6f7eff44d/untitled3.png)
This is the same as https://lab.civicrm.org/dev/financial/-/i...It used to show the amount before tax and the tax amount. But now it looks like this. There was $2 tax.
![untitled3](/uploads/2d19419c080ae6f6f009d1e6f7eff44d/untitled3.png)
This is the same as https://lab.civicrm.org/dev/financial/-/issues/206 just in the interim changes have caused the problem to shift.
Also the confirm and thankyou pages make no mention of the tax and there's now a php warning about a missing tax var on those pages.
![untitled7](/uploads/8fcb99238d074a7dd4a53ec000bf51b1/untitled7.png)
![untitled8](/uploads/ebb164e557d99a76bb0f90381b0525c9/untitled8.png)
One way to reproduce:
1. Turn on tax and invoicing. https://docs.civicrm.org/user/en/latest/contributions/sales-tax-and-vat/
* In my case I set up a non-deductible financial type called t-shirts and a corresponding sales tax account that has 5% tax.
2. Create a price set for it.
* There's one price field. I used type text/quantity. Field is required although that's not relevant just makes sense here. Financial type t-shirts.
3. Set up the dummy payment processor.
4. Create a contribution page with that processor and financial type t-shirts and use the price set. Set it to send a receipt.
5. Buy a t-shirt.5.68.0https://lab.civicrm.org/dev/core/-/issues/4758[PHP 8.0] Curly brace syntax for accessing array elements2023-11-08T16:24:07Zjofranzfranz@systopia.de[PHP 8.0] Curly brace syntax for accessing array elements```
FILE: civicrm-core/tools/extensions/org.civicrm.angularex/angularex.civix.php
-----------------------------------------------------------------------------------------------------------------------------------------------------------...```
FILE: civicrm-core/tools/extensions/org.civicrm.angularex/angularex.civix.php
--------------------------------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
--------------------------------------------------------------------------------------------------------------------------------------------------------------
247 | ERROR | [x] Curly brace syntax for accessing array elements and string offsets has been deprecated in PHP 7.4 and removed in PHP 8.0. Found: $entry{0}
--------------------------------------------------------------------------------------------------------------------------------------------------------------
PHPCBF CAN FIX THE 1 MARKED SNIFF VIOLATIONS AUTOMATICALLY
--------------------------------------------------------------------------------------------------------------------------------------------------------------
``5.69.0https://lab.civicrm.org/dev/core/-/issues/4757[PHP 8.2] Using ${var} in strings is deprecated2023-11-08T02:24:46Zjofranzfranz@systopia.de[PHP 8.2] Using ${var} in strings is deprecated```
FILE: civicrm-core/CRM/Profile/Selector/Listings.php
-------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------...```
FILE: civicrm-core/CRM/Profile/Selector/Listings.php
-------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
-------------------------------------------------------------------------------------------------------------
601 | WARNING | Using ${var} in strings is deprecated since PHP 8.2, use {$var} instead. Found: ${typeName}
-------------------------------------------------------------------------------------------------------------
```5.69.0https://lab.civicrm.org/dev/core/-/issues/4756CV crashes if LoginSecurity extension is enabled on Drupal8/9/102023-11-08T00:49:16ZufundoCV crashes if LoginSecurity extension is enabled on Drupal8/9/10Any cv call crashes if the [LoginSecurity](https://lab.civicrm.org/extensions/loginsecurity/-/issues) extension is enabled on D8+.
```
civicrm@c307847fd84a:/var/www/html$ cv -vvv vars:show
... [all looks good until] ...
[Bootstrap:no...Any cv call crashes if the [LoginSecurity](https://lab.civicrm.org/extensions/loginsecurity/-/issues) extension is enabled on D8+.
```
civicrm@c307847fd84a:/var/www/html$ cv -vvv vars:show
... [all looks good until] ...
[Bootstrap:notice] Call core bootstrap
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/html/web/core/lib/Drupal.php:169
Drupal::getContainer() at /var/www/html/web/core/lib/Drupal.php:267
Drupal::request() at /var/www/html/vendor/civicrm/civicrm-core/CRM/Utils/System/Drupal8.php:945
CRM_Utils_System_Drupal8->ipAddress() at /var/www/html/vendor/civicrm/civicrm-core/CRM/Utils/System.php:1292
CRM_Utils_System::ipAddress() at /var/www/html/web/modules/civicrm/ext/loginsecurity/CRM/Loginsecurity/BAO/LoginSecurityDevice.php:37
CRM_Loginsecurity_BAO_LoginSecurityDevice::logCurrentSession() at /var/www/html/web/modules/civicrm/ext/loginsecurity/loginsecurity.php:16
loginsecurity_civicrm_config() at /var/www/html/vendor/civicrm/civicrm-core/CRM/Utils/Hook.php:272
CRM_Utils_Hook->runHooks() at /var/www/html/vendor/civicrm/civicrm-core/CRM/Utils/Hook/DrupalBase.php:73
CRM_Utils_Hook_DrupalBase->invokeViaUF() at /var/www/html/vendor/civicrm/civicrm-core/Civi/Core/CiviEventDispatcher.php:310
Civi\Core\CiviEventDispatcher::delegateToUF() at /var/www/html/vendor/symfony/event-dispatcher/EventDispatcher.php:220
Symfony\Component\EventDispatcher\EventDispatcher->callListeners() at /var/www/html/vendor/symfony/event-dispatcher/EventDispatcher.php:56
Symfony\Component\EventDispatcher\EventDispatcher->dispatch() at /var/www/html/vendor/civicrm/civicrm-core/Civi/Core/CiviEventDispatcher.php:263
Civi\Core\CiviEventDispatcher->dispatch() at /var/www/html/vendor/civicrm/civicrm-core/CRM/Utils/Hook.php:168
CRM_Utils_Hook->invoke() at /var/www/html/vendor/civicrm/civicrm-core/CRM/Utils/Hook.php:1440
CRM_Utils_Hook::config() at /var/www/html/vendor/civicrm/civicrm-core/CRM/Core/Config.php:94
CRM_Core_Config::singleton() at phar:///usr/local/bin/cv/lib/src/Bootstrap.php:97
Civi\Cv\Bootstrap->boot() at phar:///usr/local/bin/cv/lib/src/Util/BootTrait.php:73
Civi\Cv\Command\ShowCommand->_boot_full() at phar:///usr/local/bin/cv/lib/src/Util/BootTrait.php:47
Civi\Cv\Command\ShowCommand->boot() at phar:///usr/local/bin/cv/src/Command/ShowCommand.php:21
Civi\Cv\Command\ShowCommand->execute() at phar:///usr/local/bin/cv/vendor/symfony/console/Command/Command.php:127
Cvphar\Symfony\Component\Console\Command\Command->run() at phar:///usr/local/bin/cv/vendor/symfony/console/Application.php:637
Cvphar\Symfony\Component\Console\Application->doRunCommand() at phar:///usr/local/bin/cv/vendor/symfony/console/Application.php:190
Cvphar\Symfony\Component\Console\Application->doRun() at phar:///usr/local/bin/cv/src/Application.php:67
Civi\Cv\Application->doRun() at phar:///usr/local/bin/cv/vendor/symfony/console/Application.php:101
Cvphar\Symfony\Component\Console\Application->run() at phar:///usr/local/bin/cv/src/Application.php:33
Civi\Cv\Application::main() at phar:///usr/local/bin/cv/bin/cv:28
require() at /usr/local/bin/cv:14
```
It looks to me like the extension is trying to call the `CRM_Utils_System::ipAddress()` function before the Drupal container is ready.
And that something like https://lab.civicrm.org/dev/core/-/commit/5e383d9d992335f2f6e743c3e1f3d0ce1b175ab9 should fix it?5.69.0https://lab.civicrm.org/dev/core/-/issues/4755Activity type label has gone missing when editing case activity2023-11-08T00:54:22ZDaveDActivity type label has gone missing when editing case activityIt's blank and you get a warning about Undefined array key "label"
Probably https://github.com/civicrm/civicrm-core/pull/27498It's blank and you get a warning about Undefined array key "label"
Probably https://github.com/civicrm/civicrm-core/pull/274985.68.0https://lab.civicrm.org/dev/core/-/issues/4754Upgrading to 5.66+ still has old copy of crm.menubar.js2023-11-15T01:19:55ZjonathandhnUpgrading to 5.66+ still has old copy of crm.menubar.jscrm.menubar.js l.293 return a console error for ```TypeError: undefined is not an object (evaluating 'result.values.length')``` when text is typed on the search box and live search from the menu bar stopped working.
```
if (result.v...crm.menubar.js l.293 return a console error for ```TypeError: undefined is not an object (evaluating 'result.values.length')``` when text is typed on the search box and live search from the menu bar stopped working.
```
if (result.values.length > 0) {
$('#crm-qsearch-input').autocomplete('widget').menu('option', 'disabled', false);
$.each(result.values, function(k, v) {
ret.push({value: v.id, label: v.data});
});
}
```
Civicrm 5.66.0, then 5.66.1, 5.66.2 and 5.67.0, Drupal 10.1.6 PHP 8.1.24, MariaDB 10.6.15https://lab.civicrm.org/dev/core/-/issues/4753Afform - Custom fields of type YesNo (boolean): Defaults not displayed and ch...2024-03-10T20:37:04Zmattwiremjw@mjwconsult.co.ukAfform - Custom fields of type YesNo (boolean): Defaults not displayed and changes not savedTo reproduce set up a simple submission form:
1. Add Individual
2. Add "is_deceased" field (a Yes / No radio field) (optional)
3. Add a contact custom field of type "YesNo" (optional)
Create a contact and set the contact is_deceased = t...To reproduce set up a simple submission form:
1. Add Individual
2. Add "is_deceased" field (a Yes / No radio field) (optional)
3. Add a contact custom field of type "YesNo" (optional)
Create a contact and set the contact is_deceased = true and custom field "YesNo" = true
Load the form with URL parameter eg. #?Individual1=169 to load that contact
See that is_deceased field is set to Yes but the customfield is not set.
Now set the customfield to "No" and submit the form.
Reload the form and see that it did not save the value of the custom field :-(
So two issues:
1. Custom field value is not displayed: It is retrieved via prefill as a bool but the field is added with radios that have values 0,1.
2. Custom field value is not saved: It is converted to int (0 or 1) once submitted whether submitted as "false" or 0.
I've been round and round trying to work out how this should be fixed but have hit a dead end!
The display issue can be "fixed" by either not passing the options to the form or by passing them with true/false instead of 0,1. But the value still doesn't save.
@colemanw Any ideas?https://lab.civicrm.org/dev/core/-/issues/4752Notice: Undefined index: weight in CRM_Core_Action::{closure}()2023-11-10T13:56:37ZRobert J. LangNotice: Undefined index: weight in CRM_Core_Action::{closure}()Overview
----------------------------------------
The dblog is filling up with errors with this message:
Notice: Undefined index: weight in CRM_Core_Action::{closure}() (line 317 of /mysite/modules/contrib/civicrm/CRM/Core/Action.php).
...Overview
----------------------------------------
The dblog is filling up with errors with this message:
Notice: Undefined index: weight in CRM_Core_Action::{closure}() (line 317 of /mysite/modules/contrib/civicrm/CRM/Core/Action.php).
Reproduction steps
----------------------------------------
I can reproduce this on my site by visiting any contact tab (not just 1195):
https://mysite.org/civicrm/contact/view?reset=1&cid=1195&selectedChild=mailing
Current behaviour
----------------------------------------
The dblog fills up with something like 20 (the number varies) instances of a PHP notice:
Message: Notice: Undefined index: weight in CRM_Core_Action::{closure}() (line 317 of /mysite/modules/contrib/civicrm/CRM/Core/Action.php).
Location: https://mysite.org/civicrm/ajax/contactmailing?contact_id=1195&draw=1&columns%5B0%5D%5Bdata%5D=subject&columns%5B0%5D%5Bname%5D=&columns%5B0%5D%5Bsearchable%5D=true&columns%5B0%5D%5Borderable%5D=true&columns%5B0%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B0%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B1%5D%5Bdata%5D=creator_name&columns%5B1%5D%5Bname%5D=&columns%5B1%5D%5Bsearchable%5D=true&columns%5B1%5D%5Borderable%5D=true&columns%5B1%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B1%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B2%5D%5Bdata%5D=recipients&columns%5B2%5D%5Bname%5D=&columns%5B2%5D%5Bsearchable%5D=true&columns%5B2%5D%5Borderable%5D=false&columns%5B2%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B2%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B3%5D%5Bdata%5D=start_date&columns%5B3%5D%5Bname%5D=&columns%5B3%5D%5Bsearchable%5D=true&columns%5B3%5D%5Borderable%5D=true&columns%5B3%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B3%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B4%5D%5Bdata%5D=openstats&columns%5B4%5D%5Bname%5D=&columns%5B4%5D%5Bsearchable%5D=true&columns%5B4%5D%5Borderable%5D=false&columns%5B4%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B4%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B5%5D%5Bdata%5D=links&columns%5B5%5D%5Bname%5D=&columns%5B5%5D%5Bsearchable%5D=true&columns%5B5%5D%5Borderable%5D=false&columns%5B5%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B5%5D%5Bsearch%5D%5Bregex%5D=false&start=0&length=25&search%5Bvalue%5D=&search%5Bregex%5D=false&_=1699213951856
Referrer: https://mysite.org/civicrm/contact/view?reset=1&cid=1195&selectedChild=mailing
Expected behaviour
----------------------------------------
No dblog entries.
Environment information
----------------------------------------
* __Browser:__ Safari (Desktop)
* __CiviCRM:__ 5.67.0
* __PHP:__ 7.4.31
* __CMS:__ Backdrop 1.26.1
Comments
----------------------------------------
The relevant code is:
```
usort($seqLinks, static function ($a, $b) {
return (int) ((int) ($a['weight']) > (int) ($b['weight']));
});
```
Seems like it should perhaps be
```
usort($seqLinks, static function ($a, $b) {
return (int) ((int) ($a['weight'] ?? 0) > (int) ($b['weight'] ?? 0));
});
```5.67.1https://lab.civicrm.org/dev/core/-/issues/4751Call to civicrm_api3_create_error from civicrm/Civi/API/Kernel.php fails2023-11-10T13:53:14ZchriscantCall to civicrm_api3_create_error from civicrm/Civi/API/Kernel.php failsAn overnight geocode Scheduled Job started generating an error on 2023-11-03 because the Parameters had a blank line at the end. I'd updated to CiviCRM 5.67.0 the day before.
```plaintext
Parameters raw (from db settings):
geocoding=1
...An overnight geocode Scheduled Job started generating an error on 2023-11-03 because the Parameters had a blank line at the end. I'd updated to CiviCRM 5.67.0 the day before.
```plaintext
Parameters raw (from db settings):
geocoding=1
parse=0
```
Parameters parsed (and passed to API method): `a:0:{}`
When previously the parameters passed to the API `a:3:{s:7:"version";i:3;s:9:"geocoding";s:1:"1";s:5:"parse";s:1:"0";}`
I fixed that problem by removing the blank line.
However, the error was being reported through civicrm/Civi/API/Kernel.php line 407 it seems, ie here: https://github.com/civicrm/civicrm-core/blob/master/Civi/API/Kernel.php#L407
This threw an exception as shown below.
I fixed that problem adding this line before
`require_once "api/v3/utils.php";`
Hope this helps, Chris
When seeking help with this issue, you may be asked for some of the following information:
```plaintext
WordPress version 6.3.2
Active theme: Avada (version 7.11.2)
Current plugin: CiviCRM (version 5.67.0) PHP version 8.1.25
Error Details
=============
An error of type E_ERROR was caused in line 407 of the file /var/.../wp-content/plugins/civicrm/civicrm/Civi/API/Kernel.php. Error message: Uncaught Error: Call to undefined function civicrm_api3_create_error() in /var/.../wp-content/plugins/civicrm/civicrm/Civi/API/Kernel.php:407
Stack trace:
#0 /var/.../wp-content/plugins/civicrm/civicrm/Civi/API/Kernel.php(348): Civi\API\Kernel->createError()
#1 /var/.../wp-content/plugins/civicrm/civicrm/Civi/API/Kernel.php(88): Civi\API\Kernel->formatApiException()
#2 /var/.../wp-content/plugins/civicrm/civicrm/api/api.php(28): Civi\API\Kernel->runSafe()
#3 /var/.../wp-content/plugins/civicrm/civicrm/CRM/Core/JobManager.php(125): civicrm_api()
#4 /var/.../wp-content/plugins/civicrm/civicrm/CRM/Core/JobManager.php(92): CRM_Core_JobManager->executeJob()
#5 /var/.../wp-content/plugins/civicrm/civicrm/CRM/Admin/Form/Job.php(218): CRM_Core_JobManager->executeJobById()
#6 /var/.../wp-content/plugins/civicrm/civicrm/CRM/Core/Form.php(614): CRM_Admin_Form_Job->postProcess()
#7 /var/.../wp-content/plugins/civicrm/civicrm/CRM/Core/QuickForm/Action/Submit.php(56): CRM_Core_Form->mainProcess()
#8 /var/.../wp-content/plugins/civicrm/civicrm/packages/HTML/QuickForm/Controller.php(203): CRM_Core_QuickForm_Action_Submit->perform()
#9 /var/.../wp-content/plugins/civicrm/civicrm/packages/HTML/QuickForm/Page.php(103): HTML_QuickForm_Controller->handle()
#10 /var/.../wp-content/plugins/civicrm/civicrm/CRM/Core/Controller.php(355): HTML_QuickForm_Page->handle()
#11 /var/.../wp-content/plugins/civicrm/civicrm/CRM/Core/Page/Basic.php(364): CRM_Core_Controller->run()
#12 /var/.../wp-content/plugins/civicrm/civicrm/CRM/Core/Page/Basic.php(170): CRM_Core_Page_Basic->edit()
#13 /var/.../wp-content/plugins/civicrm/civicrm/CRM/Admin/Page/Job.php(140): CRM_Core_Page_Basic->run()
#14 /var/.../wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(322): CRM_Admin_Page_Job->run()
#15 /var/.../wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(69): CRM_Core_Invoke::runItem()
#16 /var/.../wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(36): CRM_Core_Invoke::_invoke()
#17 /var/.../wp-content/plugins/civicrm/civicrm.php(1199): CRM_Core_Invoke::invoke()
#18 /var/.../wp-includes/class-wp-hook.php(310): CiviCRM_For_WordPress->invoke()
#19 /var/.../wp-includes/class-wp-hook.php(334): WP_Hook->apply_filters()
#20 /var/.../wp-includes/plugin.php(517): WP_Hook->do_action()
#21 /var/.../wp-admin/admin.php(259): do_action()
#22 {main}
```5.67.1https://lab.civicrm.org/dev/core/-/issues/4750clear cache does not reliably remove durable temp tables2023-11-04T16:45:03Zlcdwebclear cache does not reliably remove durable temp tablesDurable (civicrm_tmp_d%) temp tables are intended for use when the table must be used in multiple transactions and therefore cannot be a true MySQL temp table. These should be cleared out when the clean cache function is triggered from t...Durable (civicrm_tmp_d%) temp tables are intended for use when the table must be used in multiple transactions and therefore cannot be a true MySQL temp table. These should be cleared out when the clean cache function is triggered from the UI, scheduled jobs, or CLI -- with a few exceptions for those created within the last two days or that are tied to the civicrm_user_job table. Currently there is faulty logic that causes them to persist much longer than necessary, thus cluttering the DB.lcdweblcdwebhttps://lab.civicrm.org/dev/core/-/issues/4749PHP8 Fatal error when adding files on Case custom field2023-11-08T20:40:37ZPradeep Nayakpradpnayak@gmail.comPHP8 Fatal error when adding files on Case custom fieldReplicated on https://dmaster.demo.civicrm.org/civicrm/case/cd/edit?cgcount=1&action=update&reset=1&type=Case&entityID=1&groupID=4&cid=160&subType=1
Error:
TypeError: strtolower(): Argument #1 ($string) must be of type string, array giv...Replicated on https://dmaster.demo.civicrm.org/civicrm/case/cd/edit?cgcount=1&action=update&reset=1&type=Case&entityID=1&groupID=4&cid=160&subType=1
Error:
TypeError: strtolower(): Argument #1 ($string) must be of type string, array given in strtolower() (line 1423 of /srv/buildkit/build/dmaster/web/sites/all/modules/civicrm/CRM/Core/DAO.php).
Steps to replicate:
1. Create custom sets for case, add file type custom field.
2. Create a case
3. On manage case screen, click on Edit button under custom group set, and try to upload a file
File is uploaded but system throws fatal error.
Backtrace:
````
#0 /var/sites//drupal10/vendor/civicrm/civicrm-core/CRM/Core/DAO.php(1418): CRM_Core_Error::backtrace()
#1 /var/sites//drupal10/vendor/civicrm/civicrm-core/CRM/Core/BAO/CustomField.php(1323): CRM_Core_DAO::getFieldValue("CRM_Core_DAO_File", (Array:2), "id", "uri")
#2 /var/sites//drupal10/vendor/civicrm/civicrm-core/CRM/Core/BAO/CustomField.php(1193): CRM_Core_BAO_CustomField::formatDisplayValue((Array:2), (Array:45), 100025185)
#3 /var/sites//drupal10/vendor/civicrm/civicrm-core/api/v3/CustomValue.php(425): CRM_Core_BAO_CustomField::displayValue((Array:2), Object(CRM_Core_BAO_CustomField), 100025185)
#4 /var/sites//drupal10/vendor/civicrm/civicrm-core/Civi/API/Provider/MagicFunctionProvider.php(89): civicrm_api3_custom_value_getdisplayvalue((Array:4))
#5 /var/sites//drupal10/vendor/civicrm/civicrm-core/Civi/API/Kernel.php(158): Civi\API\Provider\MagicFunctionProvider->invoke((Array:8))
#6 /var/sites//drupal10/vendor/civicrm/civicrm-core/Civi/API/Kernel.php(81): Civi\API\Kernel->runRequest((Array:8))
#7 /var/sites//drupal10/vendor/civicrm/civicrm-core/api/api.php(133): Civi\API\Kernel->runSafe("CustomValue", "getdisplayvalue", (Array:4))
#8 /var/sites//drupal10/vendor/civicrm/civicrm-core/CRM/Case/Form/CustomData.php(184): civicrm_api3("CustomValue", "getdisplayvalue", (Array:4))
#9 /var/sites//drupal10/vendor/civicrm/civicrm-core/CRM/Case/Form/CustomData.php(127): CRM_Case_Form_CustomData->formatCustomDataChangesForDetail((Array:20))
#10 /var/sites//drupal10/vendor/civicrm/civicrm-core/CRM/Core/Form.php(624): CRM_Case_Form_CustomData->postProcess()
#11 /var/sites//drupal10/vendor/civicrm/civicrm-core/CRM/Core/QuickForm/Action/Upload.php(153): CRM_Core_Form->mainProcess()
#12 /var/sites//drupal10/vendor/civicrm/civicrm-core/CRM/Core/QuickForm/Action/Upload.php(120): CRM_Core_QuickForm_Action_Upload->realPerform(Object(CRM_Case_Form_CustomData), "upload")
#13 /var/sites//drupal10/vendor/civicrm/civicrm-packages/HTML/QuickForm/Controller.php(203): CRM_Core_QuickForm_Action_Upload->perform(Object(CRM_Case_Form_CustomData), "upload")
#14 /var/sites//drupal10/vendor/civicrm/civicrm-packages/HTML/QuickForm/Page.php(103): HTML_QuickForm_Controller->handle(Object(CRM_Case_Form_CustomData), "upload")
#15 /var/sites//drupal10/vendor/civicrm/civicrm-core/CRM/Core/Controller.php(355): HTML_QuickForm_Page->handle("upload")
#16 /var/sites//drupal10/vendor/civicrm/civicrm-core/CRM/Utils/Wrapper.php(98): CRM_Core_Controller->run()
#17 /var/sites//drupal10/vendor/civicrm/civicrm-core/CRM/Core/Invoke.php(292): CRM_Utils_Wrapper->run("CRM_Case_Form_CustomData", "Case Custom Set", (Array:0))
#18 /var/sites//drupal10/vendor/civicrm/civicrm-core/CRM/Core/Invoke.php(69): CRM_Core_Invoke::runItem((Array:18))
#19 /var/sites//drupal10/vendor/civicrm/civicrm-core/CRM/Core/Invoke.php(36): CRM_Core_Invoke::_invoke((Array:4))
#20 /var/sites//drupal10/web/modules/contrib/civicrm/src/Civicrm.php(88): CRM_Core_Invoke::invoke((Array:4))
#21 /var/sites//drupal10/web/modules/contrib/civicrm/src/Controller/CivicrmController.php(83): Drupal\civicrm\Civicrm->invoke((Array:4))
#22 [internal function](): Drupal\civicrm\Controller\CivicrmController->main((Array:4), "")
#23 /var/sites//drupal10/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(123): call_user_func_array((Array:2), (Array:2))
#24 /var/sites//drupal10/web/core/lib/Drupal/Core/Render/Renderer.php(592): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
#25 /var/sites//drupal10/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(124): Drupal\Core\Render\Renderer->executeInRenderContext(Object(Drupal\Core\Render\RenderContext), Object(Closure))
#26 /var/sites//drupal10/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext((Array:2), (Array:2))
#27 /var/sites//drupal10/vendor/symfony/http-kernel/HttpKernel.php(182): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
#28 /var/sites//drupal10/vendor/symfony/http-kernel/HttpKernel.php(76): Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object(Symfony\Component\HttpFoundation\Request), 1)
#29 /var/sites//drupal10/web/core/lib/Drupal/Core/StackMiddleware/Session.php(58): Symfony\Component\HttpKernel\HttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, TRUE)
#30 /var/sites//drupal10/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(48): Drupal\Core\StackMiddleware\Session->handle(Object(Symfony\Component\HttpFoundation\Request), 1, TRUE)
#31 /var/sites//drupal10/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(106): Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object(Symfony\Component\HttpFoundation\Request), 1, TRUE)
#32 /var/sites//drupal10/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(85): Drupal\page_cache\StackMiddleware\PageCache->pass(Object(Symfony\Component\HttpFoundation\Request), 1, TRUE)
#33 /var/sites//drupal10/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(48): Drupal\page_cache\StackMiddleware\PageCache->handle(Object(Symfony\Component\HttpFoundation\Request), 1, TRUE)
#34 /var/sites//drupal10/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(51): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, TRUE)
#35 /var/sites//drupal10/web/core/lib/Drupal/Core/StackMiddleware/StackedHttpKernel.php(51): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, TRUE)
#36 /var/sites//drupal10/web/core/lib/Drupal/Core/DrupalKernel.php(704): Drupal\Core\StackMiddleware\StackedHttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, TRUE)
#37 /var/sites//drupal10/web/index.php(19): Drupal\Core\DrupalKernel->handle(Object(Symfony\Component\HttpFoundation\Request))
#38 {main
````
API params for getdisplayvalue
````
Array ( [custom_field_id] => 30 [entity_id] => 100025185 [custom_field_value] => Array ( [id] => 201 [data] => ) )
````https://lab.civicrm.org/dev/core/-/issues/4748PHP 8 - Fatal error in CRM_Contribution_Form_ContributionCharts, passes subst...2023-11-08T20:40:11ZFrancis (Agileware)PHP 8 - Fatal error in CRM_Contribution_Form_ContributionCharts, passes substring instead of int to mktime() in year fieldOverview
----------------------------------------
Contribution Dashboard crashes due to incorrectly passed arguments in the charts implementation
Reproduction steps
----------------------------------------
1. Use PHP version 8.1
2. Have...Overview
----------------------------------------
Contribution Dashboard crashes due to incorrectly passed arguments in the charts implementation
Reproduction steps
----------------------------------------
1. Use PHP version 8.1
2. Have a Contribution with a receive data before Year 1000 (Yes this will be bogus, but data is not always clean)
3. Go to Contributions / Dashboard
Current behaviour
----------------------------------------
CiviCRM site crashes with:
```
Uncaught TypeError: mktime(): Argument #6 ($year) must be of type ?int, string given in /path/to/civicrm/CRM/Contribute/Form/ContributionCharts.php:176
```
Expected behaviour
----------------------------------------
Contributions dashboard is loaded
Environment information
----------------------------------------
* __CiviCRM:__ Master, 5.66.2, 5.67
* __PHP:__ 8.1.25
* __CMS:__ WordPress 6.3.3
Comments
----------------------------------------
Was unable to reproduce this on dmaster, reason being that I don't know *how* the invalid date got in where I found the bug.https://lab.civicrm.org/dev/user-interface/-/issues/63Drop support for Bootstrap 3 (EOL'd) and upgrade to the latest Bootstrap version2023-11-08T20:39:35Zjustinfreeman (Agileware)Drop support for Bootstrap 3 (EOL'd) and upgrade to the latest Bootstrap versionDrop support for Bootstrap 3 and upgrade to the latest Bootstrap version.
Because Bootstrap 3 was released 10 years ago. CiviCRM should not be shipping with known out of date software libraries.
Bootstrap 3 is End-of-life as of 2019-07...Drop support for Bootstrap 3 and upgrade to the latest Bootstrap version.
Because Bootstrap 3 was released 10 years ago. CiviCRM should not be shipping with known out of date software libraries.
Bootstrap 3 is End-of-life as of 2019-07-24, reference https://github.com/twbs/release#release-schedulehttps://lab.civicrm.org/dev/core/-/issues/4747testRegexpOperators fails on `max`2023-11-04T21:39:46ZtottentestRegexpOperators fails on `max`Starting in 5.68, the test `api\v4\Action\ContactGetTest::testRegexpOperators` appears to be failing consistently on `max` environment (php81 + mysql80).
* Example: https://test.civicrm.org/job/CiviCRM-Core-Matrix/BKPROF=max,CIVIVER=mas...Starting in 5.68, the test `api\v4\Action\ContactGetTest::testRegexpOperators` appears to be failing consistently on `max` environment (php81 + mysql80).
* Example: https://test.civicrm.org/job/CiviCRM-Core-Matrix/BKPROF=max,CIVIVER=master,SUITES=phpunit-api4,label=bknix-tmp/13173/testReport/(root)/api_v4_Action_ContactGetTest/testRegexpOperators/
* List: https://test.civicrm.org/job/CiviCRM-Core-Matrix/BKPROF=max,CIVIVER=master,SUITES=phpunit-api4,label=bknix-tmp/
(*Since this would've gotten through PR review, it probably works on `php81`+`mysql57`. This smells like a mysqld compatibility issue.*)
cc @colemanwhttps://lab.civicrm.org/dev/core/-/issues/4746Standalone - Syntax error2023-11-04T21:40:17ZtottenStandalone - Syntax errorThis appears to be a consistent test-regression circa 5.68.alpha:
* List: https://test.civicrm.org/job/CiviCRM-E2E-Matrix/BKPROF=min,BLDTYPE=standalone-clean,CIVIVER=master,label=bknix-tmp/
* Example: https://test.civicrm.org/job/CiviCR...This appears to be a consistent test-regression circa 5.68.alpha:
* List: https://test.civicrm.org/job/CiviCRM-E2E-Matrix/BKPROF=min,BLDTYPE=standalone-clean,CIVIVER=master,label=bknix-tmp/
* Example: https://test.civicrm.org/job/CiviCRM-E2E-Matrix/BKPROF=min,BLDTYPE=standalone-clean,CIVIVER=master,label=bknix-tmp/6857/console
The test-log shows a PHP fatal:
```
In PasswordReset.php line 23:
[ParseError]
syntax error, unexpected 'string' (T_STRING), expecting function (T_FUNCTIO
N) or const (T_CONST)
```RichRichhttps://lab.civicrm.org/dev/core/-/issues/4745Joomla: Fails to download extension feed2023-11-09T23:56:48ZtottenJoomla: Fails to download extension feedOverview
----------------------------------------
There appears to be a Guzzle conflict when fetching the extension feed on Joomla.
Reproduction steps
----------------------------------------
1. Install CiviCRM on Joomla
1. Navigate to...Overview
----------------------------------------
There appears to be a Guzzle conflict when fetching the extension feed on Joomla.
Reproduction steps
----------------------------------------
1. Install CiviCRM on Joomla
1. Navigate to dashboard
Current behaviour
----------------------------------------
The first pageload fails with:
![Screen_Shot_2023-11-01_at_4.20.15_PM](/uploads/bfab953fd770a8c09af0658b11529f04/Screen_Shot_2023-11-01_at_4.20.15_PM.png)
The NACK is cached for a while, so you won't immediately see the problem again. But we should expect it to recur.
Expected behaviour
----------------------------------------
No crash.
Environment information
----------------------------------------
The "hydra sites" (https://test.civicrm.org/view/Sites/job/hydra-sites/) are clean CMS installations. (They have the Civi source code preloaded -- but the installer hasn't run.) The error was observed on the hydra site for Joomla with CiviCRM `5.67.beta2` circa Nov 1, 2023.
* __Browser:__ Firefox
* __CiviCRM:__ 5.67.beta2
* __PHP:__ 7.4
* __CMS:__ Joomla
* __Database:__ 5.7
* __Web Server:__ Apachehttps://lab.civicrm.org/dev/financial/-/issues/219the Price Set labels are showing html2023-11-02T00:23:16ZJoeMurraythe Price Set labels are showing htmlDmaster issue reported by @petednz at https://chat.civicrm.org/civicrm/pl/r95fm7gwqtnddc8umph8hqrtrh
![image](/uploads/691ef07d945339396267b24937e190c7/image.png)Dmaster issue reported by @petednz at https://chat.civicrm.org/civicrm/pl/r95fm7gwqtnddc8umph8hqrtrh
![image](/uploads/691ef07d945339396267b24937e190c7/image.png)5.68.0eileeneileenhttps://lab.civicrm.org/dev/core/-/issues/4742[PHP 8.1] CRM_Admin_Form_Generic warnings2023-10-31T20:38:36Zjofranzfranz@systopia.de[PHP 8.1] CRM_Admin_Form_Generic warnings## Having
- CiviCRM 5.66.2
- Drupal 10.1.5
- PHP 8.1
## Visiting
- `.../admin/config/development/logging` to enable logs in UI
- `.../civicrm/admin/setting/theisland`
## Expecting
No erros
## Seeing
```
Warning: Undefined array key ...## Having
- CiviCRM 5.66.2
- Drupal 10.1.5
- PHP 8.1
## Visiting
- `.../admin/config/development/logging` to enable logs in UI
- `.../civicrm/admin/setting/theisland`
## Expecting
No erros
## Seeing
```
Warning: Undefined array key "template" in include() (line 5 of sites/default/files/civicrm/templates_c/de_DE/%%0B/0B9/0B956D8A%%Field.tpl.php).
Warning: Undefined array key "help" in include() (line 14 of sites/default/files/civicrm/templates_c/de_DE/%%0B/0B9/0B956D8A%%Field.tpl.php).
Warning: Trying to access array offset on value of type null in include() (line 14 of sites/default/files/civicrm/templates_c/de_DE/%%0B/0B9/0B956D8A%%Field.tpl.php).
Warning: Undefined array key "pre_html_text" in include() (line 23 of sites/default/files/civicrm/templates_c/de_DE/%%0B/0B9/0B956D8A%%Field.tpl.php).
Warning: Undefined array key "post_html_text" in include() (line 26 of sites/default/files/civicrm/templates_c/de_DE/%%0B/0B9/0B956D8A%%Field.tpl.php).
Warning: Undefined array key "documentation_link" in include() (line 30 of sites/default/files/civicrm/templates_c/de_DE/%%0B/0B9/0B956D8A%%Field.tpl.php).
Warning: Trying to access array offset on value of type null in include() (line 30 of sites/default/files/civicrm/templates_c/de_DE/%%0B/0B9/0B956D8A%%Field.tpl.php).
```
---
_internal ref 23127_