Matthew Wire [Thu, 12 Nov 2020 12:01:14 +0000 (12:01 +0000)]
Merge pull request #18961 from eileenmcnaughton/msg
dev/core#2158 Remove detail about updating related components when editing a contribution status
eileen [Thu, 12 Nov 2020 02:49:31 +0000 (15:49 +1300)]
dev/core#2158 Remove detail about updating related components when editing a contribution status
Note that with this merged it's also possible to remove a lot of code from transitionComponents
Eileen McNaughton [Thu, 12 Nov 2020 00:11:01 +0000 (13:11 +1300)]
Merge pull request #18952 from eileenmcnaughton/aip
Standardise more params in completeOrder
Seamus Lee [Wed, 11 Nov 2020 23:15:01 +0000 (10:15 +1100)]
Merge pull request #18912 from yashodha/dev_2153
(dev/core#2153) BUG: when changing a custom group option value CiviCR…
eileen [Tue, 10 Nov 2020 03:06:04 +0000 (16:06 +1300)]
Standardise more params in completeOrder
This moves the loading of the following params from the first contribution from Authorize.net to
completeOrder
- amount_level
- address_id
In addition campaign_id is moved, however, this is only in it is not an
input param or derived from the recur record
Eileen McNaughton [Wed, 11 Nov 2020 22:25:12 +0000 (11:25 +1300)]
Merge pull request #18956 from civicrm/5.32
5.32
Seamus Lee [Wed, 11 Nov 2020 20:02:48 +0000 (07:02 +1100)]
Merge pull request #18958 from alifrumin/5.32rn
[NFC ] 5.32 Release Notes - first pass
Alice Frumin [Mon, 9 Nov 2020 20:34:58 +0000 (14:34 -0600)]
5.32 release notes
Seamus Lee [Wed, 11 Nov 2020 03:57:09 +0000 (14:57 +1100)]
Merge pull request #18955 from totten/5.32-oauth-return
dev/core#2141 - Tighten up new page `civicrm/oauth-client/return`
Tim Otten [Tue, 10 Nov 2020 22:25:21 +0000 (14:25 -0800)]
dev/core#2141 - Tighten up new page `civicrm/oauth-client/return`
Overview
--------
The route `civicrm/oauth-client/return` is added in 5.32 as the main "Redirect URL".
In normal usage, the page shouldn't be visible to a user (because the
developer should define some alternative UI) -- but one might see it (a)
during development, (b) if there's an error, or (c) if a clever user mucks
about.
Improvements:
* Error handling
* Present error messages more nicely
* Record errors in the log
* Report more info via hook_oauthReturnError
* Other UI
* Redact token details (dependent upon permission `manage OAuth client secrets`)
* Set a more sensibile page title
* Make output blobs conditional and collapsible
Seamus Lee [Tue, 10 Nov 2020 20:46:48 +0000 (07:46 +1100)]
Merge pull request #18948 from aydun/core#2172
core#2172 - Fix 'Find Respondents' in CiviCampaigns
Seamus Lee [Tue, 10 Nov 2020 10:13:35 +0000 (21:13 +1100)]
Merge pull request #18953 from civicrm/5.32
5.32
Seamus Lee [Tue, 10 Nov 2020 06:53:25 +0000 (17:53 +1100)]
Merge pull request #18951 from totten/5.32-ms-imap
dev/mail#79 - Fix MS Exchange/IMAP. Use OpenID Connect.
Tim Otten [Tue, 10 Nov 2020 00:47:50 +0000 (16:47 -0800)]
dev/mail#79 - Use OpenID Connect with MS Exchange
At time of writing, there appears to be a problem in Microsoft's services:
if you request both `User.Read` and `IMAP.AccessAsUser.All`, then the token
does not actually work for IMAP access.
However, it is does work to combine `openid` and `IMAP.AccessAsUser.All`.
This patch revises the MS Exchange definition to get resource-owner details
via OpenID Connect's `id_token`.
Tim Otten [Tue, 10 Nov 2020 00:43:39 +0000 (16:43 -0800)]
dev/mail#79 - Add option to get resource-owner via OpenID Connect
At time of writing, there appears to be a problem in Microsoft's services:
if you request both `User.Read` and `IMAP.AccessAsUser.All`, then the token
does not actually work for IMAP access.
However, it is does work to combine `openid` and `IMAP.AccessAsUser.All`.
This patch to CiviGenericProvider makes it easier to get resource-owner
details via OpenID Connect's `id_token`.
Seamus Lee [Tue, 10 Nov 2020 00:25:51 +0000 (11:25 +1100)]
Merge pull request #18949 from colemanw/legacyAutocomplete
APIv3 - Fix legacy handling for html_type Autocomplete-Select
Coleman Watts [Mon, 9 Nov 2020 21:44:49 +0000 (16:44 -0500)]
Fix legacy handling for html_type Autocomplete-Select
Legacy handling was returning "Autocomplete-Multi-Select" which was never a real html_type.
Aidan Saunders [Mon, 9 Nov 2020 21:35:08 +0000 (21:35 +0000)]
Fix SQL
Matthew Wire [Mon, 9 Nov 2020 14:38:46 +0000 (14:38 +0000)]
Merge pull request #18946 from eileenmcnaughton/if
Remove always true if
Matthew Wire [Mon, 9 Nov 2020 14:31:14 +0000 (14:31 +0000)]
Merge pull request #18947 from eileenmcnaughton/pps
dev/financial#148 dev/financial#148 Copy contents of validateDate onto paypalIPN
Seamus Lee [Mon, 9 Nov 2020 09:29:37 +0000 (20:29 +1100)]
Merge pull request #18819 from eileenmcnaughton/import
Minor code cleanup - dedupe isNull checks
eileen [Sun, 8 Nov 2020 23:56:52 +0000 (12:56 +1300)]
dev/financial#148 Copy contents of validateDate onnto paypalIPN
This code isn't really that shared & it can be simplified by NOT sharing it
eileen [Sun, 8 Nov 2020 23:46:54 +0000 (12:46 +1300)]
Remove always true if
By the time the code reaches this point contributionParams['contribution_recur_id']
must be set. We can confirm this by the fact the call to getTemplateContribution
requires id to be passed in and uses it in a lookup. Also the
code just before repeatTransaction ensures it is called
Matthew Wire [Sun, 8 Nov 2020 14:46:55 +0000 (14:46 +0000)]
Merge pull request #18934 from eileenmcnaughton/aip
Remove always-true if
Matthew Wire [Sun, 8 Nov 2020 14:46:14 +0000 (14:46 +0000)]
Merge pull request #18935 from eileenmcnaughton/pps
[REF] Minor variable cleanup
Matthew Wire [Sun, 8 Nov 2020 14:45:48 +0000 (14:45 +0000)]
Merge pull request #18936 from eileenmcnaughton/ppp
[Ref] Use variables directly
Seamus Lee [Sat, 7 Nov 2020 23:02:09 +0000 (10:02 +1100)]
Merge pull request #18944 from civicrm/5.32
5.32
Seamus Lee [Sat, 7 Nov 2020 19:41:22 +0000 (06:41 +1100)]
Merge pull request #18945 from agh1/5.32.0-releasenotes-fixedinitial
5.32.0 release notes initial run
Andrew Hunt [Sat, 7 Nov 2020 15:38:35 +0000 (10:38 -0500)]
5.32.0 release notes: added boilerplate
Andrew Hunt [Sat, 7 Nov 2020 15:35:43 +0000 (10:35 -0500)]
5.32.0 release notes: raw from script
Tim Otten [Sat, 7 Nov 2020 06:25:15 +0000 (22:25 -0800)]
Merge pull request #18943 from totten/5.32-token-inspect
dev/core#2141 - Multiple revisions to new screen for inspecting OAuth tokens
Seamus Lee [Sat, 7 Nov 2020 02:00:12 +0000 (13:00 +1100)]
Merge pull request #18942 from civicrm/5.32
5.32
Tim Otten [Thu, 5 Nov 2020 08:01:09 +0000 (00:01 -0800)]
dev/core#2141 - Multiple revisions to new screen for inspecting OAuth tokens
Overview
--------
5.32 adds `oauth-client`, which includes a screen for inspecting OAuth
tokens. This is intended to facilitate debugging.
Before
------
* The screen works for inspecting one token. It offers a button to inspect other tokens, but it doesn't work.
* The screen only shows the `access_token` (and its JWT variant)
After
-----
* The malfunctioning button isn't needed. Remove it.
* The screen shows a full record of the token details. This should make it even more useful for debuggin.
Seamus Lee [Fri, 6 Nov 2020 22:23:46 +0000 (09:23 +1100)]
Merge pull request #18940 from seamuslee001/5.32
[REF] Update composer patches to 1.7.0 to support composer 2.x
Seamus Lee [Fri, 6 Nov 2020 20:18:03 +0000 (07:18 +1100)]
[REF] Update composer patches to 1.7.0 to support composer 2.x
CiviCRM [Fri, 6 Nov 2020 06:35:30 +0000 (06:35 +0000)]
Set version to 5.33.alpha1
CiviCRM [Fri, 6 Nov 2020 06:28:28 +0000 (06:28 +0000)]
Set version to 5.32.beta1
Eileen McNaughton [Fri, 6 Nov 2020 02:47:57 +0000 (15:47 +1300)]
Merge pull request #18868 from sunilpawar/logging_date
get log date from tables available in query with data instead of last table
Eileen McNaughton [Fri, 6 Nov 2020 02:35:01 +0000 (15:35 +1300)]
Merge pull request #18851 from ixiam/dev_issue#2142
Adds performance improvement when browsing the report logs
Eileen McNaughton [Fri, 6 Nov 2020 02:10:27 +0000 (15:10 +1300)]
Merge pull request #18913 from tvartom/master
Make civicrm-setup work with a unix-socket for database connection
colemanw [Fri, 6 Nov 2020 00:50:49 +0000 (19:50 -0500)]
Merge pull request #18932 from colemanw/schemaHandler
Schema handler fixes
eileen [Fri, 6 Nov 2020 00:06:44 +0000 (13:06 +1300)]
[Ref] Use variables directly
eileen [Thu, 5 Nov 2020 23:58:07 +0000 (12:58 +1300)]
[REF] Minor variable cleanup
This continues the process of using the variables we have loaded within the IPN
rather than those that were loaded onto objects FROM the ones loaded in this IPN
eileen [Thu, 5 Nov 2020 23:47:15 +0000 (12:47 +1300)]
Remove always-true if
AuthorizeNet ipn is only called from
CRM_Core_Payment_AuthorizeNet::handlePaymentNotification and the deprecated
AuthorizeNetIPN file in extern
(and tests)
No parameter is ever passed to the function so component is always
'contribute' & hence we can stop checking it & remove the IF that checks it
Seamus Lee [Thu, 5 Nov 2020 22:46:44 +0000 (09:46 +1100)]
Merge pull request #18931 from seamuslee001/master
5.31
Seamus Lee [Thu, 5 Nov 2020 22:45:31 +0000 (09:45 +1100)]
Merge in 5.31
Eileen McNaughton [Thu, 5 Nov 2020 22:40:19 +0000 (11:40 +1300)]
Merge pull request #18925 from totten/5.31-revert-titlereq
dev/translation#58 - Fix regression. Partially revert schema for civicrm_group.title
Coleman Watts [Thu, 5 Nov 2020 22:36:52 +0000 (17:36 -0500)]
CustomField - simplify tableName lookup during bulkSave and fix bug
This cleans up the tableName lookup to use the method used throughout this class.
The extra optimization (local caching in the $tables variable) was actually less efficient
because CRM_Core_DAO::getFieldValue caches its results, and is used elsewhere so the value
is likely to already be cached.
The bug is that the same table name was repeatedly being passed into $logging->fixSchemaDifferencesFor().
Coleman Watts [Thu, 5 Nov 2020 22:31:35 +0000 (17:31 -0500)]
SchemaHandler - Remove unused/deprecated function
Matthew Wire [Thu, 5 Nov 2020 21:53:29 +0000 (21:53 +0000)]
Merge pull request #18930 from MegaphoneJon/financial-156
closes financial/#156: Set contribution status to refunded even if cancelled_payment_id is set
Jon Goldberg [Thu, 5 Nov 2020 19:24:38 +0000 (14:24 -0500)]
closes financial/#156: Set contribution status to refunded even if cancelled_payment_id is set
colemanw [Thu, 5 Nov 2020 18:07:29 +0000 (13:07 -0500)]
Merge pull request #18928 from demeritcowboy/left-right-up-down
dev/core#2167 - Fulltext search drupal block has button on wrong side
colemanw [Thu, 5 Nov 2020 18:07:13 +0000 (13:07 -0500)]
Merge pull request #18927 from demeritcowboy/del-mail
dev/core#2166 - E_NOTICE when deleting mail account
demeritcowboy [Thu, 5 Nov 2020 15:12:36 +0000 (10:12 -0500)]
button placement on fulltext search drupal block
demeritcowboy [Thu, 5 Nov 2020 14:43:34 +0000 (09:43 -0500)]
avoid notice / skip validation when deleting
Tim Otten [Thu, 5 Nov 2020 11:59:23 +0000 (03:59 -0800)]
dev/translation#58 - 5.31.beta2 - Undo 'NOT NULL'
CiviCRM [Thu, 5 Nov 2020 11:58:32 +0000 (03:58 -0800)]
Set version to 5.31.beta2
Tim Otten [Thu, 5 Nov 2020 11:39:32 +0000 (03:39 -0800)]
dev/translation#58 - Partially revert schema for civicrm_group.title
Eileen McNaughton [Thu, 5 Nov 2020 07:20:02 +0000 (20:20 +1300)]
Merge pull request #18911 from totten/master-mail-test
dev/mail#2141 - MailSettings - Add button+API for testing a connection
Eileen McNaughton [Wed, 4 Nov 2020 22:50:40 +0000 (11:50 +1300)]
Merge pull request #18923 from civicrm/5.31
5.31 to master
Eileen McNaughton [Wed, 4 Nov 2020 22:50:11 +0000 (11:50 +1300)]
Merge pull request #18921 from agh1/5.31.0-releasenotes-final
5.31.0 release notes final
Eileen McNaughton [Wed, 4 Nov 2020 19:45:48 +0000 (08:45 +1300)]
Merge pull request #18917 from mattwire/financialtrxn_payprocid
Add UI metadata for payment_processor_id on financialTrxn
Andrew Hunt [Wed, 4 Nov 2020 19:36:05 +0000 (14:36 -0500)]
5.31.0 release notes: added late changes
Andrew Hunt [Wed, 4 Nov 2020 18:58:05 +0000 (13:58 -0500)]
5.31.0 release notes: misc edits
colemanw [Wed, 4 Nov 2020 13:55:08 +0000 (08:55 -0500)]
Merge pull request #18907 from alifrumin/2139
dev/core#2139 fix defaulting for multi-select custom fields
Eileen McNaughton [Wed, 4 Nov 2020 06:14:49 +0000 (19:14 +1300)]
Merge pull request #18919 from colemanw/searchKitValidate
Search ext: Fix validation and saving on search admin screen
lasse [Wed, 4 Nov 2020 05:18:22 +0000 (06:18 +0100)]
Civi\Setup\DbUtil Fix CodeStyle
Coleman Watts [Wed, 4 Nov 2020 03:25:58 +0000 (22:25 -0500)]
Search ext: Fix validation and saving on search admin screen
Matthew Wire [Tue, 3 Nov 2020 22:02:28 +0000 (22:02 +0000)]
Add UI metadata for payment_processor_id on financialTrxn
Eileen McNaughton [Tue, 3 Nov 2020 19:39:49 +0000 (08:39 +1300)]
Merge pull request #18914 from totten/master-auth-client
dev/core#2141 - Add "oauth-client" extension (hidden)
Eileen McNaughton [Tue, 3 Nov 2020 19:34:49 +0000 (08:34 +1300)]
Merge pull request #18864 from demeritcowboy/logz
dev/core#2148 - Incorrect use of ts, quotes, escape in log call
Vangelis Pantazis [Tue, 3 Nov 2020 17:29:08 +0000 (17:29 +0000)]
Adds performance improvement when browsing the logs
colemanw [Tue, 3 Nov 2020 17:10:49 +0000 (12:10 -0500)]
Merge pull request #18915 from colemanw/entityPaths2
Use standard names for entity paths and add a few more paths
colemanw [Tue, 3 Nov 2020 16:44:34 +0000 (11:44 -0500)]
Merge pull request #18910 from totten/master-error-log
CRM_Core_Error::formatFooException - Don't bomb on 'Error'
Coleman Watts [Tue, 3 Nov 2020 14:32:38 +0000 (09:32 -0500)]
Use standard names from CRM_Core_Action for entity paths and add a few more paths
For the sake of consistency, this changes the newly-added entity paths to follow the naming convention in CRM_Core_Action:
add/update/view/delete
instead of create/edit/view/delete
colemanw [Tue, 3 Nov 2020 14:07:00 +0000 (09:07 -0500)]
Merge pull request #18909 from colemanw/searchDisplay2
Search ext: Add links to search admin and improve links in displays
Tim Otten [Tue, 3 Nov 2020 12:25:43 +0000 (04:25 -0800)]
oauth-client - Add basic UI to inspect/debug JWT-based tokens
Tim Otten [Tue, 3 Nov 2020 03:36:14 +0000 (19:36 -0800)]
dev/core#2141 - AuthorizationCode - Validate that the final return URL is internal
Tim Otten [Tue, 3 Nov 2020 01:08:20 +0000 (17:08 -0800)]
oauth-client - Add menu item ("Admin: System Settings: OAuth")
Tim Otten [Mon, 2 Nov 2020 06:17:06 +0000 (22:17 -0800)]
dev/core#2141 - Basic UI for CRUD'ing clients
Tim Otten [Mon, 2 Nov 2020 22:44:49 +0000 (14:44 -0800)]
oauth-client - Mark extension as hidden
Tim Otten [Mon, 2 Nov 2020 09:41:13 +0000 (01:41 -0800)]
dev/core#2141 - Set prompt=select_account whenever using MailSetup
If you're an admin setting up an email return-channel, then you may not
intend to use your normal email account. It makes sense to always prompt
for the preferred account.
Tim Otten [Sat, 31 Oct 2020 01:39:21 +0000 (18:39 -0700)]
dev/core#2141 - If a mail-store has an OAuth2 token, then use it
Tim Otten [Fri, 30 Oct 2020 08:39:58 +0000 (01:39 -0700)]
dev/core#2141 - Allow OAuth2 services to define mail setup routine
Overview
--------
For certain types of mail accounts -- such as Google Mail and Microsoft
Exchange Online -- the setup process may require interaction with a remote
web-service.
If you have OAuth2 enabled for one of these services, then this will create
an option for "Add Mail Account".
Before
------
There is no setup procedure.
After
-----
* Navigate to "Administer => CiviMail => Mail Accounts".
* Below the table, there is a select2 box for "Add Mail Account".
* If "Microsoft Exchange Online" is configured, then it will appear in the dropdown. Choose it.
* It redirects to MS to get authorization from the user (OAuth2 Authorization Code).
* The user comes back.
* We initialize a new mail account (`MailSettings` / `civicrm_mail_settings`)
* We accept the code and save the token (`OAuthSysToken`) with the account.
* We redirect to the account configuration form.
Technical Details
-----------------
The new mail account will have some details, such as `server`, `protocol`,
and `username` pre-filled. This uses a template -- see e.g.
`providers/ms-exchange.dist.json` (`mailSettingsTemplate`).
Tim Otten [Fri, 30 Oct 2020 07:13:35 +0000 (00:13 -0700)]
dev/core#2141 - AuthorizationGrant - Upon return, emit hook & possible redirect
Tim Otten [Fri, 30 Oct 2020 00:58:01 +0000 (17:58 -0700)]
dev/core#2141 - Add support for token-tagging to all grant flows
Suppose you have a downstream app/module -- such as the Civi-IMAP app/module. It needs to store a notation which says
"this thing in our data" (e.g. `civicrm_mail_settings`) "corresponds to that token in the OAuth data".
It can put a tag on the token (`tag=civicrm_mail_settings:123`) and use that for lookup
```
$tag = `OAuthSysToken.refresh +w tag=civicrm_mail_settings:123`
```
The advantage of this is that it's simple, flexible, and doesn't require new schema.
Of course, it's not end-all/be-all. It's OK for 1:1 relationship. But if
you want 1:M or M:M, then you'll have to model that as something else. But
for basic usage, tags are simple and moderately flexible.
Tim Otten [Thu, 29 Oct 2020 01:47:42 +0000 (18:47 -0700)]
dev/core#2141 - Add "local-redir" stub for use as OAuth2 "Redirect URL"
If you are developing on a local HTTP system with virtual hosts, then many
OAuth2 services won't recognize it as a local/dev URL.
The "local-redir.sh" script runs a stub service that will be accepted as
a local/dev "Redirect URL".
Tim Otten [Wed, 28 Oct 2020 22:32:05 +0000 (15:32 -0700)]
dev/core#2141 - APIv4 - Add `OAuthClient.clientCredential` authentication
Tim Otten [Wed, 28 Oct 2020 21:05:03 +0000 (14:05 -0700)]
dev/core#2141 - APIv4 - Add `OAuthClient.userPassword` authentication
Tim Otten [Wed, 28 Oct 2020 08:39:15 +0000 (01:39 -0700)]
dev/core#2141 - APIv4 - Add OAuthSysToken.refresh action
Tim Otten [Wed, 28 Oct 2020 09:28:24 +0000 (02:28 -0700)]
dev/core#2141 - APIv4 - Add `OAuthClient.authorizationCode` authentication
Tim Otten [Thu, 29 Oct 2020 00:08:29 +0000 (17:08 -0700)]
dev/core#2141 - Update 'oauth2.league' to respect setting 'oauthClientRedirectUrl'
Tim Otten [Tue, 27 Oct 2020 13:15:43 +0000 (06:15 -0700)]
dev/core#2141 - Add services 'oauth2.league' and 'oauth2.token'
Tim Otten [Tue, 27 Oct 2020 12:20:38 +0000 (05:20 -0700)]
dev/core#2141 - APIv4 - Expands tests for OAuthSysToken
Tim Otten [Tue, 27 Oct 2020 11:16:10 +0000 (04:16 -0700)]
dev/core#2141 - APIv4 - Validate OAuthClient.provider property
Tim Otten [Tue, 27 Oct 2020 00:34:12 +0000 (17:34 -0700)]
dev/core#2141 - APIv4 - Add OAuthClient & OAuthSysToken with unit-test
Tim Otten [Fri, 23 Oct 2020 05:46:03 +0000 (22:46 -0700)]
dev/core#2141 - Schema - Add OAuthClient and OAuthSysToken
Depends on OAuthProvider and permissions ('manage OAuth client' and 'manage OAuth client secrets')
Tim Otten [Fri, 30 Oct 2020 09:04:37 +0000 (02:04 -0700)]
dev/core#2141 - Split OAuthProvider files into subdirs. Use long cache.
Tim Otten [Tue, 27 Oct 2020 10:02:28 +0000 (03:02 -0700)]
dev/core#2141 - APIv4 - Add OAuthProvider.get w/test. Split dist/local/test lists.
Tim Otten [Mon, 26 Oct 2020 23:28:36 +0000 (16:28 -0700)]
dev/core#2141 - Permissions - Define 'manage OAuth client' and 'manage OAuth client secrets'