civicrm-core.git
23 months agoFix import falling over when a note is included
Eileen McNaughton [Thu, 7 Jul 2022 22:21:46 +0000 (10:21 +1200)]
Fix import falling over when a note is included

23 months agoMerge pull request #23084 from pradpnayak/paypalipnchangemaount
Eileen McNaughton [Thu, 7 Jul 2022 05:05:27 +0000 (17:05 +1200)]
Merge pull request #23084 from pradpnayak/paypalipnchangemaount

Subscription Amount change not respected in Paypal

23 months agoMerge pull request #23958 from civicrm/5.51
Seamus Lee [Thu, 7 Jul 2022 04:14:25 +0000 (14:14 +1000)]
Merge pull request #23958 from civicrm/5.51

5.51

23 months agoMerge pull request #23956 from agh1/5.51.0-releasenotes-final
Seamus Lee [Thu, 7 Jul 2022 01:42:59 +0000 (11:42 +1000)]
Merge pull request #23956 from agh1/5.51.0-releasenotes-final

5.51.0 release notes final changes

23 months agoMerge pull request #23933 from eileenmcnaughton/require
colemanw [Wed, 6 Jul 2022 23:02:23 +0000 (19:02 -0400)]
Merge pull request #23933 from eileenmcnaughton/require

Import fix - if there are no required fields validateRequiredFields should 'pass'

23 months agoMerge pull request #23934 from eileenmcnaughton/url_tokens
colemanw [Wed, 6 Jul 2022 22:59:52 +0000 (18:59 -0400)]
Merge pull request #23934 from eileenmcnaughton/url_tokens

dev/core#3713 Use front-end urls for event url tokens

23 months agoMerge pull request #23953 from eileenmcnaughton/imp_job
colemanw [Wed, 6 Jul 2022 22:56:36 +0000 (18:56 -0400)]
Merge pull request #23953 from eileenmcnaughton/imp_job

dev/core#3719 fix inconistent handling of job_type:label

23 months agoMerge pull request #23947 from totten/master-php81-global
Tim Otten [Wed, 6 Jul 2022 21:01:29 +0000 (14:01 -0700)]
Merge pull request #23947 from totten/master-php81-global

dev/core#3181 - Resolver - Compatibility fix for GLOBALS in PHP 8.1

23 months ago5.51.0 release notes: added late changes
Andie Hunt [Wed, 6 Jul 2022 19:47:53 +0000 (15:47 -0400)]
5.51.0 release notes: added late changes

23 months agoAdd release-notes/5.50.4.md
Tim Otten [Mon, 27 Jun 2022 22:35:00 +0000 (15:35 -0700)]
Add release-notes/5.50.4.md

23 months agoAdd release-notes/5.50.3.md
Tim Otten [Fri, 17 Jun 2022 06:00:57 +0000 (23:00 -0700)]
Add release-notes/5.50.3.md

23 months agoFix typo in version of Guzzle
tschuettler [Wed, 15 Jun 2022 07:36:07 +0000 (09:36 +0200)]
Fix typo in version of Guzzle

23 months agoAdd release-notes/5.50.2.md
Tim Otten [Tue, 14 Jun 2022 21:22:48 +0000 (14:22 -0700)]
Add release-notes/5.50.2.md

23 months agoAdd release-notes/5.50.1.md
Tim Otten [Fri, 3 Jun 2022 04:51:42 +0000 (21:51 -0700)]
Add release-notes/5.50.1.md

23 months agoMerge pull request #23945 from eileenmcnaughton/map
Yashodha Chaku [Wed, 6 Jul 2022 15:22:19 +0000 (20:52 +0530)]
Merge pull request #23945 from eileenmcnaughton/map

Enotice fix

23 months agoMerge pull request #23346 from mattwire/totaltaxamount
Matthew Wire [Wed, 6 Jul 2022 08:58:31 +0000 (09:58 +0100)]
Merge pull request #23346 from mattwire/totaltaxamount

Fix calculation and assignment of taxAmount on contribution page confirmation

23 months agodev/core#3719 fix inconistent handling of job_type:label
Eileen McNaughton [Wed, 6 Jul 2022 07:57:21 +0000 (19:57 +1200)]
dev/core#3719 fix inconistent handling of job_type:label

23 months agoMerge pull request #23951 from civicrm/5.51
Eileen McNaughton [Wed, 6 Jul 2022 07:42:24 +0000 (19:42 +1200)]
Merge pull request #23951 from civicrm/5.51

5.51 to master

23 months agoMerge pull request #23949 from alifrumin/rn5.51
Eileen McNaughton [Wed, 6 Jul 2022 07:23:24 +0000 (19:23 +1200)]
Merge pull request #23949 from alifrumin/rn5.51

[NFC] 5.51 Release Notes - first pass

23 months ago[NFC] 5.51 release notes
Alice Frumin [Sat, 2 Jul 2022 00:20:39 +0000 (20:20 -0400)]
[NFC] 5.51 release notes

23 months agodev/core#3181 - Resolver - Compatibility fix for GLOBALS in PHP 8.1
Tim Otten [Tue, 5 Jul 2022 23:33:17 +0000 (16:33 -0700)]
dev/core#3181 - Resolver - Compatibility fix for GLOBALS in PHP 8.1

23 months agoCRM_Utils_Array - All `pathGet()`-like methods will accept empty-path
Tim Otten [Tue, 5 Jul 2022 23:23:36 +0000 (16:23 -0700)]
CRM_Utils_Array - All `pathGet()`-like methods will accept empty-path

These two are equivalent:

  (A) $data['sub1']['sub2']['sub3']
  (B) CRM_Utils_Array::pathGet($data, ['sub1', 'sub2', 'sub3'])

But what if the list of subpaths is empty -- ie you're accessing the top-level item?

  (A) $data
  (B) CRM_Utils_Array::pathGet($data, [])

It worked correctly on `pathGet()`, but accessing the top-level using a
related methods (eg `pathSet()`) would generate a PHP error.

This commit ensures that related methods can be used to check/update the
top-level item (ie path===[]).

Note that there is some decent test-coverage already for the regular
scenarios (eg `testGetSetPathParts()`).

23 months agoEnotice fix
Eileen McNaughton [Tue, 5 Jul 2022 20:46:05 +0000 (08:46 +1200)]
Enotice fix

23 months agoMerge pull request #23942 from tschuettler/3717-sort-mapping-page
Eileen McNaughton [Tue, 5 Jul 2022 20:44:00 +0000 (08:44 +1200)]
Merge pull request #23942 from tschuettler/3717-sort-mapping-page

dev/core#3717 - Fix sorting by mapping type

23 months agoMerge pull request #23931 from eileenmcnaughton/repeat_pledge
Matthew Wire [Tue, 5 Jul 2022 19:29:00 +0000 (20:29 +0100)]
Merge pull request #23931 from eileenmcnaughton/repeat_pledge

RepeatTransaction - separate out repeat pledge handling from completeOrder

23 months agoMerge pull request #23943 from civicrm/5.51
demeritcowboy [Tue, 5 Jul 2022 18:03:25 +0000 (14:03 -0400)]
Merge pull request #23943 from civicrm/5.51

5.51

23 months agoMerge pull request #23927 from eileenmcnaughton/url
demeritcowboy [Tue, 5 Jul 2022 15:32:17 +0000 (11:32 -0400)]
Merge pull request #23927 from eileenmcnaughton/url

dev/core#3707 Fix wordpress issue of page not refreshing after import

23 months agoMerge pull request #23935 from seamuslee001/fix_more_null
demeritcowboy [Tue, 5 Jul 2022 15:15:36 +0000 (11:15 -0400)]
Merge pull request #23935 from seamuslee001/fix_more_null

[REF][PHP8.1] Another set of fixes for passing in NULL values to php …

23 months agoMerge pull request #23928 from artfulrobot/artfulrobot-cleanup-repeattransaction
Matthew Wire [Tue, 5 Jul 2022 13:30:14 +0000 (14:30 +0100)]
Merge pull request #23928 from artfulrobot/artfulrobot-cleanup-repeattransaction

Cleanup repeattransaction

23 months agoMinor tidyup of api3 completetransaction; plus comments
Rich Lott / Artful Robot [Tue, 5 Jul 2022 09:00:23 +0000 (10:00 +0100)]
Minor tidyup of api3 completetransaction; plus comments

23 months agoAdd docblock comments to explain $input param in CRM_Contribute_BAO::repeatTransaction
Rich Lott / Artful Robot [Tue, 5 Jul 2022 08:42:59 +0000 (09:42 +0100)]
Add docblock comments to explain $input param in CRM_Contribute_BAO::repeatTransaction

23 months agoFix sorting by mapping type
Thomas Schüttler [Tue, 5 Jul 2022 08:33:09 +0000 (10:33 +0200)]
Fix sorting by mapping type

23 months agoMerge pull request #23939 from civicrm/5.51
Eileen McNaughton [Tue, 5 Jul 2022 03:59:10 +0000 (15:59 +1200)]
Merge pull request #23939 from civicrm/5.51

5.51

23 months agoMerge pull request #23938 from seamuslee001/brick_math_update
Eileen McNaughton [Tue, 5 Jul 2022 03:55:22 +0000 (15:55 +1200)]
Merge pull request #23938 from seamuslee001/brick_math_update

[REF][PHP8.1] Update Brick/Math to a version that works with php8.1

23 months agoMerge pull request #23904 from eileenmcnaughton/grant
Seamus Lee [Tue, 5 Jul 2022 00:53:48 +0000 (10:53 +1000)]
Merge pull request #23904 from eileenmcnaughton/grant

dev/core#3503, dev/core#3492 Fix grant exports and relative dates

23 months ago[REF][PHP8.1] Update Brick/Math to a version that works with php8.1
Seamus Lee [Tue, 5 Jul 2022 00:42:46 +0000 (10:42 +1000)]
[REF][PHP8.1] Update Brick/Math to a version that works with php8.1

23 months ago[REF][PHP8.1] Another set of fixes for passing in NULL values to php string or preg...
Seamus Lee [Sun, 3 Jul 2022 07:15:25 +0000 (17:15 +1000)]
[REF][PHP8.1] Another set of fixes for passing in NULL values to php string or preg replace functions

Update to Dave's suggestion for default value

23 months agoFix broken tests highlighted by but not caused by pull 23928
Rich Lott / Artful Robot [Mon, 4 Jul 2022 14:01:01 +0000 (15:01 +0100)]
Fix broken tests highlighted by but not caused by pull 23928

23 months agoMerge pull request #23913 from seamuslee001/symfony_upgrade
demeritcowboy [Mon, 4 Jul 2022 12:47:35 +0000 (08:47 -0400)]
Merge pull request #23913 from seamuslee001/symfony_upgrade

[REF][PHP8.1] Upgrade Symfony to 4.x for WP, Drupal7, Backdrop, Joomla

23 months agoMerge pull request #23912 from mlutfy/reportVars
Yashodha Chaku [Mon, 4 Jul 2022 12:45:04 +0000 (18:15 +0530)]
Merge pull request #23912 from mlutfy/reportVars

CRM_Report_Form: set _from and _where as public for the alterReportVar hook

23 months agoMerge pull request #23919 from colemanw/afformIcon
demeritcowboy [Mon, 4 Jul 2022 12:19:59 +0000 (08:19 -0400)]
Merge pull request #23919 from colemanw/afformIcon

Afform - Allow picking icon for tab, add CrmUiIconPicker widget

23 months agoMerge pull request #23922 from seamuslee001/str_func_null_1
Seamus Lee [Mon, 4 Jul 2022 04:51:45 +0000 (14:51 +1000)]
Merge pull request #23922 from seamuslee001/str_func_null_1

[REF][PHP8.1] Stop Passing NULL values into mb_strlen in DAO nad strp…

23 months ago[REF][PHP8.1] Stop Passing NULL values into mb_strlen in DAO nad strpos in API valida...
Seamus Lee [Fri, 1 Jul 2022 01:08:51 +0000 (11:08 +1000)]
[REF][PHP8.1] Stop Passing NULL values into mb_strlen in DAO nad strpos in API validate string function

23 months agoMerge pull request #23808 from agileware/CIVICRM-1861
Matthew Wire [Sun, 3 Jul 2022 14:40:07 +0000 (15:40 +0100)]
Merge pull request #23808 from agileware/CIVICRM-1861

issues/2887 Enhancements to improve the iCal, Outlook and Google Calendar integration

23 months agodev/core#3713 Use front-end urls for event url tokens
Eileen McNaughton [Sun, 3 Jul 2022 02:16:07 +0000 (14:16 +1200)]
dev/core#3713 Use front-end urls for event url tokens

23 months agoImport fix - if there are no required fields validateRequiredFields should 'pass'
Eileen McNaughton [Sun, 3 Jul 2022 00:53:56 +0000 (12:53 +1200)]
Import fix - if there are no required fields validateRequiredFields should 'pass'

2 years agoRepeatTransaction - separate out repeat pledge handling from complete
Eileen McNaughton [Sat, 2 Jul 2022 00:42:02 +0000 (12:42 +1200)]
RepeatTransaction - separate out repeat pledge handling from complete

2 years agoMerge pull request #23930 from demeritcowboy/trigger-comment
Eileen McNaughton [Sat, 2 Jul 2022 05:00:10 +0000 (17:00 +1200)]
Merge pull request #23930 from demeritcowboy/trigger-comment

[NFC] Add code comment about triggerinfo "variables"

2 years agoadd comment
demeritcowboy [Sat, 2 Jul 2022 00:50:38 +0000 (20:50 -0400)]
add comment

2 years agoMerge pull request #23926 from seamuslee001/fix_default_value_php81
demeritcowboy [Sat, 2 Jul 2022 00:44:48 +0000 (20:44 -0400)]
Merge pull request #23926 from seamuslee001/fix_default_value_php81

[REF][PHP8.1] Fix default values which triggeres deprecation notices …

2 years ago[REF][PHP8.1] Fix default values which triggeres deprecation notices in php8.1
Seamus Lee [Fri, 1 Jul 2022 02:33:29 +0000 (12:33 +1000)]
[REF][PHP8.1] Fix default values which triggeres deprecation notices in php8.1

Switch to non array::value format

2 years ago[REF][PHP8.1] Upgrade Symfony to 4.x for WP, Drupal7, Backdrop, Joomla
Seamus Lee [Wed, 29 Jun 2022 23:14:25 +0000 (09:14 +1000)]
[REF][PHP8.1] Upgrade Symfony to 4.x for WP, Drupal7, Backdrop, Joomla

2 years agoMerge pull request #23923 from seamuslee001/upgrade_mail_mime
demeritcowboy [Fri, 1 Jul 2022 19:42:37 +0000 (15:42 -0400)]
Merge pull request #23923 from seamuslee001/upgrade_mail_mime

[REF][PHP8.1] Upgrade Pear/mail_mime package to support php8.1

2 years agoInitial go at cleaning up repeattransaction
Rich Lott / Artful Robot [Fri, 1 Jul 2022 15:51:28 +0000 (16:51 +0100)]
Initial go at cleaning up repeattransaction

2 years agodev/core#3707 Fix wordpress issue of page not refreshing after import
Eileen McNaughton [Fri, 1 Jul 2022 04:56:50 +0000 (16:56 +1200)]
dev/core#3707 Fix wordpress issue of page not refreshing after import

2 years ago[REF][PHP8.1] Upgrade Pear/mail_mime package to support php8.1
Seamus Lee [Fri, 1 Jul 2022 02:19:04 +0000 (12:19 +1000)]
[REF][PHP8.1] Upgrade Pear/mail_mime package to support php8.1

2 years agoMerge pull request #23921 from civicrm/5.51
Seamus Lee [Fri, 1 Jul 2022 01:10:30 +0000 (11:10 +1000)]
Merge pull request #23921 from civicrm/5.51

5.51 to master

2 years agoMerge pull request #23920 from MegaphoneJon/url-validation-regression
Eileen McNaughton [Thu, 30 Jun 2022 22:02:11 +0000 (10:02 +1200)]
Merge pull request #23920 from MegaphoneJon/url-validation-regression

fixes #3706 URL validation regression

2 years agofixes #3706 URL validation regression
Jon Goldberg [Thu, 30 Jun 2022 19:45:14 +0000 (15:45 -0400)]
fixes #3706 URL validation regression

2 years agoAfform - Allow picking icon
Coleman Watts [Thu, 30 Jun 2022 18:50:56 +0000 (14:50 -0400)]
Afform - Allow picking icon

Allows afforms placed as a contact summary tab to specify an icon.
It also switches Afforms's hook_civicrm_tabset to use the API, which ensures virtual forms get picked up.
Adds the new icon for CiviGrant as an example.

2 years agoCrmUi - Add crmUiIconPicker Angular widget
Coleman Watts [Thu, 30 Jun 2022 18:50:34 +0000 (14:50 -0400)]
CrmUi - Add crmUiIconPicker Angular widget

2 years agoMerge pull request #23914 from seamuslee001/file_substr_null
demeritcowboy [Thu, 30 Jun 2022 15:31:09 +0000 (11:31 -0400)]
Merge pull request #23914 from seamuslee001/file_substr_null

[REF][PHP8.1] Ensure that NULL is not passed to substr in CRM_Utils_F…

2 years agoMerge pull request #23916 from totten/master-wfmsg-data-boot
Eileen McNaughton [Thu, 30 Jun 2022 08:32:39 +0000 (20:32 +1200)]
Merge pull request #23916 from totten/master-wfmsg-data-boot

WorkflowMessageTest - Fix weird inconsistency in resolving `@dataProvider`

2 years agoWorkflowMessageTest - Fix weird inconsistency in resolving `@dataProvider`
Tim Otten [Thu, 30 Jun 2022 03:54:19 +0000 (20:54 -0700)]
WorkflowMessageTest - Fix weird inconsistency in resolving `@dataProvider`

We see a failure scenario where:

* The first execution of WorkflowMessageTest runs fine.
* The second execution of WorkflowMessageTest fails to boot (while evaluating `@dataProvider`)
* If you reset the DB, then it works again - but only once.

2 years ago CIVICRM-1861 Embed timezone output for iCal
Francis Whittle [Thu, 30 Jun 2022 00:02:43 +0000 (10:02 +1000)]
CIVICRM-1861 Embed timezone output for iCal
    CIVICRM-1988 Add HTML alternate description to iCAL
    CIVICRM-1987 Add to Google Calendar Link

2 years ago[REF][PHP8.1] Ensure that NULL is not passed to substr in CRM_Utils_File::addTrailing...
Seamus Lee [Wed, 29 Jun 2022 23:43:57 +0000 (09:43 +1000)]
[REF][PHP8.1] Ensure that NULL is not passed to substr in CRM_Utils_File::addTrailingSlash

2 years agoMerge pull request #23899 from MegaphoneJon/civigrant-afform
colemanw [Wed, 29 Jun 2022 20:14:36 +0000 (16:14 -0400)]
Merge pull request #23899 from MegaphoneJon/civigrant-afform

Grants appear in afform

2 years agoCRM_Report_Form: set _from and _where as public for the alterReportVar hook
Mathieu Lutfy [Wed, 29 Jun 2022 18:54:48 +0000 (14:54 -0400)]
CRM_Report_Form: set _from and _where as public for the alterReportVar hook

2 years agoMerge pull request #23871 from agileware/CIVICRM-2004
Eileen McNaughton [Wed, 29 Jun 2022 15:16:41 +0000 (03:16 +1200)]
Merge pull request #23871 from agileware/CIVICRM-2004

Personal Campaign Pages (PCP) incorrectly displays "Don't list my contribution in the honour roll"

2 years agoMerge pull request #23909 from civicrm/5.51
Eileen McNaughton [Wed, 29 Jun 2022 13:03:55 +0000 (01:03 +1200)]
Merge pull request #23909 from civicrm/5.51

5.51 to master

2 years agoMerge pull request #23893 from eileenmcnaughton/user_two
Eileen McNaughton [Wed, 29 Jun 2022 13:03:20 +0000 (01:03 +1200)]
Merge pull request #23893 from eileenmcnaughton/user_two

dev/core#3514 Add interface to allow extensions that deal with imports to cope with 5.51

2 years agoMerge pull request #23907 from eileenmcnaughton/up
Eileen McNaughton [Wed, 29 Jun 2022 10:12:50 +0000 (22:12 +1200)]
Merge pull request #23907 from eileenmcnaughton/up

5.51 to master

2 years agoMerge branch '5.51' of github.com:civicrm/civicrm-core into up
Eileen McNaughton [Wed, 29 Jun 2022 10:11:54 +0000 (22:11 +1200)]
Merge branch '5.51' of github.com:civicrm/civicrm-core into up

2 years agoFix Parser classes to use ClassScanner
Eileen McNaughton [Tue, 28 Jun 2022 10:42:47 +0000 (22:42 +1200)]
Fix Parser classes to use ClassScanner

2 years agoMerge pull request #23888 from eileenmcnaughton/user_import
Eileen McNaughton [Wed, 29 Jun 2022 10:02:47 +0000 (22:02 +1200)]
Merge pull request #23888 from eileenmcnaughton/user_import

Convert the type on the UserJob entity to be a string

2 years agoImport Summary - Update to match final schema ('UserJob.job_type')
Tim Otten [Wed, 29 Jun 2022 08:07:41 +0000 (01:07 -0700)]
Import Summary - Update to match final schema ('UserJob.job_type')

eg When running "Import Activities", the page-title for the summary is incorrect.

2 years agoMerge pull request #23903 from eileenmcnaughton/551
Eileen McNaughton [Wed, 29 Jun 2022 07:40:00 +0000 (19:40 +1200)]
Merge pull request #23903 from eileenmcnaughton/551

Allow tests to pick up hook too

2 years agoMerge pull request #23902 from civicrm/5.51
Eileen McNaughton [Wed, 29 Jun 2022 07:22:42 +0000 (19:22 +1200)]
Merge pull request #23902 from civicrm/5.51

5.51 to master

2 years agodev/core#3503, dev/core#3492 Fix grant exports and relative dates
Eileen McNaughton [Wed, 29 Jun 2022 06:41:31 +0000 (18:41 +1200)]
dev/core#3503, dev/core#3492 Fix grant exports and relative dates

This both stem from the wrong fix for https://lab.civicrm.org/dev/core/-/issues/3069

Refer to the gitlab for some famous last words....

2 years agoMerge pull request #23889 from eileenmcnaughton/offline_cur
Eileen McNaughton [Wed, 29 Jun 2022 06:04:38 +0000 (18:04 +1200)]
Merge pull request #23889 from eileenmcnaughton/offline_cur

Add second currency example

2 years agoMerge pull request #23901 from totten/nfc-install-docblock
Eileen McNaughton [Wed, 29 Jun 2022 05:41:22 +0000 (17:41 +1200)]
Merge pull request #23901 from totten/nfc-install-docblock

(NFC) Expand docblocks for hook_install and hook_postInstall

2 years agoAllow tests to pick up hook too
Eileen McNaughton [Wed, 29 Jun 2022 05:40:21 +0000 (17:40 +1200)]
Allow tests to pick up hook too

2 years agoMerge pull request #23900 from totten/5.51-sticky-classloader
Eileen McNaughton [Wed, 29 Jun 2022 05:09:35 +0000 (17:09 +1200)]
Merge pull request #23900 from totten/5.51-sticky-classloader

(dev/core#3660) CRM_Extension_ClassLoader - Defend against redundant refreshes

2 years agoMerge pull request #23894 from eileenmcnaughton/off_it
Tim Otten [Wed, 29 Jun 2022 03:58:40 +0000 (20:58 -0700)]
Merge pull request #23894 from eileenmcnaughton/off_it

Minor test cleanup

2 years agoExamples - Title should differentiate EUR/CAD examples
Tim Otten [Wed, 29 Jun 2022 03:30:42 +0000 (20:30 -0700)]
Examples - Title should differentiate EUR/CAD examples

2 years agoMerge pull request #23891 from eileenmcnaughton/smarty
Tim Otten [Wed, 29 Jun 2022 03:24:17 +0000 (20:24 -0700)]
Merge pull request #23891 from eileenmcnaughton/smarty

Reset smarty-security after an exception

2 years ago(NFC) Expand docblocks for hook_install and hook_postInstall
Tim Otten [Wed, 29 Jun 2022 02:37:03 +0000 (19:37 -0700)]
(NFC) Expand docblocks for hook_install and hook_postInstall

2 years agoAdd second currency example
Eileen McNaughton [Tue, 28 Jun 2022 05:35:33 +0000 (17:35 +1200)]
Add second currency example

2 years agoGrants appear in afform
Jon Goldberg [Wed, 29 Jun 2022 01:59:44 +0000 (21:59 -0400)]
Grants appear in afform

2 years ago(dev/core#3660) CRM_Extension_ClassLoader - Defend against redundant refreshes
Tim Otten [Wed, 29 Jun 2022 01:27:01 +0000 (18:27 -0700)]
(dev/core#3660) CRM_Extension_ClassLoader - Defend against redundant refreshes

Overview
--------

This is a follow-up to #23824 (c24dd7db7e1e91120fd7daeb7e151f856d6b78c3) which addresses a
regressive edge-case.

Steps to Reproduce
------------------

* Write an extension like `wmf-civicrm` which (a) calls `System.flush` (`rebuildMenuAndCaches()`)
  during `hook_install` -- and then (b) loads some class from the same extension.
    ```php
    function foo_civicrm_install() {
      civicrm_api3('System', 'flush', []);
      CRM_Foo_Helper::doStuff();
    }
    ```
* Try to install the extension.

Before
------

Crashes on loading the class `CRM_Foo_Helper`

After
-----

Loads the class `CRM_Foo_Helper`.

Comments
--------

(1) To see what's happening, consider `CRM_Extension_Manager_Module::onPreInstall()`.
This registers the new classloader and then fires `hook_install` which eventually
fires `rebuildMenuAndCaches()`. With c24dd7db, this resets the classloader again.
But the extension isn't fully installed yet - so it forgets about the new extension.

(2) Is it safe to have some (temporarily) sticky items?  Ish.  You might
say: "Ah, but what if we need to remove an extension?  Won't this static
variable retain stale things?" Doesn't matter.  In PHP, classloading is a
one-way-street.  (You cannot unload.) So you'll still have old classes in
memory, regardless of whether the `ClassLoader` has some old metadata
about where to find classes.

(3) I'm on the fence about whether this patch is a good idea.  Calling
`System.flush` explicitly in this context seems like an invitation to
trouble.  OTOH, it worked before #23824, so it can be called a regression.

2 years agoMerge pull request #23898 from civicrm/5.51
Eileen McNaughton [Tue, 28 Jun 2022 23:46:38 +0000 (11:46 +1200)]
Merge pull request #23898 from civicrm/5.51

5.51 to master

2 years agoMerge pull request #23897 from agh1/5.51.0-releasenotes-initial
Eileen McNaughton [Tue, 28 Jun 2022 23:00:17 +0000 (11:00 +1200)]
Merge pull request #23897 from agh1/5.51.0-releasenotes-initial

5.51.0 release notes initial run

2 years agoSet version to 5.51.beta2. Retargeg FiveFiftyOne::updateUserJobTable to beta2.
Tim Otten [Tue, 28 Jun 2022 22:41:33 +0000 (15:41 -0700)]
Set version to 5.51.beta2. Retargeg FiveFiftyOne::updateUserJobTable to beta2.

2 years ago5.51.0 release notes: added boilerplate
Andie Hunt [Tue, 28 Jun 2022 20:23:55 +0000 (16:23 -0400)]
5.51.0 release notes: added boilerplate

2 years agoConvert the type on the UserJob entity to be a string
Eileen McNaughton [Tue, 28 Jun 2022 04:23:56 +0000 (16:23 +1200)]
Convert the type on the UserJob entity to be a string

Currently we are storing a numeric ID - however if we
permit non-core classes to register types we find numeric ids
quickly become hard to manage as uninstalling an extension could
change the id. This switches to using a string type

2 years agoMinor test cleanup
Eileen McNaughton [Tue, 28 Jun 2022 11:26:48 +0000 (23:26 +1200)]
Minor test cleanup

2 years agoMerge pull request #23852 from IProSoft/master
Eileen McNaughton [Tue, 28 Jun 2022 10:49:32 +0000 (22:49 +1200)]
Merge pull request #23852 from IProSoft/master

New domain token base_url

2 years agoMerge pull request #23892 from eileenmcnaughton/order
Eileen McNaughton [Tue, 28 Jun 2022 08:49:15 +0000 (20:49 +1200)]
Merge pull request #23892 from eileenmcnaughton/order

Ensure apiv3 params are converted at the line item level

2 years agoNew domain token base_url
iprosoft [Tue, 21 Jun 2022 08:41:11 +0000 (10:41 +0200)]
New domain token base_url

Change url retrival method for base_url token

Change base url token title. Fix test error

PHPUnit TokenConsCRM_Utils_TokenConsistencyTest update

2 years agoEnsure apiv3 params are converted at the line item level
Eileen McNaughton [Tue, 28 Jun 2022 05:45:59 +0000 (17:45 +1200)]
Ensure apiv3 params are converted at the line item level

We switched to using apiv4 but at least one test seems to be passing in a string
at the line item level which is a bit weird but we should handle it