joshgowans [Tue, 14 Apr 2020 05:02:49 +0000 (06:02 +0100)]
Archive text
Update intro text to archive contrib.txt in favor of recognizing contributors via the release notest.
Eileen McNaughton [Tue, 14 Apr 2020 01:04:38 +0000 (13:04 +1200)]
Merge pull request #17070 from eileenmcnaughton/msg_template
[NFC] Remove a handful of legacy svn notations
colemanw [Mon, 13 Apr 2020 23:55:56 +0000 (19:55 -0400)]
Merge pull request #17060 from eileenmcnaughton/dupefix
Dupe improve custom data handling
eileen [Mon, 13 Apr 2020 23:16:59 +0000 (11:16 +1200)]
[NFC] Remove a handful of legacy svn notations
eileen [Thu, 9 Apr 2020 05:58:31 +0000 (17:58 +1200)]
Dupe improve custom data handling
The current custom data handling code does the following
1) For normal single rows it first inserts a row. This has the impact of rendering the
update that follows meaningless (this was an intentional change). It then deletes the row.
Hence the upshot is simply that it deletes the row. A separate process transfers the custom
data for the row. In other words we are engaging in 3 queries with a fairly high chance of
causing deadlocks in order to just delete the row.
2) For single rows where the entity reference refers to the merged contact the row is
updated to refer to the merged contact (without the insert this works) and a further unnecessary delete follows
3) For custom groups supporting multiple rows the rows are updated to have the new entity id. An unnecessary delete follows.
This change only affects the first of these. I would like to, in a future PR, change UPDATE IGNORE to just UPDATE &
remove the unnecessary delete - with more testing.
Note that this does include a slight change of behaviour. Currently if ANY fields in a custom group
are transferred from one contact to another during merge the row is deleted (with all the custom fields in it).
However, if no fields in a set are deleted then the row is not deleted.
This felt like it was a bit short on consistency. If has a potential advantage from a DB size point of view (any
deleting is better than none) but it also increases the number of locking queries in a process that is fairly
prone to cause DB locks. Based on these considerations I didn't think it worth re-adding code complexity to
retain inconsistent deletion.
A note on tests - I pre-added a bunch of tests into _api3_ContactTest to cover the 3 scenarios above.
Eileen McNaughton [Mon, 13 Apr 2020 20:03:48 +0000 (08:03 +1200)]
Merge pull request #17063 from colemanw/api4limit
APIv4 - Fix setting offset with no limit
Coleman Watts [Mon, 13 Apr 2020 02:34:32 +0000 (22:34 -0400)]
APIv4 - Fix setting offset with no limit
The API treats 0 as "no limit" but mysql does not.
This allows setting an offset with no limit but applying the maximum possible row count, as mysql does not allow LIMIT NULL.
See https://stackoverflow.com/questions/255517/mysql-offset-infinite-rows
Eileen McNaughton [Mon, 13 Apr 2020 00:36:27 +0000 (12:36 +1200)]
Merge pull request #17057 from eileenmcnaughton/email3
[REF] move all functions associated with the submit function onto the Trait
eileen [Wed, 1 Apr 2020 03:52:20 +0000 (16:52 +1300)]
[REF] move all functions associated with the submit function onto the Trait
colemanw [Sat, 11 Apr 2020 23:22:53 +0000 (19:22 -0400)]
Merge pull request #17058 from eileenmcnaughton/mem
[NFC] Code cleanup around comments, strict comparison, formatting
colemanw [Sat, 11 Apr 2020 17:56:33 +0000 (13:56 -0400)]
Merge pull request #17050 from colemanw/one-time-binding
Improve AngularJS performance with one-time binding for static strings
eileen [Sat, 11 Apr 2020 03:15:34 +0000 (15:15 +1200)]
[NFC] Code cleanup around comments, strict comparison, formatting
Coleman Watts [Fri, 10 Apr 2020 01:47:43 +0000 (21:47 -0400)]
Improve AngularJS performance with one-time binding for static strings
Use one-time binding for all static strings being passed through ts().
This prevents unnecessary $watch expressions, making the digest loop faster.
See https://docs.angularjs.org/guide/expression#one-time-binding
Eileen McNaughton [Fri, 10 Apr 2020 22:31:00 +0000 (10:31 +1200)]
Merge pull request #17052 from eileenmcnaughton/email5
Duplicate EmailCommon::buildQuickForm onto the trait
Matthew Wire [Fri, 10 Apr 2020 14:15:38 +0000 (15:15 +0100)]
Merge pull request #17053 from eileenmcnaughton/ipn
Make transaction param optional in completeOrder
eileen [Fri, 10 Apr 2020 07:13:22 +0000 (19:13 +1200)]
Make transaction param optional in completeOrder
In all the places I checked passing in this param achieved nothing. Let's start by making it optional
Eileen McNaughton [Fri, 10 Apr 2020 05:25:00 +0000 (17:25 +1200)]
Merge pull request #17037 from eileenmcnaughton/dupe
[Test] Extend custom field test trait & some related tests
Eileen McNaughton [Fri, 10 Apr 2020 04:15:18 +0000 (16:15 +1200)]
Merge pull request #16957 from pradpnayak/importMappings
fixed mapping when using custom field for contact sub type
eileen [Thu, 9 Apr 2020 05:57:51 +0000 (17:57 +1200)]
[Test] Extend custom field test trait & some related tests
eileen [Wed, 1 Apr 2020 02:21:52 +0000 (15:21 +1300)]
Duplicate EmailCommon::buildQuickForm onto the trait
I have duplicated this code rather than moving it in case any non-core code calls it. We can remove in a bit
Eileen McNaughton [Fri, 10 Apr 2020 03:31:56 +0000 (15:31 +1200)]
Merge pull request #17049 from eileenmcnaughton/phone_array
[NFC] Fix use of pattern-hated-by-Coleman
Eileen McNaughton [Fri, 10 Apr 2020 01:40:26 +0000 (13:40 +1200)]
Merge pull request #17044 from yashodha/error
add filter for receipt date in contribution reports
eileen [Fri, 10 Apr 2020 01:38:07 +0000 (13:38 +1200)]
[NFC] Fix use of pattern-hated-by-Coleman
Since I tried to use this as an example of a 'tidy' hook call I'd better fix it
Eileen McNaughton [Fri, 10 Apr 2020 01:27:05 +0000 (13:27 +1200)]
Merge pull request #17048 from totten/master-upgr-nl-be
dev/translation#4 - Refine upgrade steps for modifying nl_NL
Seamus Lee [Fri, 10 Apr 2020 00:52:06 +0000 (10:52 +1000)]
Merge pull request #16772 from eileenmcnaughton/mem_tax
Fix bug where tax_amount is miscalculated on membership renewals
Eileen McNaughton [Thu, 9 Apr 2020 23:30:24 +0000 (11:30 +1200)]
Merge pull request #17047 from colemanw/api4exp
dev/report#31 - Api4 Explorer: Support SQL functions and HAVING clause
Tim Otten [Thu, 9 Apr 2020 22:28:48 +0000 (15:28 -0700)]
Merge pull request #17043 from davejenx/patch-1
Update 5.24.2.md - Fix version number in title.
Eileen McNaughton [Thu, 9 Apr 2020 21:45:36 +0000 (09:45 +1200)]
Merge pull request #17046 from MegaphoneJon/fix-ftaclcheck
core#1700 - Fix Financial ACL Report check
Tim Otten [Thu, 9 Apr 2020 21:41:08 +0000 (14:41 -0700)]
dev/translation#4 - Refine upgrade steps for modifying nl_NL
1. This adds a filter on `option_group_id` so that we don't modify unrelated OGs/OVs
2. Use simpler SQL semantics per https://docs.civicrm.org/dev/en/latest/framework/upgrade/#tips-prefer-simple-sql-semantics-over-apibaodao
Tim Otten [Thu, 9 Apr 2020 21:38:45 +0000 (14:38 -0700)]
CRM_Util_SQL - Add `interpolate()` helper
The `interpolate()` function is already available as the heart of
`CRM_Util_SQL_Insert` and `CRM_Utils_SQL_Select`, etc. This just makes it
easier to use for random SQL statements that don't have a full OOP model.
Seamus Lee [Thu, 9 Apr 2020 21:01:35 +0000 (07:01 +1000)]
Merge pull request #17027 from demeritcowboy/nl-be-upgrade
dev/translation#4 - Upgrade script for nl_BE
Matthew Wire [Thu, 9 Apr 2020 20:59:04 +0000 (21:59 +0100)]
Merge pull request #17011 from colemanw/noCount
Simplify groupContactCache - remove redundant query
Mathieu Lu [Thu, 9 Apr 2020 20:57:45 +0000 (16:57 -0400)]
Merge pull request #16987 from mattwire/casemissingtranslation
Add missing translations to case activity revisions
Seamus Lee [Thu, 9 Apr 2020 20:45:54 +0000 (06:45 +1000)]
Merge pull request #17024 from jitendrapurohit/core-1696
dev/core#1696 - Update attachment message on mailing form.
Coleman Watts [Thu, 9 Apr 2020 20:14:50 +0000 (16:14 -0400)]
APIv4 Explorer: support HAVING
Seamus Lee [Thu, 9 Apr 2020 20:41:09 +0000 (06:41 +1000)]
Merge pull request #17025 from civicrm/1697-set-is_deceased-to-not-null-in-schema-and-upgrade-script
set is_deceased to not null in schema and upgrade script dev/core#1697
Coleman Watts [Wed, 8 Apr 2020 20:34:57 +0000 (16:34 -0400)]
APIv4 Explorer - Support SQL functions
Adding "track by" to the loops is necessary so they aren't re-drawn during typing (causing the input to lose focus on every keystroke)
Jon Goldberg [Thu, 9 Apr 2020 20:19:26 +0000 (16:19 -0400)]
core#1700 - Fix Financial ACL Report check
Matthew Wire [Sat, 4 Jan 2020 12:59:39 +0000 (12:59 +0000)]
Add missing translations to case activity revisions
colemanw [Thu, 9 Apr 2020 16:35:56 +0000 (12:35 -0400)]
Merge pull request #17038 from totten/master-vermsg
Mitigate flaky test failure about "CRM_Utils_Check_Component_Env->checkVersion()"
Coleman Watts [Wed, 8 Apr 2020 18:37:55 +0000 (14:37 -0400)]
APIv4 Explorer - Use standard widget for SELECT
Coleman Watts [Wed, 8 Apr 2020 18:11:46 +0000 (14:11 -0400)]
APIv4 Explorer - Whitespace fix
Coleman Watts [Wed, 8 Apr 2020 18:07:29 +0000 (14:07 -0400)]
APIv4 Explorer - Get list of SQL functions
Coleman Watts [Wed, 8 Apr 2020 16:08:40 +0000 (12:08 -0400)]
APIv4 Explorer - Make WHERE clause code more generic, toward supporting HAVING
Coleman Watts [Wed, 8 Apr 2020 14:23:02 +0000 (10:23 -0400)]
APIv4 Explorer - Improve display of limit & offset params
colemanw [Thu, 9 Apr 2020 16:06:34 +0000 (12:06 -0400)]
Merge pull request #16888 from mattwire/addvarsanyregion
Allow adding variables to CRM.vars in any region
Michael McAndrew [Wed, 8 Apr 2020 09:40:14 +0000 (10:40 +0100)]
dev/core#1697 set is_deceased to not null in schema and upgrade script
yashodha [Thu, 9 Apr 2020 12:04:39 +0000 (17:34 +0530)]
add filter and sorting for receipt date in contribution reports
Jitendra Purohit [Wed, 8 Apr 2020 08:40:06 +0000 (14:10 +0530)]
dev/core#1696 - Update attachment message on mailing form.
davejenx [Thu, 9 Apr 2020 10:01:29 +0000 (11:01 +0100)]
Update 5.24.2.md
Fix version number in title.
Seamus Lee [Thu, 9 Apr 2020 09:33:06 +0000 (19:33 +1000)]
Merge pull request #17042 from civicrm/5.25
5.25
Tim Otten [Thu, 9 Apr 2020 07:21:03 +0000 (00:21 -0700)]
Merge pull request #17041 from seamuslee001/5.25
Add release-notes/5.24.2
Tim Otten [Thu, 9 Apr 2020 06:22:33 +0000 (23:22 -0700)]
Add release-notes/5.24.2
Tim Otten [Thu, 9 Apr 2020 04:20:40 +0000 (21:20 -0700)]
Mitigate flaky test failure about "CRM_Utils_Check_Component_Env->checkVersion()"
This function relies on an external data feed. If it fails to fetch the feed, then we
wind up with a PHP warning:
```
Invalid argument supplied for foreach() in CRM_Utils_Check_Component_Env->checkVersion()
(line 475 of /home/me/bknix/build/dmaster/web/sites/all/modules/civicrm/CRM/Utils/Check/Component/Env.php).
```
In certain unit-tests, this warning becomes a false-negative test-failure.
I saw these tests failing recently:
```
CRM_Contact_Page_View_UserDashBoardTest.testDashboardContentContributionsWithInvoicingEnabled
CRM_Contact_Page_View_UserDashBoardTest.testDashboardContentContributions
CRM_Core_Page_HookTest.testFormsCallBuildFormOnce
CRM_Core_Page_HookTest.testPagesCallPageRunOnce
```
Note that it is legit to have some QA signals if the web-service fials, but
that's more of a monitoring issue for the web-service. It shouldn't
manifest in random unit-tests or random page-views.
Eileen McNaughton [Thu, 9 Apr 2020 02:42:33 +0000 (14:42 +1200)]
Merge pull request #16976 from eileenmcnaughton/xfer
[REF] Extract transferParticipantRegistration function
Seamus Lee [Thu, 9 Apr 2020 01:35:07 +0000 (11:35 +1000)]
Merge pull request #16903 from eileenmcnaughton/settting_better
Allow setting metadata to use the `table` option. Update example setting `default_invoice_page`.
colemanw [Wed, 8 Apr 2020 23:29:38 +0000 (19:29 -0400)]
Merge pull request #16993 from eileenmcnaughton/emailget
Add / make fit for purpose email.getlist api call
Seamus Lee [Wed, 8 Apr 2020 23:28:03 +0000 (09:28 +1000)]
Merge pull request #17034 from mattwire/removeparamfromcompleteorder
REF Remove redundant param from completeOrder
Coleman Watts [Tue, 7 Apr 2020 17:33:58 +0000 (13:33 -0400)]
Simplify groupContactCache - remove redundant query
This was essentially running the same query twice, once with COUNT and then again with INSERT.
Should be ok to skip the count as the INSERT will do nothing if there are no results.
colemanw [Wed, 8 Apr 2020 23:20:07 +0000 (19:20 -0400)]
Merge pull request #17031 from eileenmcnaughton/email4
[REF] Update Contact email form to use the trait for EmailCommon functions
Seamus Lee [Wed, 8 Apr 2020 23:16:37 +0000 (09:16 +1000)]
Merge pull request #17035 from civicrm/5.25
5.25
Eileen McNaughton [Wed, 8 Apr 2020 22:27:21 +0000 (10:27 +1200)]
Merge pull request #17015 from colemanw/having
APIv4 - Add support for HAVING clause
Eileen McNaughton [Wed, 8 Apr 2020 22:12:09 +0000 (10:12 +1200)]
Merge pull request #17033 from seamuslee001/5.25
Revert "temp workaround for dev/core#1675"
Seamus Lee [Wed, 8 Apr 2020 22:04:50 +0000 (08:04 +1000)]
Merge pull request #17029 from eileenmcnaughton/email3
[REF] Move generic instances of listTokens to trait
Matthew Wire [Wed, 8 Apr 2020 17:01:36 +0000 (18:01 +0100)]
contribution is available in objects so use that instead of passing separately - it does not need to be passed by reference
Eileen McNaughton [Wed, 8 Apr 2020 21:49:04 +0000 (09:49 +1200)]
Merge pull request #16959 from ray-wright/patch-4
Add email link in case summary
Seamus Lee [Wed, 8 Apr 2020 21:28:14 +0000 (07:28 +1000)]
Merge pull request #17021 from totten/5.25-language-labels
CRM_Core_I18n - Provide a better label for new/unknown locales
Seamus Lee [Wed, 8 Apr 2020 21:20:48 +0000 (07:20 +1000)]
Revert "temp workaround for dev/core#1675"
This reverts commit
fcd23b884537a19ff2acbc98ca20a43f292c4c42.
Eileen McNaughton [Wed, 8 Apr 2020 21:05:07 +0000 (09:05 +1200)]
Merge pull request #17020 from eileenmcnaughton/dedupe1
Start using apiv4 in test setup
eileen [Wed, 1 Apr 2020 02:14:37 +0000 (15:14 +1300)]
[REF] Update Contact email form to use the trait for EmailCommon functions
eileen [Tue, 31 Mar 2020 22:37:49 +0000 (11:37 +1300)]
Move generic instances of listTokens to trait
ray-wright [Wed, 8 Apr 2020 20:09:48 +0000 (16:09 -0400)]
add client email link to manage case header
Yashodha Chaku [Wed, 8 Apr 2020 16:25:34 +0000 (21:55 +0530)]
Merge pull request #16899 from mlutfy/mailingReportView
Mailing Report: hide the HTML preview
demeritcowboy [Wed, 8 Apr 2020 15:26:23 +0000 (11:26 -0400)]
upgrade script for nl_BE
eileen [Wed, 8 Apr 2020 02:35:45 +0000 (14:35 +1200)]
Start using apiv4 in test setup
colemanw [Wed, 8 Apr 2020 12:09:23 +0000 (08:09 -0400)]
Merge pull request #17022 from eileenmcnaughton/test_updates
[NFC][Test] cleanup on customDataTrait for tests
colemanw [Wed, 8 Apr 2020 12:01:16 +0000 (08:01 -0400)]
Merge pull request #16954 from eileenmcnaughton/email4
[REF] Move generic preProcess function to the trait
Coleman Watts [Wed, 8 Apr 2020 00:43:12 +0000 (20:43 -0400)]
APIv4 - Add support for HAVING clause
eileen [Wed, 8 Apr 2020 04:37:43 +0000 (16:37 +1200)]
[NFC][Test] cleanup on customDataTrait for tests
eileen [Wed, 8 Apr 2020 02:26:39 +0000 (14:26 +1200)]
Enable test on merging country, it now works
Eileen McNaughton [Wed, 8 Apr 2020 04:58:21 +0000 (16:58 +1200)]
Merge pull request #17023 from civicrm/5.25
5.25 to master
Eileen McNaughton [Wed, 8 Apr 2020 04:57:48 +0000 (16:57 +1200)]
Merge pull request #17004 from pradpnayak/fixhookissue
Fixed fatal error for class not found when managed hook is invoked du…
Eileen McNaughton [Wed, 8 Apr 2020 04:45:57 +0000 (16:45 +1200)]
Merge pull request #17019 from eileenmcnaughton/dupe
[NFC] Minor code cleanups
Tim Otten [Wed, 8 Apr 2020 04:14:38 +0000 (21:14 -0700)]
CRM_Core_I18n - Provide a better label for new/unknown locales
Overview
--------
Suppose you add new/unrecognized data files in the `l10n` folder - and then
you navigate to the screen `civicrm/admin/setting/localization?reset=1`.
Before
------
The new language appears in the admin UI as a blank item.
Every page in the app displays a warning about the unrecognized locale.
After
-----
The new language appears in the admin UI with a placeholder name (based on the code).
The warnings are not displayed.
Comment
-------
We've just had an issue where a new language was added to the `l10n`
data-set, and then all automated test-suites for all versions (incl `5.25`
RC and `5.24` stable) started to throw blocker errors on unrelated PRs.
This is because the `l10n` data is generally evergreen, but each branch/tag
of `civicrm-core` has the list hard-coded in multiple spots.
This patch tries to make the symptom less painful when mixing/matching
different revisions of `civicrm-core.git` and `l10n.git`.
Eileen McNaughton [Wed, 8 Apr 2020 03:38:51 +0000 (15:38 +1200)]
Merge pull request #16837 from tunbola/case-api-case-clients
dev/core#1659: Fix Case.get API returning Case Clients As Part of Related Contacts
eileen [Wed, 8 Apr 2020 01:55:58 +0000 (13:55 +1200)]
[NFC] Minor code cleanups
Seamus Lee [Wed, 8 Apr 2020 01:53:52 +0000 (11:53 +1000)]
Merge pull request #17018 from civicrm/5.25
5.25
Seamus Lee [Wed, 8 Apr 2020 01:53:29 +0000 (11:53 +1000)]
Merge pull request #17014 from seamuslee001/nl_be_5_25
add nl_BE language
eileen [Mon, 6 Apr 2020 03:48:00 +0000 (15:48 +1200)]
Add / make fit for purpose email.getlist api call
The function CRM_Contact_Page_AJAX::getContactEmail is one of our earlier ajax attempts & this approach has been largely
replaced with entity Reference fields. In order to switch over we need to bring Email.getlist api to parity which means
1) searching on sortname first, if less than 10 results on emails include emails
2) appropriate respect for includeWildCardInName (this should already be in the generic getlist)
3) filter out on_hold, is_deceased, do_not_email
4) acl support (should already be part of the api).
The trickiest of these to support is the first - because we need to avoid using a non-performant OR
My current solution is the idea of a fallback field to search if the search results are less than the limit.
in most cases this won't require a second query but when it does it should be fairly quick.
Eileen McNaughton [Wed, 8 Apr 2020 01:43:17 +0000 (13:43 +1200)]
Merge pull request #17016 from eileenmcnaughton/dupe
[REF] Clarify variable & tighten use.
Seamus Lee [Wed, 8 Apr 2020 00:54:35 +0000 (10:54 +1000)]
Merge pull request #17013 from demeritcowboy/boo2
[REF] Use bool instead of boolean
eileen [Wed, 8 Apr 2020 00:46:36 +0000 (12:46 +1200)]
[REF] Clarify variable & tighten use.
moveContactBelongings is only called from one place which passes in all the function variables, so we don't need defaults.
The last parameter, is retrieved from self::getAffectedCustomTables which always returns an
array - so all the handling for it being NULL can be removed....
demeritcowboy [Thu, 2 Apr 2020 21:59:21 +0000 (17:59 -0400)]
add nl_BE language
colemanw [Wed, 8 Apr 2020 00:40:34 +0000 (20:40 -0400)]
Merge pull request #17012 from demeritcowboy/boo
[REF] Formatting and use bool instead of boolean
demeritcowboy [Tue, 7 Apr 2020 19:10:59 +0000 (15:10 -0400)]
formatting and bool vs boolean
demeritcowboy [Tue, 7 Apr 2020 19:16:34 +0000 (15:16 -0400)]
standard is bool instead of boolean
Pradeep Nayak [Tue, 7 Apr 2020 02:16:44 +0000 (03:16 +0100)]
Fixed fatal error for class not found when managed hook is invoked during upgrade
colemanw [Tue, 7 Apr 2020 17:05:36 +0000 (13:05 -0400)]
Merge pull request #17009 from colemanw/multi-cleanup5
[REF] CustomField code cleanup to use isSerialized method
colemanw [Tue, 7 Apr 2020 15:53:39 +0000 (11:53 -0400)]
Merge pull request #16968 from colemanw/multi-cleanup
[REF] CustomField code cleanup
Coleman Watts [Tue, 7 Apr 2020 15:27:51 +0000 (11:27 -0400)]
CustomField code cleanup to use isSerialized method