Seamus Lee [Tue, 3 Sep 2019 22:45:17 +0000 (08:45 +1000)]
Merge pull request #15156 from eileenmcnaughton/dedupe5
Replace some calls to CRM_Core_Error::fatal with exceptions
colemanw [Tue, 3 Sep 2019 18:45:56 +0000 (14:45 -0400)]
Merge pull request #15204 from pradpnayak/CacheTitle
Added field title for Cache table
Matthew Wire [Tue, 3 Sep 2019 09:55:52 +0000 (10:55 +0100)]
Merge pull request #15196 from eileenmcnaughton/dedupe_api
dev/core#1230 [Dedupe] Add new api option to getduplicates, permitting a new search to be forced.
Pradeep Nayak [Tue, 3 Sep 2019 09:08:55 +0000 (10:08 +0100)]
Added field title for Cache table
Eileen McNaughton [Tue, 3 Sep 2019 07:09:59 +0000 (19:09 +1200)]
Merge pull request #15198 from seamuslee001/member_report_upgrade_step
Ensure all report templates switch the filter field_name from join_da…
Seamus Lee [Tue, 3 Sep 2019 06:30:06 +0000 (16:30 +1000)]
Merge pull request #15200 from eileenmcnaughton/date_field
Re-remove pledge & member fields from the legacy date list
eileen [Tue, 3 Sep 2019 05:28:29 +0000 (17:28 +1200)]
Re-remove pledge & member fields from the legacy date list
Eileen McNaughton [Tue, 3 Sep 2019 05:25:24 +0000 (17:25 +1200)]
Merge pull request #15199 from civicrm/5.17
5.17 to master
Eileen McNaughton [Tue, 3 Sep 2019 05:24:51 +0000 (17:24 +1200)]
Merge pull request #15197 from eileenmcnaughton/5.17
[NFC] comment fixes
Eileen McNaughton [Tue, 3 Sep 2019 05:24:11 +0000 (17:24 +1200)]
Merge pull request #15194 from eileenmcnaughton/517_dates
Fix failure to save relative dates on legacy fields
Seamus Lee [Tue, 3 Sep 2019 02:07:50 +0000 (12:07 +1000)]
Ensure all report templates switch the filter field_name from join_date to be membership_join_date
eileen [Tue, 3 Sep 2019 01:47:36 +0000 (13:47 +1200)]
[NFC] comment fixes
Seamus Lee [Tue, 3 Sep 2019 01:22:56 +0000 (11:22 +1000)]
Merge pull request #15177 from seamuslee001/member_fields_datepicker_conversion
[Date picker][REF] Convert jcalendar date fields to date picker on me…
eileen [Mon, 2 Sep 2019 22:50:37 +0000 (10:50 +1200)]
Fix failure to save relative dates on legacy fields
Seamus Lee [Mon, 2 Sep 2019 23:50:07 +0000 (09:50 +1000)]
Alter smartGroup conversion array to match 5.15 standard of groups and add in unit test of problem with mulitple relative dates in the one smart group
Fix test that was just added by moving assigning of fieldPossibilities lower
Seamus Lee [Mon, 2 Sep 2019 22:22:33 +0000 (08:22 +1000)]
Fix join_date in batch forms and in report filters
Seamus Lee [Sat, 31 Aug 2019 07:09:05 +0000 (17:09 +1000)]
[Date picker][REF] Convert jcalendar date fields to date picker on member search screen
Ensure that relative fields are handled as per newer handling
Update to eileen's metadata date_query functions and fix template
Fix upgrade by including each of the 3 separate field names
eileen [Tue, 3 Sep 2019 00:13:36 +0000 (12:13 +1200)]
Add new api option to getduplicates, permitting a new search to be forced.
Per the inbuilt screen, sometimes there is a need to clear the cached duplicates & reload - e.g because more have been
created in the mean time.
Eileen McNaughton [Mon, 2 Sep 2019 20:58:06 +0000 (08:58 +1200)]
Merge pull request #15185 from eileenmcnaughton/dedupe10
Incorporate searchLimit in dedupe cacheKey
Eileen McNaughton [Mon, 2 Sep 2019 20:56:55 +0000 (08:56 +1200)]
Merge pull request #15160 from eileenmcnaughton/dedupe8
Fix inconsistencies in duplicate retrieval
Seamus Lee [Mon, 2 Sep 2019 20:54:59 +0000 (06:54 +1000)]
Merge pull request #15191 from eileenmcnaughton/pledge_high_low
Use metadata for pledgeDateRange fields
eileen [Sun, 1 Sep 2019 23:34:02 +0000 (11:34 +1200)]
Incorporate searchLimit in dedupe cacheKey
When accessing dedupes by the api call or on the dedupe screen it's possible to pass in
a searchLimit param. This works like the group limit in that it limits the number of
contacts for whom a match is sought. For example if there are 2million contacts in the database
and you have a search limit of 0 then it will look for duplicates for all 2 million. (unset
is the same as 0). If you have a search limit of 1000 it will look for matches for the first
1000 contacts that match the criteria (criteria could be the group or other criteria passed in
via the url although the api is the most obvious way to pass in criteria)
Note there is a separate limit (sometimes called batch limit) that limits results from within
the found matches.
To test the searchLimit it is possible to add limit=5 to the url generated in the
url by findContacts. Without this patch changing the limit once the search has been done
will not alter the results as the limit is not part of the cachekey - this patch
changes that.
Eileen McNaughton [Mon, 2 Sep 2019 20:49:11 +0000 (08:49 +1200)]
Merge pull request #15192 from demeritcowboy/locate-name-or-label-2
dev/core#1046 - simplify logic
DemeritCowboy [Mon, 2 Sep 2019 14:51:01 +0000 (10:51 -0400)]
simplify logic
eileen [Mon, 2 Sep 2019 12:51:25 +0000 (00:51 +1200)]
Use metadata for pledgeDateRange fields
This moves the date handling for date fields to a re-usable function
Eileen McNaughton [Mon, 2 Sep 2019 08:01:57 +0000 (20:01 +1200)]
Merge pull request #15186 from seamuslee001/member_fields_xml_change
Update XML files for membership fields to support date picker conversion
Eileen McNaughton [Mon, 2 Sep 2019 07:13:42 +0000 (19:13 +1200)]
Merge pull request #15182 from demeritcowboy/locate-name-or-label
dev/core#1046 - allow for the real "name" to be specified in xml
Seamus Lee [Mon, 2 Sep 2019 06:38:44 +0000 (16:38 +1000)]
Merge pull request #15183 from eileenmcnaughton/import_names
[REF] Import - minor cleanup - generate js on the processor class
Seamus Lee [Mon, 2 Sep 2019 04:21:18 +0000 (14:21 +1000)]
Update XML files for membership fields to support date picker conversion
Seamus Lee [Mon, 2 Sep 2019 03:44:31 +0000 (13:44 +1000)]
Merge pull request #15170 from seamuslee001/pledge_date_picker_conversion
Convert pledge date fields to use datepicker rather than jcalendar
eileen [Sun, 1 Sep 2019 22:10:54 +0000 (10:10 +1200)]
[REF] Import - generate js on the processor class
This moves the js calculation to the processor class for some of the function and simplifies it
so that the concatenation is done at the end.
Test cover is very solid on this
Seamus Lee [Sun, 1 Sep 2019 01:57:28 +0000 (11:57 +1000)]
Ensure that relative dates are handled in the newer way
Seamus Lee [Fri, 30 Aug 2019 22:49:45 +0000 (08:49 +1000)]
Convert pledge date fields to use datepicker rather than jcalendar
Add support for url variables
Standardise search form as per contribute form
Add in pledge payment xml change
DemeritCowboy [Sun, 1 Sep 2019 16:57:53 +0000 (12:57 -0400)]
dev/core#1046
colemanw [Sun, 1 Sep 2019 15:25:52 +0000 (11:25 -0400)]
Merge pull request #15180 from seamuslee001/pledge_xml_changes
Update Pledge XML to support date picker conversion
colemanw [Sun, 1 Sep 2019 15:25:19 +0000 (11:25 -0400)]
Merge pull request #15179 from eileenmcnaughton/import_names
Extend loadSavedMapping to check defaults
Seamus Lee [Sun, 1 Sep 2019 02:20:23 +0000 (12:20 +1000)]
[NFC] Update Pledge XML to support date picker conversion
Update unit tests to match new schema
eileen [Sun, 1 Sep 2019 00:05:53 +0000 (12:05 +1200)]
Extend loadSavedMapping to check defaults
By using the metadata already available on the function we don't need to use a class param
and can simplify and test
Seamus Lee [Sat, 31 Aug 2019 22:03:46 +0000 (08:03 +1000)]
Merge pull request #15176 from civicrm/5.17
5.17
Seamus Lee [Sat, 31 Aug 2019 20:24:26 +0000 (06:24 +1000)]
Merge pull request #15169 from pradpnayak/relDateFixes
1226, fixed Change log relative date search for creating smart group
colemanw [Sat, 31 Aug 2019 18:37:52 +0000 (14:37 -0400)]
Merge pull request #15175 from eileenmcnaughton/mini
Someimes ya just gotta say enough already
Pradeep Nayak [Fri, 30 Aug 2019 20:31:01 +0000 (21:31 +0100)]
1226, fixed Change log relative date search for creating smart group
eileen [Sat, 31 Aug 2019 10:09:34 +0000 (22:09 +1200)]
Someimes ya just gotta say enough already
Seamus Lee [Sat, 31 Aug 2019 07:06:18 +0000 (17:06 +1000)]
Merge pull request #15173 from eileenmcnaughton/mini
[REF] Very minor code cleanup on import code with good test cover
Eileen McNaughton [Sat, 31 Aug 2019 04:50:50 +0000 (16:50 +1200)]
Merge pull request #15172 from colemanw/sendResponse
[NFC] Remove redundant annotation
eileen [Sat, 31 Aug 2019 04:41:16 +0000 (16:41 +1200)]
[REF] Very minor code cleanup on import.
The value is equal to the phone id if one exists or the processor id - this just
uses the processor function to grab it
Coleman Watts [Sat, 31 Aug 2019 01:34:39 +0000 (21:34 -0400)]
[NFC] Remove redundant annotation
colemanw [Sat, 31 Aug 2019 00:52:46 +0000 (20:52 -0400)]
Merge pull request #15130 from eileenmcnaughton/import_rel
[ref] [ import] Extend tests & simpler retrieval to relationship_type_id
Seamus Lee [Fri, 30 Aug 2019 23:47:20 +0000 (09:47 +1000)]
Merge pull request #15163 from colemanw/eventClone
[REF] Move clone template functionality from api to bao
Seamus Lee [Fri, 30 Aug 2019 22:03:32 +0000 (08:03 +1000)]
Merge pull request #15167 from mattwire/testRenewMembership_note
Add note about testRenewMembership failing on certain days
Eileen McNaughton [Fri, 30 Aug 2019 21:56:20 +0000 (09:56 +1200)]
Merge pull request #15119 from seamuslee001/fix_dashboard_domain_fk
Ensure that civicrm_dashboard has a foreign key to civicrm_domain
Seamus Lee [Fri, 30 Aug 2019 21:43:38 +0000 (07:43 +1000)]
Merge pull request #15099 from christianwach/lab-1200
Ensure Dashboard respects multiple Domains
colemanw [Fri, 30 Aug 2019 17:30:31 +0000 (13:30 -0400)]
Merge pull request #15155 from eileenmcnaughton/merge_perm
Use merge duplicate contacts as api permission for merging
colemanw [Fri, 30 Aug 2019 17:29:44 +0000 (13:29 -0400)]
Merge pull request #15157 from eileenmcnaughton/dedupe6
Adjust permissions on dedupe exception api to 'merge duplicate contacts'
Matthew Wire (MJW Consulting) [Fri, 30 Aug 2019 15:55:53 +0000 (16:55 +0100)]
Add note about testRenewMembership failing on certain days
eileen [Thu, 29 Aug 2019 04:15:53 +0000 (16:15 +1200)]
Fix inconsistencies in duplicate retrieval
Alternative to
https://github.com/civicrm/civicrm-core/pull/15158
and
https://github.com/civicrm/civicrm-core/pull/15153
fixing both the inconsistency & performance & making code more legible
Eileen McNaughton [Thu, 29 Aug 2019 21:04:07 +0000 (09:04 +1200)]
Merge pull request #15164 from mlutfy/ppIpnTranslation
Fix PayPalImpl Contribution Status PseudoConstant for non-English
Mathieu Lutfy [Thu, 29 Aug 2019 18:12:55 +0000 (14:12 -0400)]
Fix PayPalImpl Contribution Status PseudoConstant for non-English (use name, not label)
Mathieu Lu [Thu, 29 Aug 2019 18:10:17 +0000 (14:10 -0400)]
Merge pull request #15161 from vakeesan26/dev/core#1218
dev/core#1218 Fix Word Replacements on manage case Roles
Coleman Watts [Thu, 29 Aug 2019 16:11:07 +0000 (12:11 -0400)]
[REF] Move clone template functionality from api to bao
Vakeesan [Thu, 29 Aug 2019 11:34:24 +0000 (12:34 +0100)]
fix for dev/core#1218
Eileen McNaughton [Thu, 29 Aug 2019 04:34:03 +0000 (16:34 +1200)]
Merge pull request #15114 from eileenmcnaughton/weird2
Make sure inherited memberships are not themselves inherited
eileen [Thu, 29 Aug 2019 01:49:32 +0000 (13:49 +1200)]
Use merge duplicate contacts as api permission for merging
eileen [Thu, 29 Aug 2019 02:08:25 +0000 (14:08 +1200)]
Adjust permissions on dedupe exception api to 'merge duplicate contacts'
eileen [Thu, 29 Aug 2019 02:00:23 +0000 (14:00 +1200)]
Remove some calls to CRM_Core_Error::fatal for exceptions
Seamus Lee [Thu, 29 Aug 2019 00:53:11 +0000 (10:53 +1000)]
Merge pull request #15152 from eileenmcnaughton/dedupe
Open up permissions on Dedupe.getduplicates
eileen [Wed, 28 Aug 2019 22:59:18 +0000 (10:59 +1200)]
Open up permissions on Dedupe.getduplicates
Currently the action Dedupe.getduplicates is defaulting to 'administer CiviCRM'.
The function manages permissions internally (ie. you can't retrieve contacts you don't have permission to see)
so the function itself can have fairly open permissions - hence I went for 'access CiviCRM' rather than
'merge duplicate contacts' - it might even be argued this should be open & rely solely on contact ACLs but
I have not gone that far
This function is part of moving towards api based rather than form based logic. It is not in use in core yet
outside tests.
Tim Otten [Wed, 28 Aug 2019 21:36:06 +0000 (14:36 -0700)]
Merge pull request #15145 from colemanw/js
Better error handling in CRM_Utils_JS::decode
colemanw [Wed, 28 Aug 2019 12:14:33 +0000 (08:14 -0400)]
Merge pull request #15150 from demeritcowboy/teststatusbycasetype
[Test] Bring to life dormant test
Monish Deb [Wed, 28 Aug 2019 11:38:45 +0000 (17:08 +0530)]
Merge pull request #14892 from eileenmcnaughton/lines
dev/financial#40 add missing financial item when altering a radio amount
Monish Deb [Wed, 28 Aug 2019 11:38:35 +0000 (17:08 +0530)]
Merge pull request #14408 from eileenmcnaughton/payment
Switch recordAdditionalPayment fully over to api
eileen [Wed, 28 Aug 2019 08:35:29 +0000 (20:35 +1200)]
Add check to ensure only 3 rows
eileen [Sat, 27 Jul 2019 03:59:30 +0000 (15:59 +1200)]
dev/financial#40 add missing financial item when altering a radio amount
Monish Deb [Sat, 27 Jul 2019 02:25:22 +0000 (14:25 +1200)]
[test] dev/financial#40: Missing Financial type and Credit Account Code in Bookkeeping Transaction Report
Eileen McNaughton [Wed, 28 Aug 2019 08:31:03 +0000 (20:31 +1200)]
Merge pull request #15148 from totten/master-debower
distmaker - Finish migrating bower.json => composer.json
Eileen McNaughton [Wed, 28 Aug 2019 08:29:24 +0000 (20:29 +1200)]
Merge pull request #15149 from totten/master-d8json
(dev/release#9) distmaker - Report on head for commit civicrm-drupal-8
DemeritCowboy [Wed, 28 Aug 2019 07:02:30 +0000 (03:02 -0400)]
resurrect old test
Tim Otten [Wed, 28 Aug 2019 00:56:40 +0000 (17:56 -0700)]
(dev/release#9) distmaker - Report on head for commit civicrm-drupal-8
Overview
--------
The general goal is to produce tags for `civicrm-drupal-8` during the release
process.
The workflow for producing release tags is generally as follows:
* Run `distmaker` to prepare a release candidate (a collection of files - e.g.
`civicrm-5.18.0-drupal.tar.gz`, `civicrm-5.18.0-joomla.zip`, `civicrm-5.18.0.json`, etc).
Note that the JSON file describes the build (i.e. the list of inputs/git-commits and
outputs/tarballs).
* Use the candidate for `civihydra` testing (i.e. use the tarballs for normal GUI-based installation)
* If they work, then run `releaser` - which takes the release candidate files and:
* Pushes the tarballs out to CDNs
* Pushes the git tags to Github
Before
------
* The JSON report describes inputs from the following repos:
`civicrm-{backdrop,core,drupal,joomla,packages,wordpress}.git`
* To create a complete set of build artifacts, one should have file tree:
```
src/ (civicrm-core.git)
WordPress/ (civicrm-wordpress.git)
backdrop/ (civicrm-backdrop.git)
drupal/ (civicrm-drupal.git)
joomla/ (civicrm-joomla.git)
packages/ (civicrm-packages.git)
```
After
-----
* The JSON report *additionally* reports on `civicrm-drupal-8.git`
* To create a complete set of build artifacts, one should also have `drupal-8` in the tree:
```
src/ (civicrm-core.git)
WordPress/ (civicrm-wordpress.git)
backdrop/ (civicrm-backdrop.git)
drupal-8/ (civicrm-drupal-8.git)
drupal/ (civicrm-drupal.git)
joomla/ (civicrm-joomla.git)
packages/ (civicrm-packages.git)
```
Technical Details
-----------------
* To produce a report with the D8 commits, one needs have a copy of
`drupal-8/` (`civicrm-drupal-8.git`).
* However, `distmaker` can still be used without `drupal-8`. (As in the
past, so this is still: *if you're only building the Joomla zip file, then
you don't need the code for drupal-8 or WordPress*).
* There will be a separate patch to:
* Checkout `drupal-8` when CI does an automated build
* Use the JSON to create tags
Tim Otten [Tue, 27 Aug 2019 21:45:48 +0000 (14:45 -0700)]
distmaker - Finish migrating bower.json => composer.json
This is a follow-up to #15044 - since we don't have/need `bower.json`, it
doesn't make sense for `distmaker` to call `bower install`.
Coleman Watts [Tue, 27 Aug 2019 12:51:32 +0000 (08:51 -0400)]
Better error handling in CRM_Utils_JS::decode
eileen [Fri, 23 Aug 2019 02:43:17 +0000 (14:43 +1200)]
Make sure inherited memberships are not themselves inherited
In trying to make sense of the code / fix / test for https://github.com/civicrm/civicrm-core/pull/15062
I discovered the tests wouldn't pass due to a weird edge case where an individual inherited a membership
and that membership was inherited in turn via a relationship the individual had (with the same organization)
I don't believe that inheriting inherited memberships is an intentional feature & it DOEs cause issues
- this removes that possibility
Seamus Lee [Mon, 26 Aug 2019 22:05:16 +0000 (08:05 +1000)]
Merge pull request #15136 from eileenmcnaughton/batch_test
Add minimal test for testExportFinancialBatch
Seamus Lee [Mon, 26 Aug 2019 21:56:21 +0000 (07:56 +1000)]
Merge pull request #15141 from colemanw/permission
Code cleanup in CRM_Core_Permission::check
Eileen McNaughton [Mon, 26 Aug 2019 20:37:51 +0000 (08:37 +1200)]
Merge pull request #15140 from jaapjansma/issue_event_14
dev/event#14 Fix excessive cache clearing on creating an event
Coleman Watts [Mon, 26 Aug 2019 20:20:02 +0000 (16:20 -0400)]
Code cleanup in CRM_Core_Permission::check
Jaap Jansma [Mon, 26 Aug 2019 16:39:37 +0000 (18:39 +0200)]
Fixed issue #14
Eileen McNaughton [Mon, 26 Aug 2019 01:57:43 +0000 (13:57 +1200)]
Merge pull request #15004 from davejenx/dev-core-860-discount-line-items-fix2
dev/core/issues/860: discount not applied to line item: call buildAmount hook in CRM_Member_Form_Membership::submit().
eileen [Sun, 25 Aug 2019 14:26:44 +0000 (02:26 +1200)]
Add minimal test for testExportFinancialBatch
This adds the minimal test suggested as needed for https://github.com/civicrm/civicrm-core/pull/14621
In the process I needed to add some api defaults
Eileen McNaughton [Sun, 25 Aug 2019 21:04:21 +0000 (09:04 +1200)]
Merge pull request #15134 from mattwire/927_extractparticipant_membership
Extract cancelParticipant and cancelMembership functions in baseIPN
Matthew Wire [Sun, 25 Aug 2019 14:28:14 +0000 (15:28 +0100)]
Merge pull request #15113 from eileenmcnaughton/weird_stuff
[Ref] Extract addInheritedMembership
Matthew Wire (MJW Consulting) [Sun, 25 Aug 2019 10:06:28 +0000 (11:06 +0100)]
Extract cancelParticipant and cancelMembership functions in baseIPN
Eileen McNaughton [Sun, 25 Aug 2019 13:50:37 +0000 (01:50 +1200)]
Merge pull request #15030 from mattwire/changecasestatus_relationshipapi
Switch to relationship BAO when modifying relationships in change case status so we don't bypass hooks
Eileen McNaughton [Sun, 25 Aug 2019 13:15:44 +0000 (01:15 +1200)]
Merge pull request #15133 from mattwire/activityemail_extract
Extract function to create email activity when sending an email to contact
Matthew Wire (MJW Consulting) [Tue, 13 Aug 2019 16:15:24 +0000 (17:15 +0100)]
Switch to relationship API when modifying relationships in change case status so we don't bypass hooks
Matthew Wire (MJW Consulting) [Sun, 25 Aug 2019 09:43:33 +0000 (10:43 +0100)]
Extract function to create email activity when sending an email to contact
Eileen McNaughton [Sat, 24 Aug 2019 04:46:25 +0000 (16:46 +1200)]
Merge pull request #15129 from mattwire/refactor_baseipn_1
Initial refactor of BaseIPN
Eileen McNaughton [Sat, 24 Aug 2019 01:38:47 +0000 (13:38 +1200)]
Merge pull request #15123 from mattwire/fixhardcodedheadofhouseholdrelationship
Fix hardcoded ID for Head of Household relationship
colemanw [Sat, 24 Aug 2019 01:31:25 +0000 (21:31 -0400)]
Merge pull request #15044 from totten/master-composer-all-the-things
Migrate bower.json into composer.json via composer-downloads-plugin
eileen [Sat, 24 Aug 2019 00:01:58 +0000 (12:01 +1200)]
Extend tests & simpler retrieval to relationship_type_id
Seamus Lee [Sat, 24 Aug 2019 00:25:27 +0000 (10:25 +1000)]
Merge pull request #15128 from mattwire/minorcleanup
(dev/core#927) (NFC) Add comments to relate to gitlab ticket