colemanw [Wed, 15 Sep 2021 17:31:15 +0000 (13:31 -0400)]
Merge pull request #21482 from colemanw/fixLinks
SearchKit - Fix links to non-aggregage join fields
Coleman Watts [Wed, 15 Sep 2021 14:22:02 +0000 (10:22 -0400)]
SearchKit - Fix links to non-aggregage join fields
colemanw [Wed, 15 Sep 2021 13:15:35 +0000 (09:15 -0400)]
Merge pull request #21420 from colemanw/fixSearchKitMultiLink
SearchKit - Fix display of links in aggregated columns
colemanw [Wed, 15 Sep 2021 13:14:29 +0000 (09:14 -0400)]
Merge pull request #21481 from eileenmcnaughton/mem_std
[REF] simplify member_tokens
Eileen McNaughton [Wed, 15 Sep 2021 02:43:39 +0000 (14:43 +1200)]
Merge pull request #21480 from totten/master-edl
(dev/mail#83) ExampleDataLoader - Multiple fixes for quirky examples
Eileen McNaughton [Wed, 15 Sep 2021 00:35:57 +0000 (12:35 +1200)]
[REF] simplify member_tokens
Now we have good test cover we can switch to using the parent.
The one thorn in our side is membership.fee.
Dealing with the field, and hence opening up 'listening'
is out of scope for this pr
We can (and should) switch fee to membership_type_id.minimum_fee and add
generic support. However, we also have a formatting issue.
The field is formatted 'number only' 'just cos'.
If we map that field without figuring out formatting
it will be locked in as an anomaly.
Tim Otten [Wed, 15 Sep 2021 00:13:11 +0000 (17:13 -0700)]
CaseActivity Examples - Only report example-data if the workflow is actually valid
The `case_activity` workflow definition is weirdly/temporarily in
`tests/phpunit`. This makes it loadable for headless testing, but it's not
truly loadable in a web-env. Consequently, the examples should not be
presented as valid example data when using web-env.
Tim Otten [Wed, 15 Sep 2021 00:11:01 +0000 (17:11 -0700)]
ExampleDataLoader - Fix loading data-sets from `tests/phpunit/*` from web-env
Before: If you add example-data under `tests/phpunit/`, then it works
in headless env. In web-env, it will be scanned, but the `include $file` step will fail.
After: The `include $file` step will succeed.
Tim Otten [Tue, 14 Sep 2021 23:45:14 +0000 (16:45 -0700)]
(REF) ExampleDataLoader - Extract private method `createObj()`. Improve errors.
__Before__: Two different bits of code responsible for loading+instantiating test-data class.
Different (and somewhat opaque) error-handling behaviors.
__After__: One private helper called twice. Consistent (and clearer) error-reporting.
Seamus Lee [Tue, 14 Sep 2021 23:35:34 +0000 (09:35 +1000)]
Merge pull request #21477 from eileenmcnaughton/mem_test
dev/core#2650 upgrade membership tokens to the new format
Eileen McNaughton [Tue, 14 Sep 2021 21:12:48 +0000 (09:12 +1200)]
Merge pull request #21475 from eileenmcnaughton/case_replace
dev/core#2817 remove call to getTokenDetails
Eileen McNaughton [Tue, 14 Sep 2021 21:00:00 +0000 (09:00 +1200)]
dev/core#2650 upgrade membership tokens to the new format
demeritcowboy [Tue, 14 Sep 2021 20:26:13 +0000 (16:26 -0400)]
Merge pull request #21474 from MegaphoneJon/core-2318
fixes core#2318: fix cancel button when sending an individual email
colemanw [Tue, 14 Sep 2021 20:15:57 +0000 (16:15 -0400)]
Merge pull request #21464 from eileenmcnaughton/test_hunt
dev/core#2650 dev/core#2832 add support & testing for preferred token format
Eileen McNaughton [Tue, 14 Sep 2021 15:09:49 +0000 (03:09 +1200)]
dev/core#2817 remove call to getTokenDetails
Removes the call to getTokenDetails as discussed on
https://github.com/civicrm/civicrm-core/pull/21445
As discussed on that PR & related gitlabs I
created an extension to try to allow people to have
this functionality transitionally if they needed
(based on copying code from 5.41 over) - but
per the readme https://github.com/eileenmcnaughton/legacytokenhelper/blob/master/README.md
the issues I found (under 'known issues') were enough
to make me conclude no-one would actually
want to install the extension to restore pre-5.43
functionality
Jon Goldberg [Tue, 14 Sep 2021 18:43:32 +0000 (14:43 -0400)]
fix cancel button when sending an individual email
demeritcowboy [Tue, 14 Sep 2021 16:12:00 +0000 (12:12 -0400)]
Merge pull request #21468 from mattwire/flushcachepermit
flushCaches should respect permitCacheFlushMode
demeritcowboy [Tue, 14 Sep 2021 16:11:34 +0000 (12:11 -0400)]
Merge pull request #21445 from eileenmcnaughton/case_replace
dev/core#2817 Use token processor to resolve caseTokens for pdfs
colemanw [Tue, 14 Sep 2021 14:30:56 +0000 (10:30 -0400)]
Merge pull request #21465 from eileenmcnaughton/cont_tok
[Ref] Cleanup on SelectValues::contributeTokens
colemanw [Tue, 14 Sep 2021 14:17:17 +0000 (10:17 -0400)]
Merge pull request #21466 from eileenmcnaughton/mem
[Ref] Remove pass-by-reference
Eileen McNaughton [Sun, 12 Sep 2021 23:04:29 +0000 (11:04 +1200)]
dev/core#2817 Use token processor to resolve caseTokens for pdfs
Matthew Wire [Tue, 14 Sep 2021 09:36:33 +0000 (10:36 +0100)]
flushCaches should respect permitCacheFlushMode
Eileen McNaughton [Tue, 14 Sep 2021 09:11:29 +0000 (21:11 +1200)]
Merge pull request #21338 from totten/master-msgtpl-api
(dev/mail#83) Introduce WorkflowMessage APIs with CaseActivity example
Tim Otten [Tue, 14 Sep 2021 06:40:51 +0000 (23:40 -0700)]
CaseActivity - Temporarily move to tests/phpunit
This is mostly to circumvent near-term questions on reviewing CaseActivity while still allowing it as an example-case.
Tim Otten [Tue, 14 Sep 2021 00:06:06 +0000 (17:06 -0700)]
(REF-2) Convert WorkflowMessage examples to use ExampleData classes
Tim Otten [Tue, 14 Sep 2021 00:05:24 +0000 (17:05 -0700)]
(REF-1) Convert Civi/WorkflowMessage/Examples.php to Civi/Test/ExampleDataLoader.php
Eileen McNaughton [Mon, 13 Sep 2021 06:24:31 +0000 (18:24 +1200)]
dev/core#2650 add support & testing for preferred token format
This fixes the membership token processor to support the preferred
token format style in scheduled reminders
and adds test cover
Next step is to upgrade the old tokens out of the scheduled reminders
and remove support for them. For the legacy token handler
it is just used from one place from core so we can add a rule
to prevent them from being 'requested' & switch them
off the legacy method.
The test cover in this is more thorough than pre-existing tests
but here is a list of them
api_v3_JobTest.testCallSendReminderSuccessMoreThanDefaultLimit
api_v3_JobTest.testCallSendReminderLimitToSMS
api_v3_JobTest.testCallSendReminderLimitToSMSWithDeletedProvider
CRM_Core_BAO_ActionScheduleTest.testMembershipDateMatch
CRM_Core_BAO_ActionScheduleTest.testMembershipJoinDateNonMatch
CRM_Core_BAO_ActionScheduleTest.testMembershipEndDateRepeat
CRM_Core_BAO_ActionScheduleTest.testMembershipEndDateRepeatChangedEndDate_CRM_15376
CRM_Core_BAO_ActionScheduleTest.testMembershipEndDateMatch
CRM_Core_BAO_ActionScheduleTest.testMultipleMembershipEndDateMatch
CRM_Core_BAO_ActionScheduleTest.testMembershipEndDateNoMatch
CRM_Core_BAO_ActionScheduleTest.testMembershipLimitToNone
CRM_Core_BAO_ActionScheduleTest.testMembershipWithReferenceDate
CRM_Core_BAO_ActionScheduleTest.testMembershipOnMultipleReminder
CRM_Core_BAO_ActionScheduleTest.testRepetitionFrequencyUnit
CRM_Core_BAO_ActionScheduleTest.testInheritedMembershipPermissions
CRM_Core_BAO_ActionScheduleTest.testMembershipScheduleWithAbsoluteDate
Eileen McNaughton [Tue, 14 Sep 2021 03:10:09 +0000 (15:10 +1200)]
[Ref] Remove pass-by-reference
Eileen McNaughton [Tue, 14 Sep 2021 03:08:33 +0000 (15:08 +1200)]
Merge pull request #21463 from eileenmcnaughton/mem
[Ref] Remove unnecessary pass-by-reference
Eileen McNaughton [Tue, 14 Sep 2021 03:05:55 +0000 (15:05 +1200)]
[Ref] Cleanup on SelectValues::contributeTokens
This has 100% test cover in the ByTypeTest::testTokenRendering test
The change means we no longer need the recently-added function
to be public & hence it is switched to protected.
Note this is the same as the equivalent contactTokens function
Seamus Lee [Tue, 14 Sep 2021 02:40:35 +0000 (12:40 +1000)]
Merge pull request #21458 from eileenmcnaughton/badge_of_honor
dev/core#2834 Preliminary test on badge
Eileen McNaughton [Tue, 14 Sep 2021 01:39:15 +0000 (13:39 +1200)]
Merge pull request #21042 from eileenmcnaughton/uf
[REF] Use OO when determining what to suggest for settings.php prefixes for drupal/backdrop views, instead of scattered "if cms =="
Eileen McNaughton [Tue, 14 Sep 2021 01:26:12 +0000 (13:26 +1200)]
[Ref] Remove unnecessary pass-by-reference
Eileen McNaughton [Tue, 14 Sep 2021 01:19:11 +0000 (13:19 +1200)]
Merge pull request #21459 from eileenmcnaughton/mem
[Ref] Remove no-longer-used variables
Tim Otten [Fri, 10 Sep 2021 04:17:32 +0000 (21:17 -0700)]
ExampleData - Declare the PK field to be 'name'. Add 'type=>Extra' for heavy fields.
Eileen McNaughton [Tue, 14 Sep 2021 00:38:00 +0000 (12:38 +1200)]
Merge pull request #21461 from eileenmcnaughton/render_array
Ensure TokenSmary::render returns an array
Eileen McNaughton [Mon, 13 Sep 2021 21:19:08 +0000 (09:19 +1200)]
[NFC] Cleanup on test class
Eileen McNaughton [Mon, 13 Sep 2021 23:13:35 +0000 (11:13 +1200)]
Merge pull request #21436 from colemanw/afformWarning
Afform - gracefully handle missing html files
Eileen McNaughton [Mon, 13 Sep 2021 19:53:47 +0000 (07:53 +1200)]
[Ref] Remove no-longer-used variables
Eileen McNaughton [Mon, 13 Sep 2021 23:01:06 +0000 (11:01 +1200)]
Ensure TokenSmary::render returns an array
If there are no messages it should return an empty array
Tim Otten [Fri, 10 Sep 2021 03:51:29 +0000 (20:51 -0700)]
(REF) Rename WorkflowMessageExample => ExampleData
Tim Otten [Thu, 9 Sep 2021 04:13:05 +0000 (21:13 -0700)]
(REF) WorkflowMessageExample - Set data_type=Array. Remove serialization bits.
Tim Otten [Wed, 1 Sep 2021 22:25:25 +0000 (15:25 -0700)]
(NFC) CaseActivity Msg - Clarify `contactId` vs `clientId`
Tim Otten [Wed, 1 Sep 2021 22:24:45 +0000 (15:24 -0700)]
WorkflowMessage - Track 'support' level for each message
Tim Otten [Thu, 29 Jul 2021 07:27:05 +0000 (00:27 -0700)]
Add WorkflowMessage.getTemplateFields API
Tim Otten [Wed, 14 Jul 2021 00:21:52 +0000 (17:21 -0700)]
Add WorkflowMessage.get and WorkflowMessage.render APIs
Tim Otten [Tue, 6 Jul 2021 06:32:29 +0000 (23:32 -0700)]
CaseActivity - Define class-model and unit-test for workflow message. Add base test-trait.
Tim Otten [Tue, 27 Jul 2021 05:20:35 +0000 (22:20 -0700)]
WorkflowMessageExample - Add API for searching examples
Eileen McNaughton [Fri, 6 Aug 2021 07:51:05 +0000 (19:51 +1200)]
Views db cleanup (alternative)
I took a look at https://github.com/civicrm/civicrm-core/pull/20682 and it seemed clear that
in it's current state it would fix one CMS (d9) & break another (d7). This is
an alternate that will hopefully be non-breaky
Eileen McNaughton [Mon, 13 Sep 2021 11:11:22 +0000 (23:11 +1200)]
dev/core#2834 Preliminary test on badge
Seamus Lee [Mon, 13 Sep 2021 21:46:08 +0000 (07:46 +1000)]
Merge pull request #21452 from eileenmcnaughton/mem_test
dev/core#2832 Improvements to test on membership letter task
Eileen McNaughton [Mon, 13 Sep 2021 21:33:34 +0000 (09:33 +1200)]
Merge pull request #21460 from civicrm/5.42
5.42 to master
Eileen McNaughton [Mon, 13 Sep 2021 21:32:51 +0000 (09:32 +1200)]
Merge pull request #21444 from colemanw/fixSearchDisplayDelete
SearchKit - Fix deleting search displays
Eileen McNaughton [Mon, 13 Sep 2021 21:03:41 +0000 (09:03 +1200)]
Merge pull request #21456 from demeritcowboy/activity-export542
dev/core#2835 - Activity export broken in 5.41
demeritcowboy [Mon, 13 Sep 2021 17:31:56 +0000 (13:31 -0400)]
activity export fail
colemanw [Mon, 13 Sep 2021 15:26:46 +0000 (11:26 -0400)]
Merge pull request #21438 from colemanw/fixApi4GetDefaults
APIv4 - Default select clause to exclude "Extra" fields
demeritcowboy [Mon, 13 Sep 2021 15:09:14 +0000 (11:09 -0400)]
Merge pull request #21448 from eileenmcnaughton/old_param
[REF] Remove unused parameter
demeritcowboy [Mon, 13 Sep 2021 14:45:23 +0000 (10:45 -0400)]
Merge pull request #21451 from eileenmcnaughton/mem
[REF] Remove unused variable
colemanw [Mon, 13 Sep 2021 13:51:13 +0000 (09:51 -0400)]
Merge pull request #21450 from eileenmcnaughton/compat_less
[REF] Extract code to load the contact in tokenCompat
Coleman Watts [Sat, 11 Sep 2021 19:16:18 +0000 (15:16 -0400)]
APIv4 - Default select clause to exclude "Extra" fields
Recently a "type" property was added to getFieldSpec to allow "Extra"
calculated fields to be declared. This updates api Get to *not*
select those fields by default, as their calculation can be expensive.
Mathieu Lu [Mon, 13 Sep 2021 13:04:37 +0000 (09:04 -0400)]
Merge pull request #21439 from mlutfy/authxReadme
Authx: README: add note about CMS permissions
Seamus Lee [Mon, 13 Sep 2021 08:18:23 +0000 (18:18 +1000)]
Merge pull request #21453 from eileenmcnaughton/member_tokens
dev/core#2832 Add test for legacy membership tokens, add support for preferred tokens
Eileen McNaughton [Mon, 13 Sep 2021 04:13:01 +0000 (16:13 +1200)]
Enhance pdf letter test for mememberships
Eileen McNaughton [Mon, 13 Sep 2021 05:34:34 +0000 (17:34 +1200)]
dev/core#2832 Add test for legacy membership tokens, add support for preferred tokens
There is only one place that calls this code. With cover of the legacy tokens
I can ensure it is the same as the processor tokens. I've fixed it
to support the preferred unambiguous tokens because that means that
we don't have to deal with reports of them not working while calls
to it are phased out of extensions. Working through that
also allowed me to remove some code now
Eileen McNaughton [Mon, 13 Sep 2021 03:17:09 +0000 (15:17 +1200)]
dev/core#2832 rename pdf letter test
Eileen McNaughton [Mon, 13 Sep 2021 02:59:16 +0000 (14:59 +1200)]
[REF] Remove unused variable
This parameter is no longer used
Eileen McNaughton [Mon, 13 Sep 2021 02:06:59 +0000 (14:06 +1200)]
[REF] Extract code to load the contact in tokenCompat
colemanw [Mon, 13 Sep 2021 00:38:14 +0000 (20:38 -0400)]
Merge pull request #21401 from eileenmcnaughton/mgd2
dev/core#2823 Restructure determination of required actions.
Eileen McNaughton [Sun, 12 Sep 2021 23:46:07 +0000 (11:46 +1200)]
[REF] Remove unused parameter
There are no longer any cases in git universe that pass this parameter
Seamus Lee [Sun, 12 Sep 2021 23:42:00 +0000 (09:42 +1000)]
Merge pull request #20807 from davidjosephhayes/wordpress-profile-signon-2
Wordpress Profile User Creation Sign On (v2)
Eileen McNaughton [Sun, 12 Sep 2021 22:28:10 +0000 (10:28 +1200)]
Move loadDeclartions to reconcile
I'm getting a loop
Eileen McNaughton [Sun, 12 Sep 2021 20:48:26 +0000 (08:48 +1200)]
Make managed entities functions protected
The only affected universe place I found was
https://github.com/veda-consulting-company/uk.co.vedaconsulting.gdpr/pull/294
Since putting the 'information gathering & storing' function on
the constructor is tricky due to the singleton
caching this means we are always working with a consistent entry point
Eileen McNaughton [Wed, 8 Sep 2021 05:08:34 +0000 (17:08 +1200)]
dev/core#2823 Restructure determination of required actions.
The expected actions are now calculated at the start of reconcile.
and retrievable by function.
The code that calls the action-actions
is still pretty cludgey - but the intent is that
we would stop passing the dao object into those
action-action functions in the near future.
This PR punts any decisions about how outputs might look
(eg. making the array retrievable from outside of the function.
Note that there is pretty comprehensive
test cover in CRM_Core_ManagedEntitiesTest
colemanw [Sun, 12 Sep 2021 21:40:20 +0000 (17:40 -0400)]
Merge pull request #21429 from eileenmcnaughton/tok_hook2
Consolidate building of contact token list
colemanw [Sun, 12 Sep 2021 21:38:27 +0000 (17:38 -0400)]
Merge pull request #21383 from eileenmcnaughton/case_tokens
dev/core#2817 Add CaseToken processor
Eileen McNaughton [Sun, 12 Sep 2021 21:25:21 +0000 (09:25 +1200)]
Merge pull request #21441 from demeritcowboy/dashboard-fail2
dev/core#2829 - "Trying to access array offset on value of type null" on dashboard
Coleman Watts [Sun, 12 Sep 2021 21:22:01 +0000 (17:22 -0400)]
SearchKit - Fix deleting search displays
Eileen McNaughton [Sun, 12 Sep 2021 21:17:29 +0000 (09:17 +1200)]
Merge pull request #21443 from demeritcowboy/test-fix-2
Alternate to https://github.com/civicrm/civicrm-core/pull/21442
colemanw [Sun, 12 Sep 2021 20:05:50 +0000 (16:05 -0400)]
Merge pull request #21428 from totten/master-tp-filter
TokenProcessor - Allow basic filter/modifier expressions
colemanw [Sun, 12 Sep 2021 20:00:15 +0000 (16:00 -0400)]
Merge pull request #21440 from eileenmcnaughton/mgd_test
dev/core#2823 fix test to be more like real function usage
demeritcowboy [Sun, 12 Sep 2021 13:45:11 +0000 (09:45 -0400)]
contact with email might not exist
demeritcowboy [Sun, 12 Sep 2021 12:02:19 +0000 (08:02 -0400)]
dashboard has no bridge
Eileen McNaughton [Sun, 12 Sep 2021 05:42:24 +0000 (17:42 +1200)]
dev/core#2823 fix test to be more like real function usage
Eileen McNaughton [Sat, 11 Sep 2021 23:46:42 +0000 (11:46 +1200)]
Merge pull request #21437 from demeritcowboy/dashboard-fail
dev/core#2829 - unit test for nonempty dashboard
Mathieu Lutfy [Sat, 11 Sep 2021 21:47:48 +0000 (17:47 -0400)]
Authx: README: add note about CMS permissions
demeritcowboy [Sat, 11 Sep 2021 18:51:39 +0000 (14:51 -0400)]
test for nonempty dashboard
Coleman Watts [Sat, 11 Sep 2021 16:12:12 +0000 (12:12 -0400)]
Afform - gracefully handle missing html files
colemanw [Sat, 11 Sep 2021 15:14:54 +0000 (11:14 -0400)]
Merge pull request #21399 from eileenmcnaughton/mgd
dev/core#2823 Extract code to load the declarations and call from the constructor
colemanw [Sat, 11 Sep 2021 15:10:48 +0000 (11:10 -0400)]
Merge pull request #21400 from eileenmcnaughton/val
dev/core#2823 Move validation into validation function
Eileen McNaughton [Sat, 11 Sep 2021 03:06:05 +0000 (15:06 +1200)]
Merge pull request #21434 from demeritcowboy/upgrade-text
dev/core#2828 - Make up for message template text version update from 5.20 that never happened
Eileen McNaughton [Sat, 11 Sep 2021 00:46:39 +0000 (12:46 +1200)]
Merge pull request #21211 from colemanw/onDeletePrimary
[REF] Move Email, Address, etc. is_primary handling on delete to a hook (dev/core#2757)
demeritcowboy [Sat, 11 Sep 2021 00:15:41 +0000 (20:15 -0400)]
better late than never
Eileen McNaughton [Fri, 10 Sep 2021 23:13:42 +0000 (11:13 +1200)]
Merge pull request #21424 from colemanw/apiJoinBridgeCustomFields
SearchKit - Support custom fields in bridge join entities
Eileen McNaughton [Fri, 10 Sep 2021 21:57:39 +0000 (09:57 +1200)]
Merge pull request #21431 from colemanw/searchTableAlign
SearchKit - Fix alignment in table headers
Eileen McNaughton [Fri, 10 Sep 2021 21:02:19 +0000 (09:02 +1200)]
Merge pull request #21198 from colemanw/fkConstraint
[REF] Mapping - Check FK on delete with SQL instead of PHP (dev/core#2757)
Coleman Watts [Fri, 10 Sep 2021 14:28:19 +0000 (10:28 -0400)]
SearchKit - Fix alignment in table headers
Coleman Watts [Fri, 20 Aug 2021 17:24:48 +0000 (13:24 -0400)]
Mapping - Check FK on delete with SQL instead of with PHP
Coleman Watts [Sun, 22 Aug 2021 00:00:32 +0000 (20:00 -0400)]
Move Email, Address, etc. is_primary handling on delete to a hook
Previously this was all done in a delegated function.
This moves that logic to a hook listener.
Seamus Lee [Fri, 10 Sep 2021 07:55:54 +0000 (17:55 +1000)]
Merge pull request #21426 from eileenmcnaughton/api4
Replace expensive query with cheaper one
Tim Otten [Thu, 9 Sep 2021 23:26:08 +0000 (16:26 -0700)]
TokenProcessor - Allow basic filter/modifier expressions
Before
------
`Hello {foo.bar}`
After
-----
`Hello {foo.bar|upper}` and `Hello {foo.bar|lower}`
Technical Details
-----------------
This only supports tokens that supply values through `civi.token.eval`. At the time of
this commit, most `{contact.*}` tokens still use `TokenCompatSubscriber::onRender()` to
hack-in their values and won't work until they switch over.
The regex which recognizes the filter is pretty tight (`\w+`). This can be relaxed
somewhat by a subsequent change, but I'd say such a change has a burden to demonstrate
safety/interoparbility when running in Token-Smarty format. (e.g. demonstrate that
matching of open/close symbols works correctly).