Merge pull request #11786 from seamuslee001/CRM-21835
[civicrm-core.git] / release-notes / 4.7.31.md
1 # CiviCRM 4.7.31
2
3 Released March 7, 2018
4
5 - **[Synopsis](#synopsis)**
6 - **[Features](#features)**
7 - **[Bugs resolved](#bugs)**
8 - **[Miscellany](#misc)**
9 - **[Credits](#credits)**
10 - **[Feedback](#feedback)**
11
12 ## <a name="synopsis"></a>Synopsis
13
14 | *Does this version...?* | |
15 |:--------------------------------------------------------------- |:-------:|
16 | Fix security vulnerabilities? | no |
17 | **Change the database schema?** | **yes** |
18 | **Alter the API?** | **yes** |
19 | **Require attention to configuration options?** | **yes** |
20 | **Fix problems installing or upgrading to a previous version?** | **yes** |
21 | **Introduce features?** | **yes** |
22 | **Fix bugs?** | **yes** |
23
24 ## <a name="features"></a>Features
25
26 ### Core CiviCRM
27
28 - **[CRM-21244](https://issues.civicrm.org/jira/browse/CRM-21244) Enhancements
29 to "FROM email addresses"
30 ([11047](https://github.com/civicrm/civicrm-core/pull/11047))**
31
32 A variety of changes have been made to the email addresses available as the
33 "From" address for system messages. The Organization Address and Contact Info
34 form no longer has a field for selecting the From email address--this is now
35 editable by choosing a default on the From Email Addresses page.
36
37 The PDF letter task now allows selecting the from email address.
38
39 You can also now choose whether to add the logged-in contact's email address
40 to the list of from email addresses. If users' addresses are from other
41 domains, they can have deliverability problems if the domain uses SPF or
42 DMARC.
43
44 Additionally, this refactors and centralizes a lot of the code regarding from
45 email addresses.
46
47 - **[CRM-21573](https://issues.civicrm.org/jira/browse/CRM-21573) Allow to
48 disable sending of email from activity source contact email for receipt
49 ([11424](https://github.com/civicrm/civicrm-core/pull/11424))**
50
51 Now activity notifications will not send from the source contact's email
52 address if the site is not set to allow emails from the logged-in contact.
53
54 - **[CRM-21719](https://issues.civicrm.org/jira/browse/CRM-21719) Require
55 Multibyte PHP Extension
56 ([11612](https://github.com/civicrm/civicrm-core/pull/11612) and
57 [11599](https://github.com/civicrm/civicrm-core/pull/11599))**
58
59 The Multibyte String PHP function support is now a requirement for installing
60 CiviCRM.
61
62 - **[CRM-21225](https://issues.civicrm.org/jira/browse/CRM-21225) Add a new
63 field, Profile Title so that the Profile Name does not serve a dual purpose of
64 labelling the Profile and displaying the Title for the Profile fields publicly
65 ([11508](https://github.com/civicrm/civicrm-core/pull/11508) and
66 [11503](https://github.com/civicrm/civicrm-core/pull/11503))**
67
68 Profiles can now be given a public title to display on frontend forms that is
69 distinct from the name for internal purposes.
70
71 - **[CRM-21654](https://issues.civicrm.org/jira/browse/CRM-21654) Support custom
72 file field on Batch Entry Profile
73 ([11520](https://github.com/civicrm/civicrm-core/pull/11520))**
74
75 File fields are no longer suppressed when batch editing data using a profile,
76 and if the field currently has a file, the form displays its name.
77
78 - **[CRM-21751](https://issues.civicrm.org/jira/browse/CRM-21751) Move SMS
79 provider ID to 'Select Recipients' page from 'SMS content'
80 ([11656](https://github.com/civicrm/civicrm-core/pull/11656))**
81
82 The field for choosing the SMS provider now appears before the recipient
83 selection fields.
84
85 - **[CRM-20769](https://issues.civicrm.org/jira/browse/CRM-20769) Allow for
86 Button Text on profiles to be overriden in settings
87 ([11598](https://github.com/civicrm/civicrm-core/pull/11598)) (completes
88 previous work)**
89
90 The profile quick editor now allows setting the cancel and submit button text.
91
92 - **[CRM-21540](https://issues.civicrm.org/jira/browse/CRM-21540) Add support
93 for auto-complete fields in the batch entry forms
94 ([11398](https://github.com/civicrm/civicrm-core/pull/11398))**
95
96 Auto-complete fields in a profile can now be edited when batch editing data.
97
98 - **[CRM-21621](https://issues.civicrm.org/jira/browse/CRM-21621) Provide
99 ability to delete first website field
100 ([11480](https://github.com/civicrm/civicrm-core/pull/11480))**
101
102 A trashcan link now allows all websites to be removed from a contact.
103
104 - **[CRM-21750](https://issues.civicrm.org/jira/browse/CRM-21750) Add support
105 for addressee_id, email_greeting_id, postal_greeting_id to api Contact.get
106 ([11654](https://github.com/civicrm/civicrm-core/pull/11654))**
107
108 Greeting type ids can now be filtered in the Contact API.
109
110 - **[CRM-21707](https://issues.civicrm.org/jira/browse/CRM-21707) Handle
111 metadata based serialisation in apiv3 basic_create_fallover
112 ([11648](https://github.com/civicrm/civicrm-core/pull/11648),
113 [11607](https://github.com/civicrm/civicrm-core/pull/11607), and
114 [11583](https://github.com/civicrm/civicrm-core/pull/11583))**
115
116 The standard function for Create actions in the API now uses the serialization
117 metadata to format multiple values for saving.
118
119 - **[CRM-21140](https://issues.civicrm.org/jira/browse/CRM-21140) Agree & (if
120 applicable) implement approach to storing extension data for entities / tables
121 ([11567](https://github.com/civicrm/civicrm-core/pull/11567)) (preliminary
122 work)**
123
124 The API can now be used to create custom data sets for profiles, price sets,
125 and payment tokens. This is envisioned as a way for extension writers to
126 store extended data about these entities.
127
128 - **[CRM-21674](https://issues.civicrm.org/jira/browse/CRM-21674) Allow
129 proximity search to accept lat & long at the BAO/api level & custom search
130 form ([11542](https://github.com/civicrm/civicrm-core/pull/11542))**
131
132 Proximity search via the API or custom search now accepts a latitude/longitude
133 combination as an alternative to an address to use as the center point.
134
135 - **[CRM-21717](https://issues.civicrm.org/jira/browse/CRM-21717) Allow for
136 selecting multiple relationship types in advanced search
137 ([11595](https://github.com/civicrm/civicrm-core/pull/11595))**
138
139 Advanced Search now allows for searching for contacts with one of multiple
140 specified relationship types.
141
142 - **[CRM-21634](https://issues.civicrm.org/jira/browse/CRM-21634) Standardise
143 component search options for contact fields, add contact type
144 ([11492](https://github.com/civicrm/civicrm-core/pull/11492) and
145 [11538](https://github.com/civicrm/civicrm-core/pull/11538))**
146
147 Contact fields on the search forms for contributions, pledges, memberships,
148 and participants now share a common structure in both appearance and code.
149
150 - **[CRM-21020](https://issues.civicrm.org/jira/browse/CRM-21020)
151 alterMailContent hook: pass additional contextual details
152 ([10815](https://github.com/civicrm/civicrm-core/pull/10815))**
153
154 When a message is sent via a template, additional details about the template
155 are provided to functions invoking `hook_civicrm_alterMailContent`.
156
157 - **Add API parameter for fix_address
158 ([11372](https://github.com/civicrm/civicrm-core/pull/11372))**
159
160 When saving an address using the API, you can now bypass a handful of fixes
161 that normally get applied.
162
163 - **[CRM-21741](https://issues.civicrm.org/jira/browse/CRM-21741) For in-place
164 editing, allow data-params to be passed to CRM.api3
165 ([11639](https://github.com/civicrm/civicrm-core/pull/11639))**
166
167 Fields enabled for in-place editing can now specify additional API parameters
168 to be sent when saving updates.
169
170 ### CiviCampaign
171
172 - **[CRM-21593](https://issues.civicrm.org/jira/browse/CRM-21593) New order by
173 options for WalkList Report
174 ([11449](https://github.com/civicrm/civicrm-core/pull/11449))**
175
176 The Walk / Phone List Report now can be sorted by street name, street number,
177 and whether the street number is odd or even.
178
179 ### CiviCase
180
181 - **[CRM-21461](https://issues.civicrm.org/jira/browse/CRM-21461) Case Dashlet
182 enhancement ([11304](https://github.com/civicrm/civicrm-core/pull/11304))**
183
184 The Case Dashboard, My Cases dashlet, and All Cases dashlet now use DataTables
185 to display results. This allows easy sorting and filtering of results among
186 other improvements.
187
188 - **[CRM-21498](https://issues.civicrm.org/jira/browse/CRM-21498) Option to
189 Change Status of Linked Cases
190 ([11350](https://github.com/civicrm/civicrm-core/pull/11350))**
191
192 When changing the status of a case, you now have the option to update the
193 status of all linked cases.
194
195 - **[CRM-21520](https://issues.civicrm.org/jira/browse/CRM-21520) Add Action on
196 Contact Search to Add Contacts to a Case
197 ([11371](https://github.com/civicrm/civicrm-core/pull/11371))**
198
199 Contacts selected from search results can now be added in bulk with a selected
200 case role to a selected case.
201
202 ### CiviContribute
203
204 - **[EXT-56](https://issues.civicrm.org/jira/browse/EXT-56) - Add
205 com.iatspayments.civicrm to tarballs
206 ([11052](https://github.com/civicrm/civicrm-core/pull/11052))**
207
208 The iATS payment processor is now included in core CiviCRM.
209
210 - **[CRM-21722](https://issues.civicrm.org/jira/browse/CRM-21722) Payment
211 processor check configuration - improved message in UI
212 ([11604](https://github.com/civicrm/civicrm-core/pull/11604))**
213
214 A payment processor's configuration is now checked as part of the validation
215 of the payment processor configuration form.
216
217 - **[CRM-21256](https://issues.civicrm.org/jira/browse/CRM-21256) Payment
218 processor contribution page performance improvement
219 ([11563](https://github.com/civicrm/civicrm-core/pull/11563))**
220
221 The list of available payment processors is now fetched once rather than
222 several times per contribution page load.
223
224 - **[CRM-21511](https://issues.civicrm.org/jira/browse/CRM-21511) Add recurring
225 contribution to membership detail and contribution
226 ([11555](https://github.com/civicrm/civicrm-core/pull/11555) and
227 [11365](https://github.com/civicrm/civicrm-core/pull/11365))**
228
229 When viewing a contribution or membership with a recurring contribution, there
230 is now a link to view the recurring contribution.
231
232 - **[CRM-21050](https://issues.civicrm.org/jira/browse/CRM-21050) Use datepicker
233 for all date fields used in contribution backoffice form
234 ([10841](https://github.com/civicrm/civicrm-core/pull/10841))**
235
236 The receive date, thank you date, receipt date, and cancel/refund date fields
237 now use `datepicker` instead of `jcalendar`.
238
239 - **[CRM-21343](https://issues.civicrm.org/jira/browse/CRM-21343) Search
240 Contributions by Cancel Date and Cancel Reason
241 ([11638](https://github.com/civicrm/civicrm-core/pull/11638))**
242
243 Find Contribution and Advanced Search now allow searching for contributions by
244 cancellation reason and date.
245
246 - **[CRM-21635](https://issues.civicrm.org/jira/browse/CRM-21635) Expose
247 contact custom data on contribution summary report
248 ([11494](https://github.com/civicrm/civicrm-core/pull/11494))**
249
250 The Contribution Summary Report can now use contact custom fields as filters
251 or displayed in columns.
252
253 - **[CRM-20614](https://issues.civicrm.org/jira/browse/CRM-20614) Do not
254 Download Export file for Financial Batch
255 ([10393](https://github.com/civicrm/civicrm-core/pull/10393))**
256
257 A financial batch export can be set using the API or custom extension to not
258 automatically download the file.
259
260 ### CiviMail
261
262 - **[CRM-21546](https://issues.civicrm.org/jira/browse/CRM-21546) Implement
263 unique opens filter for mailing opened report
264 ([11401](https://github.com/civicrm/civicrm-core/pull/11401))**
265
266 A new option on the Mailing Opened Report toggles displaying all open events
267 and all recipients who have opened the message.
268
269 ### CiviMember
270
271 - **[CRM-21512](https://issues.civicrm.org/jira/browse/CRM-21512) Remove
272 restriction on "update subscription" when linked to membership
273 ([11366](https://github.com/civicrm/civicrm-core/pull/11366))**
274
275 Members with autorenewal enabled can now edit the recurring contribution to
276 change the amount or number of installments. They will be warned that the
277 recurring contribution is linked to a membership.
278
279 - **[CRM-21688](https://issues.civicrm.org/jira/browse/CRM-21688) Use
280 fontawesome to show membership auto-renew status and and error indicator
281 ([11561](https://github.com/civicrm/civicrm-core/pull/11561))**
282
283 Icons for membership autorenewal now use the Font Awesome library, and a new
284 icon indicates memberships that were set to autorenew but have a canceled
285 recurring contribution.
286
287 ### Drupal Integration
288
289 - **[CRM-21226](https://issues.civicrm.org/jira/browse/CRM-21226) Add view
290 filter handler for contact reference custom field
291 ([508](https://github.com/civicrm/civicrm-drupal/pull/508))**
292
293 Contact reference custom fields used as views filters can now filter on
294 strings in the sort name in addition to the contact ID of the referenced
295 contact.
296
297 - **[CRM-20822](https://issues.civicrm.org/jira/browse/CRM-20822) Expose tag
298 parent id in views
299 ([459](https://github.com/civicrm/civicrm-drupal/pull/459))**
300
301 Views can now display, filter, and sort by parent tag ID or name.
302
303 - **[CRM-21758](https://issues.civicrm.org/jira/browse/CRM-21758) Add event
304 "created_id" to Drupal Views
305 ([519](https://github.com/civicrm/civicrm-drupal/pull/519))**
306
307 Views can now display, filter, and sort by the contact who created an event.
308 Relationships can be added to the contact.
309
310 ### WordPress Integration
311
312 - **[CRM-16421](https://issues.civicrm.org/jira/browse/CRM-16421) Work to get
313 CiviCRM for WordPress in WordPress' official Repository
314 ([11576](https://github.com/civicrm/civicrm-core/pull/11576),
315 [121](https://github.com/civicrm/civicrm-wordpress/pull/121), and
316 [122](https://github.com/civicrm/civicrm-wordpress/pull/122)) (continues
317 previous work)**
318
319 Sites about to install CiviCRM can now indicate whether to use the new
320 installer library by the presence of a file named `.use-civicrm-setup`. A new
321 tarball will be generated for each version of CiviCRM named
322 `civicrm-*-wporg.zip`. This new tarball will be equivalent to the
323 `civicrm-*-wordpress.zip` files except that it uses the new installer and
324 displays a series of opt-ins in order to satisfy WordPress.org requirements.
325
326 ## <a name="bugs"></a>Bugs resolved
327
328 ### Core CiviCRM
329
330 - **[CRM-21715](https://issues.civicrm.org/jira/browse/CRM-21715) Activity
331 Report: move the SQL creation to a buildQuery function
332 ([11584](https://github.com/civicrm/civicrm-core/pull/11584))**
333
334 This resolves a fatal error that would appear when exporting to CSV from the
335 Activity Report.
336
337 - **[CRM-21334](https://issues.civicrm.org/jira/browse/CRM-21334) Fire hooks on
338 contact image deletion
339 ([11163](https://github.com/civicrm/civicrm-core/pull/11163))**
340
341 The expected hooks are triggered when deleting a contact image.
342
343 - **[CRM-21701](https://issues.civicrm.org/jira/browse/CRM-21701) street
344 addresses are not reliably parsed
345 ([11579](https://github.com/civicrm/civicrm-core/pull/11579))**
346
347 Street addresses are now parsed whenever they're edited if address parsing is
348 enabled. Previously, this was only done if USPS address standardization was
349 enabled.
350
351 - **[CRM-21629](https://issues.civicrm.org/jira/browse/CRM-21629) Resource URL
352 status check gets false positive when blank user agents are blocked
353 ([11488](https://github.com/civicrm/civicrm-core/pull/11488))**
354
355 The system check for verifying resource URLs now sets a user agent header when
356 making HTTP requests to the server.
357
358 - **[CRM-21591](https://issues.civicrm.org/jira/browse/CRM-21591) PHP 7.1 issue
359 Non well form numeric value encountered when viewing the misc settings screen
360 ([11505](https://github.com/civicrm/civicrm-core/pull/11505) and
361 [11447](https://github.com/civicrm/civicrm-core/pull/11447))**
362
363 - **[CRM-21618](https://issues.civicrm.org/jira/browse/CRM-21618) Add missing
364 structure in templates
365 ([11478](https://github.com/civicrm/civicrm-core/pull/11478) and
366 [11457](https://github.com/civicrm/civicrm-core/pull/11457))**
367
368 Several form templates with nonstandard markup have been updated slightly.
369
370 - **[CRM-8140](https://issues.civicrm.org/jira/browse/CRM-8140) Not possible to
371 select fields for export when using Custom Searches
372 ([11458](https://github.com/civicrm/civicrm-core/pull/11458))**
373
374 - **[CRM-21616](https://issues.civicrm.org/jira/browse/CRM-21616) sql metadata
375 is being lost when calling the report from the api
376 ([11476](https://github.com/civicrm/civicrm-core/pull/11476))**
377
378 When retrieving a report via the API, the SQL query is now reliably provided
379 if requested.
380
381 - **[CRM-21670](https://issues.civicrm.org/jira/browse/CRM-21670) Search of
382 active relationships does not appear on Relationship Report
383 ([11537](https://github.com/civicrm/civicrm-core/pull/11537))**
384
385 This restores the filter in the Relationship Report for a relationship's
386 active period. The filter had been removed accidentally in a past
387 improvement.
388
389 - **[CRM-20996](https://issues.civicrm.org/jira/browse/CRM-20996) Copy profile
390 from wizard duplicates 'name' in database
391 ([11597](https://github.com/civicrm/civicrm-core/pull/11597))**
392
393 This ensures that the profile machine name is unique when copying profiles. A
394 database error would result when copying profiles while editing events or
395 contribution pages.
396
397 - **[dev/core#2](https://lab.civicrm.org/dev/core/issues/2) Display Inbound
398 Email: linefeed suppressed
399 ([11661](https://github.com/civicrm/civicrm-core/pull/11661))**
400
401 When viewing an activity, the Details field now displays line breaks that are
402 in the original. This is important in viewing the text of inbound email
403 activities.
404
405 - **[CRM-21738](https://issues.civicrm.org/jira/browse/CRM-21738) Merges not
406 copying viewOnly data (regression but not recent)
407 ([11636](https://github.com/civicrm/civicrm-core/pull/11636))**
408
409 View-only custom data was not copying to the merged contact when merging two
410 contacts.
411
412 - **[CRM-21742](https://issues.civicrm.org/jira/browse/CRM-21742) Use form
413 validation rather than Exception handling for proximity seach
414 ([11643](https://github.com/civicrm/civicrm-core/pull/11643))**
415
416 Custom searches now support validation, the proximity search is now configured
417 to display validation errors rather than a cause a full-blown exception when
418 geocoding fails.
419
420 - **[CRM-19784](https://issues.civicrm.org/jira/browse/CRM-19784) Yahoo
421 Placefinder service appears to have EOL'ed
422 ([11540](https://github.com/civicrm/civicrm-core/pull/11540))**
423
424 Support is removed for the now-defunct Yahoo geocoding service.
425
426 - **[CRM-21737](https://issues.civicrm.org/jira/browse/CRM-21737) New option
427 value validation is too tight for languages
428 ([11633](https://github.com/civicrm/civicrm-core/pull/11633))**
429
430 Option values for language now only need to have a unique name rather than a
431 unique value.
432
433 - **Website api - fix nonstandard BAO delete method
434 ([11625](https://github.com/civicrm/civicrm-core/pull/11625))**
435
436 Deleting a website now uses a standard method that invokes all the usual hooks.
437
438 - **Use mb_strlen() in ellipsify() to avoid excessive multibyte truncation
439 ([11594](https://github.com/civicrm/civicrm-core/pull/11594))**
440
441 This resolves problems truncating text with multibyte characters to a shorter
442 length than intended.
443
444 - **[CRM-21524](https://issues.civicrm.org/jira/browse/CRM-21524) CiviCRM
445 exports (postal) mailing lists including Contacts clearly marked is_deceased
446 in the database
447 ([11527](https://github.com/civicrm/civicrm-core/pull/11527))**
448
449 This ensures that exports suppress deceased and "do not mail" contacts prior
450 to merging rows with the same address. Previously, contacts sharing an
451 address with a deceased contact in the same search result would be merged with
452 them in the results.
453
454 - **[CRM-21687](https://issues.civicrm.org/jira/browse/CRM-21687) MariaDB 10.2
455 and logging: log_civicrm_activity schema syntax error
456 ([11580](https://github.com/civicrm/civicrm-core/pull/11580))**
457
458 - **[CRM-21651](https://issues.civicrm.org/jira/browse/CRM-21651) Contact :: New
459 Email/SMS : loading failed when no contact is found
460 ([11506](https://github.com/civicrm/civicrm-core/pull/11506))**
461
462 - **[CRM-21669](https://issues.civicrm.org/jira/browse/CRM-21669) Consistent
463 wording for "Email - Send now" task
464 ([11535](https://github.com/civicrm/civicrm-core/pull/11535))**
465
466 - **[CRM-21613](https://issues.civicrm.org/jira/browse/CRM-21613) Search issues
467 on 'Manage Tag' page
468 ([11510](https://github.com/civicrm/civicrm-core/pull/11510) and
469 [11467](https://github.com/civicrm/civicrm-core/pull/11467))**
470
471 - **[CRM-21444](https://issues.civicrm.org/jira/browse/CRM-21444) Empty field at
472 form "Add rule for..." merge duplicate contacts
473 ([11523](https://github.com/civicrm/civicrm-core/pull/11523))**
474
475 The contact type options when creating a dedupe rule would not appear when in
476 a language other than English.
477
478 - **[CRM-21533](https://issues.civicrm.org/jira/browse/CRM-21533) Outbound
479 setting reverts in non-production sites on executing sched job
480 ([11393](https://github.com/civicrm/civicrm-core/pull/11393))**
481
482 This resolves a bug where running a scheduled job on a site in development
483 mode would re-enable outbound mail.
484
485 - **[CRM-17352](https://issues.civicrm.org/jira/browse/CRM-17352) Backbone
486 no-conflict ([11504](https://github.com/civicrm/civicrm-core/pull/11504) and
487 [198](https://github.com/civicrm/civicrm-packages/pull/198))**
488
489 CiviCRM now uses Backbone.js in `noConflict` mode to prevent conflicts if the
490 CMS has its own copy of the library.
491
492 - **[CRM-21644](https://issues.civicrm.org/jira/browse/CRM-21644) Preferred
493 Communication Method is not set to default for contact
494 ([11499](https://github.com/civicrm/civicrm-core/pull/11499))**
495
496 A contact's Preferred Communication Method field now defaults to its current
497 value when included in a profile.
498
499 - **[CRM-18300](https://issues.civicrm.org/jira/browse/CRM-18300) "Permission
500 denied" message re contact on CiviCRM dashboard
501 ([11470](https://github.com/civicrm/civicrm-core/pull/11470))**
502
503 - **[CRM-21614](https://issues.civicrm.org/jira/browse/CRM-21614) Tag UI doesn't
504 appear to respect reserved tags permission
505 ([11469](https://github.com/civicrm/civicrm-core/pull/11469))**
506
507 This resolves a problem where a non-privileged user editing a reserved tag
508 would appear to be able to make edits, but the edits would not take effect.
509
510 - **[CRM-21744](https://issues.civicrm.org/jira/browse/CRM-21744) Fix proximity
511 custom search to work with smart groups
512 ([11645](https://github.com/civicrm/civicrm-core/pull/11645))**
513
514 - **[CRM-21159](https://issues.civicrm.org/jira/browse/CRM-21159) Address fields
515 cause DB errors when adding contacts to group from Search Builder
516 ([11524](https://github.com/civicrm/civicrm-core/pull/11524) and
517 [11422](https://github.com/civicrm/civicrm-core/pull/11422))**
518
519 - **[CRM-14834](https://issues.civicrm.org/jira/browse/CRM-14834) Activity
520 Export with Relationships incurs fatal error
521 ([11526](https://github.com/civicrm/civicrm-core/pull/11526))**
522
523 - **[CRM-18048](https://issues.civicrm.org/jira/browse/CRM-18048) Activity
524 Report fatal error when including custom field set with long name
525 ([11183](https://github.com/civicrm/civicrm-core/pull/11183))**
526
527 ### CiviCampaign
528
529 - **[CRM-21602](https://issues.civicrm.org/jira/browse/CRM-21602) Disable/Enable
530 Campaign not working
531 ([11466](https://github.com/civicrm/civicrm-core/pull/11466))**
532
533 The loading icon would not stop when working with the listings of campaigns,
534 surveys, and petitions.
535
536 - **[CRM-21663](https://issues.civicrm.org/jira/browse/CRM-21663) Fix Campaign
537 Search and result structure
538 ([11528](https://github.com/civicrm/civicrm-core/pull/11528))**
539
540 ### CiviCase
541
542 - **[CRM-21760](https://issues.civicrm.org/jira/browse/CRM-21760) Manager Name
543 is missing in 'Find Cases' search list
544 ([11665](https://github.com/civicrm/civicrm-core/pull/11665))**
545
546 - **[CRM-21730](https://issues.civicrm.org/jira/browse/CRM-21730) postProcess()
547 hook don't receive case id after submitting "New Case" form
548 ([11618](https://github.com/civicrm/civicrm-core/pull/11618))**
549
550 - **[CRM-21704](https://issues.civicrm.org/jira/browse/CRM-21704) Do Not allow a
551 case type that is reserved to be deleted or disabled.
552 ([11581](https://github.com/civicrm/civicrm-core/pull/11581))**
553
554 ### CiviContribute
555
556 - **[CRM-17647](https://issues.civicrm.org/jira/browse/CRM-17647) Recording
557 payment truncates the amount after the comma (whether thousands or decimal
558 separator) ([11539](https://github.com/civicrm/civicrm-core/pull/11539),
559 [11646](https://github.com/civicrm/civicrm-core/pull/11646),
560 [11575](https://github.com/civicrm/civicrm-core/pull/11575),
561 [11574](https://github.com/civicrm/civicrm-core/pull/11574),
562 [11554](https://github.com/civicrm/civicrm-core/pull/11554),
563 [11547](https://github.com/civicrm/civicrm-core/pull/11547), and
564 [11541](https://github.com/civicrm/civicrm-core/pull/11541))**
565
566 Monetary amounts are now more consistently cleaned in the form layer.
567
568 - **[CRM-21323](https://issues.civicrm.org/jira/browse/CRM-21323) Fix backend
569 credit card payment processor selection
570 ([11530](https://github.com/civicrm/civicrm-core/pull/11530))**
571
572 This resolves a problem when a backend credit card contribution form fails
573 validation: the first payment processor listed would load instead of the one
574 selected.
575
576 - **[CRM-20625](https://issues.civicrm.org/jira/browse/CRM-20625) Better Payment
577 Processor extension error handling
578 ([11631](https://github.com/civicrm/civicrm-core/pull/11631))**
579
580 This resolves a problem where CiviCRM would crash attempting to load a payment
581 processor provided by a disabled or missing extension.
582
583 - **[CRM-21698](https://issues.civicrm.org/jira/browse/CRM-21698) On some
584 systems recording a negative contribution results in a $0 contribution
585 ([11577](https://github.com/civicrm/civicrm-core/pull/11577))**
586
587 - **[dev/core#1](https://lab.civicrm.org/dev/core/issues/1) Allow to search for
588 "in progress" contributions
589 ([11640](https://github.com/civicrm/civicrm-core/pull/11640))**
590
591 The "in progress" and "overdue" statuses are now available for searching
592 contributions.
593
594 - **Amount and source could exceed max length of subject column
595 ([11593](https://github.com/civicrm/civicrm-core/pull/11593))**
596
597 The activity corresponding to a contribution is given a subject based upon the
598 contribution source and amount. Since the combined string could be longer
599 than the activity subject field's maximum length, this truncates it with an
600 ellipsis.
601
602 - **[CRM-21721](https://issues.civicrm.org/jira/browse/CRM-21721) Notice :
603 Division by zero ([11623](https://github.com/civicrm/civicrm-core/pull/11623)
604 and [11601](https://github.com/civicrm/civicrm-core/pull/11601))**
605
606 This resolves a PHP notice that would appear when submitting a $0.00
607 contribution using a price set.
608
609 - **[CRM-21684](https://issues.civicrm.org/jira/browse/CRM-21684) contact
610 subtype fields prevent inclusion in profile/receipt email
611 ([11559](https://github.com/civicrm/civicrm-core/pull/11559))**
612
613 This resolves a problem where adding a subtype-specific custom field to a
614 profile prevents any fields from the profile being included in receipts.
615
616 - **[CRM-21647](https://issues.civicrm.org/jira/browse/CRM-21647) Fatal error on
617 deleting any contribution record
618 ([11500](https://github.com/civicrm/civicrm-core/pull/11500))**
619
620 - **[CRM-21580](https://issues.civicrm.org/jira/browse/CRM-21580) exporting
621 financial batch fails when label of batch statuses changed
622 ([11434](https://github.com/civicrm/civicrm-core/pull/11434))**
623
624 - **[CRM-21589](https://issues.civicrm.org/jira/browse/CRM-21589) "Repeat
625 Contributions" report ignores sort
626 ([11446](https://github.com/civicrm/civicrm-core/pull/11446))**
627
628 - **[CRM-20676](https://issues.civicrm.org/jira/browse/CRM-20676) Tax applied
629 repeatedly on edits of price set events
630 ([11655](https://github.com/civicrm/civicrm-core/pull/11655) and
631 [11461](https://github.com/civicrm/civicrm-core/pull/11461)) (completes
632 previous work)**
633
634 - **[CRM-19752](https://issues.civicrm.org/jira/browse/CRM-19752) Slow query
635 created by financial type acls
636 ([11621](https://github.com/civicrm/civicrm-core/pull/11621) and
637 [9746](https://github.com/civicrm/civicrm-core/pull/9746))**
638
639 - **[CRM-21665](https://issues.civicrm.org/jira/browse/CRM-21665) Check Number
640 show hide not working
641 ([11611](https://github.com/civicrm/civicrm-core/pull/11611))**
642
643 - **[CRM-21155](https://issues.civicrm.org/jira/browse/CRM-21155) Hook
644 batchItems does not change the csv export
645 ([10951](https://github.com/civicrm/civicrm-core/pull/10951))**
646
647 - **[CRM-19107](https://issues.civicrm.org/jira/browse/CRM-19107) PayPal Button
648 Error ([11474](https://github.com/civicrm/civicrm-core/pull/11474))**
649
650 The PayPal Express button now reliably sends the donor to PayPal rather than
651 submitting the contribution form.
652
653 - **[CRM-21609](https://issues.civicrm.org/jira/browse/CRM-21609) PayPal Pro IPN
654 code no longer respects changed recurring amount
655 ([11463](https://github.com/civicrm/civicrm-core/pull/11463))**
656
657 - **[CRM-21728](https://issues.civicrm.org/jira/browse/CRM-21728) Intermittant
658 fatal on pcp.create api
659 ([11606](https://github.com/civicrm/civicrm-core/pull/11606))**
660
661 - **[CRM-21664](https://issues.civicrm.org/jira/browse/CRM-21664) Contributions
662 creation result in error for certain currencies
663 ([11533](https://github.com/civicrm/civicrm-core/pull/11533))**
664
665 Currency validation now uses the `civicrm_currency` table rather than a
666 hard-coded list of values.
667
668 - **[CRM-21528](https://issues.civicrm.org/jira/browse/CRM-21528) top donor
669 report: add2group error
670 ([11482](https://github.com/civicrm/civicrm-core/pull/11482))**
671
672 - **[CRM-20866](https://issues.civicrm.org/jira/browse/CRM-20866) Soft credit
673 appearance inconsistent in contribution search
674 ([11433](https://github.com/civicrm/civicrm-core/pull/11433))**
675
676 This resolves problems when changing the option for displaying soft credits
677 during a series of contribution searches.
678
679 ### CiviEvent
680
681 - **[CRM-21771](https://issues.civicrm.org/jira/browse/CRM-21771) error when
682 viewing event registration with linked contribution
683 ([11749](https://github.com/civicrm/civicrm-core/pull/11749))**
684
685 - **[CRM-21623](https://issues.civicrm.org/jira/browse/CRM-21623) Smart Group
686 Relative Date not saving for some fields in Advance Search.
687 ([11486](https://github.com/civicrm/civicrm-core/pull/11486))**
688
689 - **[CRM-21743](https://issues.civicrm.org/jira/browse/CRM-21743) Creating an
690 event template from existing one does not work
691 ([11644](https://github.com/civicrm/civicrm-core/pull/11644))**
692
693 This resolves a problem where using an event template to create a new event
694 template would result in creating a new event instead.
695
696 - **[CRM-21071](https://issues.civicrm.org/jira/browse/CRM-21071) Event Location
697 Tab: Second Email and Phone fields broken
698 ([11568](https://github.com/civicrm/civicrm-core/pull/11568))**
699
700 ### CiviMail
701
702 - **[CRM-21759](https://issues.civicrm.org/jira/browse/CRM-21759) mailing
703 template selector missing
704 ([11676](https://github.com/civicrm/civicrm-core/pull/11676))**
705
706 This restores the field to select a template when composing a CiviMail
707 message. It had gone missing in 4.7.30.
708
709 - **[CRM-21683](https://issues.civicrm.org/jira/browse/CRM-21683) Mailing
710 summary breaks on mailing names with apostrophes
711 ([11557](https://github.com/civicrm/civicrm-core/pull/11557))**
712
713 The mailing name filter in the Mailing Summary Report now uses a standard
714 filter, resolving problems with using an apostrophe in the search text.
715
716 - **[CRM-21260](https://issues.civicrm.org/jira/browse/CRM-21260) and
717 [CRM-21316](https://issues.civicrm.org/jira/browse/CRM-21316) CiviMail compose
718 UI very slow to initialize when many mailing groups, past mailings and
719 templates ([11142](https://github.com/civicrm/civicrm-core/pull/11142) and
720 [11558](https://github.com/civicrm/civicrm-core/pull/11558))**
721
722 The process of building recipient lists for CiviMail has been refactored to be
723 simpler and faster.
724
725 - **[CRM-21521](https://issues.civicrm.org/jira/browse/CRM-21521) Bounce
726 processing exception: no such property 'text'
727 ([11390](https://github.com/civicrm/civicrm-core/pull/11390))**
728
729 This correctly handles bounce messages that have nested multipart parts.
730
731 - **[CRM-21749](https://issues.civicrm.org/jira/browse/CRM-21749) [obscure
732 intra-rc regression] Mailing api no longer respecting
733 '_skip_evil_bao_auto_schedule_'
734 ([11653](https://github.com/civicrm/civicrm-core/pull/11653))**
735
736 ### CiviMember
737
738 - **[CRM-20707](https://issues.civicrm.org/jira/browse/CRM-20707) membership
739 inheritance does not update start/end dates
740 ([10485](https://github.com/civicrm/civicrm-core/pull/10485))**
741
742 - **[CRM-21554](https://issues.civicrm.org/jira/browse/CRM-21554) Offline Credit
743 Card Membership Renewal not showing any error message on failure
744 ([11408](https://github.com/civicrm/civicrm-core/pull/11408))**
745
746 - **[CRM-21485](https://issues.civicrm.org/jira/browse/CRM-21485) Tax not added
747 when renewing membership in backend
748 ([11459](https://github.com/civicrm/civicrm-core/pull/11459))**
749
750 - **[CRM-21612](https://issues.civicrm.org/jira/browse/CRM-21612) Membership
751 Payment not recorded for recurring contribution when status label is changed.
752 ([11465](https://github.com/civicrm/civicrm-core/pull/11465))**
753
754 - **[CRM-21724](https://issues.civicrm.org/jira/browse/CRM-21724) Receipt for
755 membership contribution sending custom fields for wrong membership type
756 ([11605](https://github.com/civicrm/civicrm-core/pull/11605))**
757
758 - **[CRM-21656](https://issues.civicrm.org/jira/browse/CRM-21656) Backend
759 Membership with Priceset applies taxes twice to line_item
760 ([11521](https://github.com/civicrm/civicrm-core/pull/11521))**
761
762 - **[CRM-19920](https://issues.civicrm.org/jira/browse/CRM-19920)
763 Job.process_membership uses too much memory
764 ([11564](https://github.com/civicrm/civicrm-core/pull/11564))**
765
766 ### Backdrop Integration
767
768 - **[CRM-21619](https://issues.civicrm.org/jira/browse/CRM-21619) Can't install
769 CiviCRM on Backdrop using the Module Installer
770 ([44](https://github.com/civicrm/civicrm-backdrop/pull/44))**
771
772 ### Drupal Integration
773
774 - **[CRM-21627](https://issues.civicrm.org/jira/browse/CRM-21627) Can't enable
775 multilanguage support in Drupal
776 ([11491](https://github.com/civicrm/civicrm-core/pull/11491))**
777
778 - **[CRM-21652](https://issues.civicrm.org/jira/browse/CRM-21652) Numerous
779 issues with anonymous users registering accounts on Drupal 8 (especially from
780 contribution pages)
781 ([11509](https://github.com/civicrm/civicrm-core/pull/11509) and
782 [11507](https://github.com/civicrm/civicrm-core/pull/11507))**
783
784 - **[CRM-21667](https://issues.civicrm.org/jira/browse/CRM-21667) Bad timezone
785 hand-off from CMS to CRM
786 ([11534](https://github.com/civicrm/civicrm-core/pull/11534))**
787
788 - **Backport fix from D7 module.
789 ([514](https://github.com/civicrm/civicrm-drupal/pull/514))**
790
791 The Drupal 6 group role sync now uses the improved method developed for Drupal
792 7.
793
794 - **Update civicrm_handler_field_contact_image.inc
795 ([516](https://github.com/civicrm/civicrm-drupal/pull/516))**
796
797 Views containing the contact image field now provide help for setting image
798 style.
799
800 - **[CRM-17652](https://issues.civicrm.org/jira/browse/CRM-17652) Symfony
801 conflict between Civi and Drupal 8
802 ([193](https://github.com/civicrm/civicrm-packages/pull/193)) (continues
803 previous work)**
804
805 The `civicrm-packages` repository is now contains metadata to be a composer
806 library.
807
808 - **[CRM-20298](https://issues.civicrm.org/jira/browse/CRM-20298) Drupal Views:
809 Custom fields of type Money should use the same filter operators as Integer
810 fields ([436](https://github.com/civicrm/civicrm-drupal/pull/436))**
811
812 - **[crm-16541](https://issues.civicrm.org/jira/browse/crm-16541) drush
813 civicrm-sql-dump fails to dump stored function
814 ([520](https://github.com/civicrm/civicrm-drupal/pull/520))**
815
816 ### Joomla Integration
817
818 - **[CRM-20904](https://issues.civicrm.org/jira/browse/CRM-20904) Joomla - Fatal
819 Error when schedule job is executed from cron.php
820 ([10692](https://github.com/civicrm/civicrm-core/pull/10692))**
821
822 ## <a name="misc"></a>Miscellany
823
824 - **[CRM-21660](https://issues.civicrm.org/jira/browse/CRM-21660) Remove use of
825 deprecated function on mapping_type
826 ([11525](https://github.com/civicrm/civicrm-core/pull/11525))**
827
828 - **[CRM-21671](https://issues.civicrm.org/jira/browse/CRM-21671) Add core tasks
829 class ([11536](https://github.com/civicrm/civicrm-core/pull/11536))**
830
831 - **[CRM-13123](https://issues.civicrm.org/jira/browse/CRM-13123) Handle
832 value-separated fields at the dao level
833 ([11472](https://github.com/civicrm/civicrm-core/pull/11472)) (finishes
834 previous work)**
835
836 This non-functional change updates serialization metadata for the field
837 storing the ways a profile is used.
838
839 - **Change geocoder message check.
840 ([11664](https://github.com/civicrm/civicrm-core/pull/11664))**
841
842 - **Unit test fixes
843 ([11659](https://github.com/civicrm/civicrm-core/pull/11659))**
844
845 - **Fix unit test to not rely on hacking the DB to have ids for price set…
846 ([11652](https://github.com/civicrm/civicrm-core/pull/11652))**
847
848 - **Added trait to support Codeception tests
849 ([11115](https://github.com/civicrm/civicrm-core/pull/11115))**
850
851 - **(NFC) Fix logging test for multilingual on MySQL5.7
852 ([11626](https://github.com/civicrm/civicrm-core/pull/11626))**
853
854 - **[nfc] Fix intermittantly failing test.
855 ([11617](https://github.com/civicrm/civicrm-core/pull/11617))**
856
857 - **[CRM-21729](https://issues.civicrm.org/jira/browse/CRM-21729) Exclude
858 (non-lintable) vendor test cases from deply
859 ([11613](https://github.com/civicrm/civicrm-core/pull/11613))**
860
861 - **Minor api clean up.
862 ([11569](https://github.com/civicrm/civicrm-core/pull/11569))**
863
864 - **Api4 - Update entity directory
865 ([11582](https://github.com/civicrm/civicrm-core/pull/11582))**
866
867 - **Fix typo (very recent)
868 ([11566](https://github.com/civicrm/civicrm-core/pull/11566))**
869
870 - **Minor api tidy up.
871 ([11543](https://github.com/civicrm/civicrm-core/pull/11543))**
872
873 - **Fix mock test data for PaymentProcessor object.
874 ([11545](https://github.com/civicrm/civicrm-core/pull/11545))**
875
876 - **Edit to contributor listing: Standalone code contributor from now.
877 ([11512](https://github.com/civicrm/civicrm-core/pull/11512))**
878
879 - **Fix unit test failure
880 ([11479](https://github.com/civicrm/civicrm-core/pull/11479))**
881
882 - **Reformat DAO files to pass linting and use short array syntax
883 ([11418](https://github.com/civicrm/civicrm-core/pull/11418))**
884
885 - **Params to assertGreaterThanOrEqual in api_v3_CaseTest were in wrong order
886 ([11451](https://github.com/civicrm/civicrm-core/pull/11451))**
887
888 ## <a name="credits"></a>Credits
889
890 This release was developed by the following code authors:
891
892 AGH Strategies - Alice Frumin, Tommy Bobo; Agileware - Alok Patel; Australian
893 Greens - Seamus Lee; Awebon Technologies - Karthikeyan Balasubramanian;
894 BackOffice Thinking - Hassan Farooq; CiviCoop - Erik Hommel; CiviCRM - Coleman
895 Watts, Tim Otten; CiviDesk - Sunil Pawar, Yashodha Chaku; CompuCorp - Camilo
896 Rodriguez, Michael Devery, Mukesh Ram, Omar Abu Hussein; Coop SymbioTIC -
897 Mathieu Lutfy; Electronic Frontier Foundation - Mark Burdett; Francesc Bassas i
898 Bullich; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit;
899 Ginkgo Street Labs - Frank Gómez; iXiam - Luciano Spiegel; JazzMan; JMA
900 Consulting - Monish Deb; Johan Vervloet; John Kingsnorth; Joinery - Allen Shaw;
901 Joost Fock; Kanzu Code - Carl Andrew Lema; Lighthouse Design and Consulting -
902 Brian Shaughnessy; Megaphone Technology Consulting - Jon Goldberg; MJW
903 Consulting - Matthew Wire; mountev; myDropWizard - David Snopek; Oxfam Germany -
904 Thomas Schüttler; Pradeep Nayak; Progressive Technology Project - Jamie
905 McClelland; Samson Alajede; Squiffle Consulting - Aidan Saunders; Systopia -
906 Björn Endres, Philipp Batroff; Tech To The People - Xavier Dutoit; Third Sector
907 Design - Michael McAndrew; Timbsoft Technologies - Tunbola Ogunwande; Vedant
908 Rathore; Wikimedia Foundation - Eileen McNaughton, Elliott Eggleston; yurg
909
910 Most authors also reviewed code for this release; in addition, the following
911 reviewers contributed their comments:
912
913 AGH Strategies - Andrew Hunt, Holly Hanks; Agileware - Agileware Team; Andy
914 Clarke; Anthony Borrow; Bashar Makhay; Blackfly Solutions - Alan Dixon; Chris
915 Burgess; Christophe Golle; Circle Interactive - Andrew Walker, Dave Jenkins;
916 CiviDesk - Nicolas Ganivet; CompuCorp - Chandana Bandara, Guanhuan Chen, Tunbola
917 Ogunwande; Comunica2 - René Nieuwburg; Custom Websites to Go - Julie Hall; Dave
918 Greenberg; Dave Rolsky; DevMate - Adam Kwiatkowski; Donald Lobo; Evan Chute;
919 Fuzion - Gemma Potaka, Peter Davis; Ginkgo Street Labs - Dan O'Brien; Glasgow
920 Women's Library - Helen MacDonald; GMCVO Databases - Alex Lee, Heather Oliver;
921 JMA Consulting - Joe Murray; Joseph Lacey; Juan David Hurtado G.; Just Hope -
922 Phil Morice Brubaker; Klangsoft - David Reedy Jr; Korlon - Stuart Gaston;
923 Lemniscus - Noah Miller; MC3 - Graham Mitchell; Mick Collopy; Nathan Brettell;
924 Nubay Services - David Tarrant; Palante Technology Cooperative - Jack Aponte;
925 Panu Boonpromsook; Piotr Stankowski; Play Australia - Renaee Churches;
926 Progressive Technology Project - Robyn Perry; Registered Nurses' Association of
927 Ontario - Thomas Mannell; Richard van Oosterhout; Saurabh Batra; Semper IT -
928 Karin Gerritsen; Shira Miller; Skvare - Mark Hanna, Peter Petrik; Spry Digital -
929 Julia Koelsch; Systopia - Fabian Schuttenberg, Martin Peth; Tadpole Collective -
930 Kevin Cristiano; Team Expansion - Greg Harris; Tobias Lounsbury; Web Access -
931 Kurund Jalmi; We Move Europe/Caltha - Tomasz Pietrzkowski; Wildsight - Lars
932 Sanders-Green
933
934 ## <a name="feedback"></a>Feedback
935
936 These release notes are edited by Andrew Hunt. If you'd like to provide
937 feedback on them, please login to https://chat.civicrm.org/civicrm and contact
938 `@agh1`.