eileen [Thu, 25 Mar 2021 20:27:46 +0000 (09:27 +1300)]
Add void to some setup() functions
colemanw [Thu, 25 Mar 2021 16:16:10 +0000 (12:16 -0400)]
Merge pull request #19870 from totten/master-psr0
info.xml - Allow PSR-0 style class-loader declarations
Seamus Lee [Thu, 25 Mar 2021 09:22:45 +0000 (20:22 +1100)]
Merge pull request #19901 from eileenmcnaughton/tte
[phpunit 8] Remove some empty tearDown functions
Seamus Lee [Thu, 25 Mar 2021 09:21:09 +0000 (20:21 +1100)]
Merge pull request #19898 from eileenmcnaughton/teardown2
More phpunit8 prep
Seamus Lee [Thu, 25 Mar 2021 09:20:48 +0000 (20:20 +1100)]
Merge pull request #19899 from eileenmcnaughton/tear
[PHPUNIT8] add void to more teardown()
Seamus Lee [Thu, 25 Mar 2021 09:20:30 +0000 (20:20 +1100)]
Merge pull request #19900 from eileenmcnaughton/tear2
[PHPUNIT 8 ] Add void to more teardowns
Monish Deb [Thu, 25 Mar 2021 05:54:16 +0000 (11:24 +0530)]
Merge pull request #19891 from eileenmcnaughton/task1
[REF] Simplify setting of softcredit form options (minor)
Eileen McNaughton [Thu, 25 Mar 2021 04:31:08 +0000 (17:31 +1300)]
Merge pull request #19897 from eileenmcnaughton/teardown
Add :void return type to tearDown on a bunch of unit tests
Monish Deb [Thu, 25 Mar 2021 04:02:09 +0000 (09:32 +0530)]
Merge pull request #19639 from eileenmcnaughton/test_test
[REF] Fix ContributionPage::recurringNotify to use apiv4, simplify params
Eileen McNaughton [Thu, 25 Mar 2021 02:59:12 +0000 (15:59 +1300)]
Merge pull request #19896 from colemanw/api4GetActionsFix
APIv4 - Fix GetActions function to work with entityNames that don't match className
Eileen McNaughton [Thu, 25 Mar 2021 02:58:39 +0000 (15:58 +1300)]
Merge pull request #19895 from eileenmcnaughton/falsefail
Skip UFField.field_name on singleValueAlter as flakey
eileen [Thu, 25 Mar 2021 02:25:11 +0000 (15:25 +1300)]
Remove some empty tearDown functions
eileen [Thu, 25 Mar 2021 02:17:49 +0000 (15:17 +1300)]
[PHPUNIT 8 ] Add void to more teardowns
eileen [Thu, 25 Mar 2021 02:12:59 +0000 (15:12 +1300)]
[PHPUNIT8] add void to more teardown()
eileen [Thu, 25 Mar 2021 02:03:58 +0000 (15:03 +1300)]
More phpunit8 prep
eileen [Thu, 25 Mar 2021 01:51:27 +0000 (14:51 +1300)]
Add :void return type to tearDown on a bunch of unit tests
Coleman Watts [Thu, 25 Mar 2021 00:13:57 +0000 (20:13 -0400)]
APIv4 - Fix GetActions function to work with entityNames that don't match className
Eileen McNaughton [Wed, 24 Mar 2021 23:54:37 +0000 (12:54 +1300)]
Merge pull request #19892 from colemanw/searchKitCreatedModified
SearchKit - Add created & modified info to SavedSearch listing
Eileen McNaughton [Wed, 24 Mar 2021 23:24:11 +0000 (12:24 +1300)]
Merge pull request #19312 from seamuslee001/dev_core_1845
dev/core#1845 Change FK on civicrm_group to delete the associated gro…
Eileen McNaughton [Wed, 24 Mar 2021 23:07:04 +0000 (12:07 +1300)]
Merge pull request #19885 from eileenmcnaughton/acl_role
[REF] Remove redundant toArray() function
Coleman Watts [Wed, 24 Mar 2021 22:15:08 +0000 (18:15 -0400)]
SearchKit - Add created & modified info to SavedSearch listing
eileen [Fri, 19 Mar 2021 21:34:42 +0000 (10:34 +1300)]
Simplify setting of softcredit form options
I checked & the empty is just an enotice fix
eileen [Wed, 24 Mar 2021 03:25:08 +0000 (16:25 +1300)]
Remove toArray function as it does the same as the parent
colemanw [Wed, 24 Mar 2021 20:19:25 +0000 (16:19 -0400)]
Merge pull request #19881 from eileenmcnaughton/task1
[REF] Store the getSearchQueryResults so it can be re-accessed
Eileen McNaughton [Wed, 24 Mar 2021 20:12:15 +0000 (09:12 +1300)]
Merge pull request #19889 from colemanw/api4EntityNameCleanup
APIv4 - Standardize generic entity name resolution
Eileen McNaughton [Wed, 24 Mar 2021 19:35:34 +0000 (08:35 +1300)]
Merge pull request #19875 from colemanw/contactSummaryCleanup
Reorganize contact summary template to support non-ajax tabs
Coleman Watts [Wed, 24 Mar 2021 18:22:36 +0000 (14:22 -0400)]
APIv4 - Standardize generic entity name resolution so that classNames do not have to equal entityNames
This will allow the addition of a CiviCase API which cannot have the className "Case" because that is a reserved php keyword
Also cleans up other entities that use `static::class` in place of entityName because it's not a good pattern to replicate.
colemanw [Wed, 24 Mar 2021 15:17:12 +0000 (11:17 -0400)]
Merge pull request #19801 from eileenmcnaughton/mem_terms
[REF] Simplify code calculating the number of membership terms
Seamus Lee [Wed, 24 Mar 2021 05:17:54 +0000 (16:17 +1100)]
Merge pull request #19884 from eileenmcnaughton/unit8less
Updates to ExportTest
Eileen McNaughton [Wed, 24 Mar 2021 03:17:03 +0000 (16:17 +1300)]
Merge pull request #19818 from eileenmcnaughton/merge_fix
Fix for dedupe error under some mysql configs
eileen [Wed, 24 Mar 2021 02:21:10 +0000 (15:21 +1300)]
Updates to ExportTest
eileen [Wed, 24 Mar 2021 02:42:52 +0000 (15:42 +1300)]
Test fix to avoid caching issue
Seamus Lee [Wed, 24 Mar 2021 01:41:15 +0000 (12:41 +1100)]
Merge pull request #19882 from eileenmcnaughton/acl_role
Fold back in getGroupACLs
Seamus Lee [Wed, 24 Mar 2021 01:35:53 +0000 (12:35 +1100)]
Merge pull request #19817 from eileenmcnaughton/merge
Tighten mysql mode in test environment
Eileen McNaughton [Wed, 24 Mar 2021 01:32:10 +0000 (14:32 +1300)]
Merge pull request #19880 from demeritcowboy/crmmoney2
dev/financial#171 - Don't pass already formatted data to crmMoney on contact summary for custom fields
eileen [Tue, 23 Mar 2021 23:30:37 +0000 (12:30 +1300)]
Fold back in getGroupACLs
Eileen McNaughton [Wed, 24 Mar 2021 00:23:17 +0000 (13:23 +1300)]
Merge pull request #19879 from eileenmcnaughton/acl_role
Remove getACLRoles
eileen [Fri, 19 Mar 2021 21:23:31 +0000 (10:23 +1300)]
[REF] Fix the getSearchQueryResults so it can be called multiple times
demeritcowboy [Tue, 23 Mar 2021 23:52:39 +0000 (19:52 -0400)]
don't pass already formatted data to crmMoney
colemanw [Tue, 23 Mar 2021 23:49:37 +0000 (19:49 -0400)]
Merge pull request #19860 from eileenmcnaughton/task1
Move setting of _includesSoftCredits out of getQuery
Eileen McNaughton [Tue, 23 Mar 2021 23:40:25 +0000 (12:40 +1300)]
Merge pull request #19868 from colemanw/searchKitFixExtraFields
SearchKit - remove extra irrelevant fields from bridge joins
Seamus Lee [Tue, 23 Mar 2021 22:56:32 +0000 (09:56 +1100)]
Merge pull request #19878 from civicrm/5.36
5.36
eileen [Tue, 23 Mar 2021 22:35:04 +0000 (11:35 +1300)]
Remove getACLRoles
We have cleaned up the code to clarify that
1) it returns an empty array if contact id is set and
2) it is only called with contact_id is set
Ergo it does nada
Not called from anywhere else (I made it protected last
cleanup round)
Seamus Lee [Tue, 23 Mar 2021 22:14:49 +0000 (09:14 +1100)]
Merge pull request #19872 from eileenmcnaughton/acl_role
[REF] Fold getACLs back into the calling function
Eileen McNaughton [Tue, 23 Mar 2021 22:14:26 +0000 (11:14 +1300)]
Merge pull request #19867 from colemanw/civiCaseApi
APIv4 - Add function to get api class name
Eileen McNaughton [Tue, 23 Mar 2021 22:07:10 +0000 (11:07 +1300)]
Merge pull request #19743 from totten/master-upg
dev/release#16 - Allow omission of empty upgrade steps
Seamus Lee [Tue, 23 Mar 2021 21:25:37 +0000 (08:25 +1100)]
Merge pull request #19874 from demeritcowboy/blank-assignee
[WIP] dev/core#2473 - Don't crash when assignee left blank when creating followup on email activity
Eileen McNaughton [Tue, 23 Mar 2021 21:03:48 +0000 (10:03 +1300)]
Merge pull request #19877 from eileenmcnaughton/camp
[REF] Stdise campaign_id handling
Eileen McNaughton [Tue, 23 Mar 2021 21:03:31 +0000 (10:03 +1300)]
Merge pull request #19876 from demeritcowboy/dont
dev/financial#171 - Don't
eileen [Tue, 23 Mar 2021 19:44:34 +0000 (08:44 +1300)]
[REF] Stdise campaign_id handling
demeritcowboy [Tue, 23 Mar 2021 19:26:05 +0000 (15:26 -0400)]
don't
Coleman Watts [Tue, 23 Mar 2021 14:44:14 +0000 (10:44 -0400)]
Reorganize contact summary template to support non-ajax tabs
There was some non-functional (due to a typo) code in TabHeader.tpl to allow tabs to load from a .tpl instead of ajax.
This fixes that typo and copies the funcionality into the contact summary tabs as well.
The functionality is demonstrated here by moving the main tab into a sub-tempate.
colemanw [Tue, 23 Mar 2021 19:04:16 +0000 (15:04 -0400)]
Merge pull request #19757 from eileenmcnaughton/tax_amount
[REF] Minor simplification around assigning taxAmount to the template
colemanw [Tue, 23 Mar 2021 18:40:52 +0000 (14:40 -0400)]
Merge pull request #19800 from eileenmcnaughton/gettypes
[REF] Remove setting of unused variables
demeritcowboy [Tue, 23 Mar 2021 17:37:50 +0000 (13:37 -0400)]
crash when assignee left blank
colemanw [Tue, 23 Mar 2021 12:24:25 +0000 (08:24 -0400)]
Merge pull request #19797 from eileenmcnaughton/super_duper
Add new Super-duper-no-permissions-apply permission
Michael McAndrew [Thu, 11 Mar 2021 15:38:43 +0000 (15:38 +0000)]
dev/core#1845 Change FK on civicrm_group to delete the associated group if a saved search is deleted
Add in delete function on Group BAO to handle deleting associated saved search if appropriate when group is deleted and move upgrade step appropriately
Add unit test and move code to the discard function
Seamus Lee [Tue, 23 Mar 2021 02:08:09 +0000 (13:08 +1100)]
Merge pull request #19764 from JMAConsulting/core-59
core#59: Address location type search errors when using a search profile
Seamus Lee [Tue, 23 Mar 2021 02:04:02 +0000 (13:04 +1100)]
Merge pull request #19871 from eileenmcnaughton/acl
Return from getACLRoles when contactID is not null
eileen [Tue, 23 Mar 2021 01:07:16 +0000 (14:07 +1300)]
[REF] Fold getACLs back into the calling function
Not called in the civi universe
eileen [Tue, 23 Mar 2021 00:29:45 +0000 (13:29 +1300)]
Return from getACLRoles when contactID is null
I've made this patch the least possible code wise to allow brain space to think about the query....
Basically the where is WHERE acl.entity_table='civicrm_acl_role'....
if contact_id is set it becomes AND acl.entity_table = 'civicrm_contact'
Which means that it would only ever return empty results
(once this is merged more cleanup can happen but I wanted to
make this change easy to think through)
Eileen McNaughton [Tue, 23 Mar 2021 00:26:10 +0000 (13:26 +1300)]
Merge pull request #19869 from eileenmcnaughton/acl
[REF] Simplify BAO_ACL table references
Tim Otten [Mon, 22 Mar 2021 23:40:39 +0000 (16:40 -0700)]
info.xml - Allow PSR-0 style class-loader declarations
Before
------
If an extension defines a class in the style of `CRM_Foo_Bar`, then it
*must* use `hook_civicrm_config` and modify the `include_path`.
```php
function mymod_civicrm_config(&$config = NULL) {
$extRoot = dirname(__FILE__) . DIRECTORY_SEPARATOR;
$include_path = $extRoot . PATH_SEPARATOR . get_include_path();
set_include_path($include_path);
}
```
Consequently:
* The `include_path` gets rather long.
* Setting up the extension class-loader is not sufficient for loading these classes. You must
wait until the DB has initialized and the `hook_civicrm_config` has fired.
After
-----
An extension *may* setup classloading in `info.xml`, e.g.
```xml
<classloader>
<psr0 prefix="CRM_" path="" />
</classloader>
```
If the `<psr0>` style is used, then it is possible to scan the extension
classes without fully booting the extension. This is a pre-requisite for
using interfaces, annotations, or similar for event-registration.
Comments
--------
* This style closely parallels the `<psr4>` support in `info.xml`, and it parallels the semantics of `composer.json`.
* It is still valid for an extension to set `include_path` -- that works the same as ever.
eileen [Sun, 21 Mar 2021 22:16:33 +0000 (11:16 +1300)]
Remove exposure of implied_permissions beyond class
eileen [Sat, 13 Mar 2021 02:31:48 +0000 (15:31 +1300)]
Add new Super-duper-no-permissions-apply permission
We discussed in the context of search kit that there are 2 competing concepts of
'administer CiviCRM'
1) like drupal user 1, can do anything
2) role that has various administrative access but acls etc still apply
In search kit we have an interest in allowing users who won't do dumb things
the ability to expose data to people who otherwise would not have access to that data
- e.g to create a listing of event participants to expose to anonymous users.
This effectively means we are giving people the power to create displays
that set check_permissions to FALSE. This would potentially enable people
to not just bypass ACLs applied to others but also acls applied to them.
In order words it could be a privellege escallation.
To prevent any unexpected escallation we decided that this ability
should only be given to contacts who explicitly have access to everything
anyway. There is no existing permission that does this (although
there is a perception that there is)
eileen [Mon, 22 Mar 2021 21:10:11 +0000 (10:10 +1300)]
[REF] Simplify BAO_ACL table references
It does not appear to me, from my testing that the value in entity_table could
be something other than the actual table name (in fact I suspect
it would only ever be civicrm_acl_role - I'm working to confirm that).
This simplifies and switches to executeQuery which is multilingual aware
Seamus Lee [Mon, 22 Mar 2021 22:33:16 +0000 (09:33 +1100)]
Merge pull request #19829 from vingle/patch-11
Add .clear class to break inline flow on social share footer
Eileen McNaughton [Mon, 22 Mar 2021 21:24:11 +0000 (10:24 +1300)]
Merge pull request #19716 from jitendrapurohit/lifetime
update to lifetime membership does not clear the end date
Seamus Lee [Mon, 22 Mar 2021 21:21:53 +0000 (08:21 +1100)]
Merge pull request #19866 from eileenmcnaughton/nfc
[NFC] Cleanup in test class
colemanw [Mon, 22 Mar 2021 20:44:11 +0000 (16:44 -0400)]
Merge pull request #19660 from totten/master-afform-token
Afform - Add support for email tokens `{afform.myFormUrl}`
colemanw [Mon, 22 Mar 2021 20:35:23 +0000 (16:35 -0400)]
Merge pull request #19858 from eileenmcnaughton/loop
Fix loop
Coleman Watts [Mon, 22 Mar 2021 16:01:43 +0000 (12:01 -0400)]
APIv4 - Add function to get api class name
Adding the "Case" entity is a problem because it's a reserved php keyword.
So we need to be able to have entity names that don't match their classname.
This function gives us a way to get api class names without guessing from the entity name.
Coleman Watts [Mon, 22 Mar 2021 19:16:32 +0000 (15:16 -0400)]
SearchKit - remove extra irrelevant fields from bridge joins
colemanw [Mon, 22 Mar 2021 14:04:38 +0000 (10:04 -0400)]
Merge pull request #19856 from colemanw/customFieldLabels
SearchKit - Include custom group title with custom field label
eileen [Mon, 22 Mar 2021 10:45:44 +0000 (23:45 +1300)]
Remove never-gonna-happen todos
eileen [Mon, 22 Mar 2021 10:41:28 +0000 (23:41 +1300)]
Share function for identical code
eileen [Mon, 22 Mar 2021 10:36:54 +0000 (23:36 +1300)]
Use custom data trait for custom data
eileen [Mon, 22 Mar 2021 10:30:46 +0000 (23:30 +1300)]
Remove call to deprecated function
eileen [Mon, 22 Mar 2021 10:20:23 +0000 (23:20 +1300)]
[NFC] Cleanup in test class
Eileen McNaughton [Mon, 22 Mar 2021 08:52:26 +0000 (21:52 +1300)]
Merge pull request #19864 from eileenmcnaughton/nfc
[NFC] Minor cleanup on test class
Seamus Lee [Mon, 22 Mar 2021 08:18:57 +0000 (19:18 +1100)]
Merge pull request #19861 from eileenmcnaughton/mem_tax
[REF] Simplify a couple of variables
eileen [Mon, 22 Mar 2021 07:20:28 +0000 (20:20 +1300)]
[NFC] Minor cleanup on test class
Seamus Lee [Mon, 22 Mar 2021 06:55:22 +0000 (17:55 +1100)]
Fix issue with no group by sql_mode
eileen [Tue, 16 Mar 2021 02:08:06 +0000 (15:08 +1300)]
Tighten mysql mode in test environment
At least one test fails (and the corresponding bug appears on our live site)
with the mysql modes IGNORE_SPACE, ERROR_FOR_DIVISION_BY_ZERO and STRICT_TRANS
(I think any 2 of the above is OK)
Let's throw it at jenkins & see how many friends it has
Eileen McNaughton [Mon, 22 Mar 2021 04:34:32 +0000 (17:34 +1300)]
Merge pull request #19603 from JMAConsulting/issue-2226
core#2226: Scheduled Reminder fails to send if From Name includes comma
eileen [Fri, 19 Mar 2021 21:20:09 +0000 (10:20 +1300)]
Move setting of _includesSoftCredits out of getQuery
We shouldn't be doing extra setting within the function
Eileen McNaughton [Mon, 22 Mar 2021 03:32:06 +0000 (16:32 +1300)]
Merge pull request #18466 from mattwire/scheduledJobFatalErrorHandler
Remove fatalErrorHandler from scheduled jobs manager
eileen [Mon, 22 Mar 2021 02:41:55 +0000 (15:41 +1300)]
[REF] Simplify a couple of variables
Rather than rely on these being passed around retrieve them with
a consistent function.
Note tax_amount is retrieved one other place but that is fixed in
https://github.com/civicrm/civicrm-core/pull/19757
Line item will be used less once
https://github.com/civicrm/civicrm-core/pull/19801 is merged
Seamus Lee [Mon, 22 Mar 2021 01:12:47 +0000 (12:12 +1100)]
Merge pull request #19857 from eileenmcnaughton/task1
[REF] Extract getQueryParams
Seamus Lee [Mon, 22 Mar 2021 01:09:09 +0000 (12:09 +1100)]
Merge pull request #19859 from civicrm/5.36
5.36
Seamus Lee [Mon, 22 Mar 2021 01:07:36 +0000 (12:07 +1100)]
Merge pull request #19728 from totten/master-authx-guards
(dev/core#2077) AuthX - Allow optional "guards"
colemanw [Mon, 22 Mar 2021 00:11:42 +0000 (20:11 -0400)]
Merge pull request #19812 from eileenmcnaughton/recur
[REF] Clarify & simplify is_recur param
Coleman Watts [Sun, 21 Mar 2021 22:11:59 +0000 (18:11 -0400)]
SearchKit - Include custom group title with custom field label
This makes it easier to tell custom fields apart in SearchKit when they have similar names to core or other custom fields.
This takes advantage of API4.getFields returning both a "title" and "label" attribute.
This keeps "title" the same while appending group title to "label".
colemanw [Sun, 21 Mar 2021 23:39:41 +0000 (19:39 -0400)]
Merge pull request #19825 from colemanw/api4BridgeJoinSubquery
APIv4 - Use subquery to LEFT JOIN via a bridge entity
eileen [Sun, 21 Mar 2021 23:19:47 +0000 (12:19 +1300)]
Fix loop
It turns out that if you 'break' advanced search (in my case
I applied a patch that caused invalid sql) it enters a loop.
I really can't see why 'while' would have ever made sense here.
There is nothing to cause it to 'move along'
eileen [Fri, 19 Mar 2021 21:13:56 +0000 (10:13 +1300)]
Extract getQueryParams
Coleman Watts [Sun, 21 Mar 2021 20:32:54 +0000 (16:32 -0400)]
SearchKit - Add "EXCLUDE" join type, to search for entities that do not have a relationship to another entity
Coleman Watts [Thu, 18 Mar 2021 01:53:31 +0000 (21:53 -0400)]
APIv4 - Use subquery to LEFT JOIN via a bridge entity
Bridge entities are supposed to be transparent in APIv4, but when LEFT joining,
an artifact of the double-join would give extraneous results.
Coleman Watts [Wed, 17 Mar 2021 12:41:54 +0000 (08:41 -0400)]
APIv4 - Simplify long function by extracting part of it
colemanw [Sun, 21 Mar 2021 20:50:36 +0000 (16:50 -0400)]
Merge pull request #19828 from eileenmcnaughton/act_contact_hook
dev/core#2390 Add hook support for Activity Contact