5.0.0 release notes: René Olivo works for CompuCorp
[civicrm-core.git] / release-notes / 5.0.0.md
1 # CiviCRM 5.0.0
2
3 Released April 4, 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? | no |
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-21659](https://issues.civicrm.org/jira/browse/CRM-21659) Add hook to
29 CRM_Utils_System::redirect ([11519](https://github.com/civicrm/civicrm-core/pull/11519))**
30
31 Adds a hook (hook_civicrm_alterRedirect) when the browser is being redirected. This allows extensions to
32 override the destination of an HTTP redirect.
33
34 The UriInterface from PSR-7 is included; the concrete implementation of Uri is loaded from Guzzle v6.3+.
35
36 - **[civicrm/civicrm-setup#1](https://github.com/civicrm/civicrm-setup/issues/1)
37 Simplify SQL and translation pipeline (preliminary work)
38 [11699](https://github.com/civicrm/civicrm-core/pull/11699),
39 [11682](https://github.com/civicrm/civicrm-core/pull/11682), and
40 [11677](https://github.com/civicrm/civicrm-core/pull/11677)**
41
42 Along with a handful of supporting changes, these changes allow strings to be
43 translated without needing CiviCRM to be operating. This sets the stage for
44 generating basic CiviCRM data in the appropriate language as part of the
45 CiviCRM installation process.
46
47 - **Fix relationshipType, paymentProcessorType, Note & jobLog apis to support
48 custom data ([11721](https://github.com/civicrm/civicrm-core/pull/11721))**
49
50 Updates the relationshipType, paymentProcessorType & jobLog apis to support
51 custom data.
52
53 - **Fix more entities to support custom fields (via api)
54 ([11688](https://github.com/civicrm/civicrm-core/pull/11688))**
55
56 This change moves us closer to the goal of being able to define custom data on 'any
57 entity'. It takes us from a limited list of entities that work to a longer list of
58 ones that still don't work
59
60 - **[dev/core#12](https://lab.civicrm.org/dev/core/issues/12) Improvement: for
61 crmUiWizard-driven workflows, scroll back to top between steps
62 ([11790](https://github.com/civicrm/civicrm-core/pull/11790))**
63
64 Adds auto-scroll-up functionality between steps in a wizard-driven workflow.
65
66 - **Fix style glitches ([11792](https://github.com/civicrm/civicrm-core/pull/11792))**
67
68 This change adds a space after the x between the form input for a phone number
69 and the form input for the extension to improve user experience.
70
71 - **Update minimum php version to 5.5
72 ([11453](https://github.com/civicrm/civicrm-core/pull/11453))**
73
74 This change bumps up the minimum version to follow the schedule laid out in
75 https://civicrm.org/blog/totten/end-of-zombies-php-53-and-54
76
77 - **Fixed template structure issues
78 ([11766](https://github.com/civicrm/civicrm-core/pull/11766))**
79
80 Moves help section outside block and adds missing label.
81
82 - **[CRM-21823](https://issues.civicrm.org/jira/browse/CRM-21823) Change
83 position of help div and fix structure glitches
84 ([11750](https://github.com/civicrm/civicrm-core/pull/11750))**
85
86 This standardizes the markup structure for the date settings, localization,
87 and memberships admin pages so that the help section sits outside the form
88 block, inline CSS is removed, and buttons are wrapped with the correct wrapper
89 class.
90
91 - **[CRM-21817](https://issues.civicrm.org/jira/browse/CRM-21817) Move help
92 section outside crm block as per other pages
93 ([11738](https://github.com/civicrm/civicrm-core/pull/11738))**
94
95 This change moves help section for word replacement page, outside crm block
96 to preserve consistency.
97
98 - **CKEditor Advanced Options - Better validation of options
99 ([11752](https://github.com/civicrm/civicrm-core/pull/11752))**
100
101 In the "Advanced Options" of the CKEditor Configurator, API options can be
102 selected. This tweaks the UI to prevent the same option from being selected
103 twice, which would not make sense.
104
105 - **Update to PHPWord 0.14.0
106 ([11696](https://github.com/civicrm/civicrm-core/pull/11696))**
107
108 Updates PHPWord from 0.13.0 to 0.14.0. PHPWord 0.14.0 fixes a number of bugs
109 and adds some new features, more information on PHPWord 0.14.0 can be found
110 [here](https://github.com/PHPOffice/PHPWord/releases/tag/0.14.0).
111
112 - **[dev/release#1](https://lab.civicrm.org/dev/release/issues/1) 5.x - Update
113 version-numbering pattern
114 ([11731](https://github.com/civicrm/civicrm-core/pull/11731))**
115
116 The utility, tools/bin/scripts/set-version.php, is used to generate
117 boilerplate files for incremental updates. This change improves compatibility
118 with the version realignment (5.x.x).
119
120 - **[CRM-21810](https://issues.civicrm.org/jira/browse/CRM-21810) improve
121 changelog search panel UI
122 ([11729](https://github.com/civicrm/civicrm-core/pull/11729))**
123
124 This change improves the change log panel in Advanced Search UI. It places the
125 added/modified radio buttons at the top and moves the two search fields side by
126 side to make the layout more logical and to make better use of the space.
127
128 - **[CRM-21765](https://issues.civicrm.org/jira/browse/CRM-21765) Commit files
129 to git which are static but are generated from CodeGen like DAO files
130 ([11667](https://github.com/civicrm/civicrm-core/pull/11667))**
131
132 This change adds SchemaStructure.php and langs.php files (which are static but
133 generated from CodeGen) to git, reducing the need to run GenCode.
134
135 ### CiviCase
136
137 - **[CRM-21558](https://issues.civicrm.org/jira/browse/CRM-21558) Add batch
138 update via profile to cases
139 ([11411](https://github.com/civicrm/civicrm-core/pull/11411))**
140
141 This change adds a "Update Multiple Cases" option to search tasks and allows
142 you to batch update multiple cases in the same way as other entities.
143
144 ### CiviContribute
145
146 - **[CRM-20610](https://issues.civicrm.org/jira/browse/CRM-20610) Replace
147 payment details block with editable payment list on 'Edit Contribution' form
148 ([11748](https://github.com/civicrm/civicrm-core/pull/11748)) (preliminary
149 work)**
150
151 This change makes it possible via hook or by changing core to switch to using
152 the payment form on the 'Edit Contribution' form for payments without actually
153 making that change.
154
155 - **Fix transaction template
156 ([11811](https://github.com/civicrm/civicrm-core/pull/11811))**
157
158 Updated transaction template to make them match other templates for
159 consistency.
160
161 - **[CRM-21693](https://issues.civicrm.org/jira/browse/CRM-21693) show Display
162 Name in online pay now UI
163 ([11571](https://github.com/civicrm/civicrm-core/pull/11571))**
164
165 Before this change using the special constructed PayNow link it was not clear
166 which person the payment was for. This change makes it so the Online Pay Now
167 form shows the Display Name of the person the contribution belongs to.
168
169 ### CiviEvent
170
171 - **[CRM-21803](https://issues.civicrm.org/jira/browse/CRM-21803) Standardise
172 ParticipantPayment api to support custom data
173 ([11718](https://github.com/civicrm/civicrm-core/pull/11718))**
174
175 The ParticipantPayment API now uses the standard api function, this has the
176 added bonus of allowing this api to support custom data.
177
178 - **[CRM-21805](https://issues.civicrm.org/jira/browse/CRM-21805) Fix structure
179 for search pages in find participant
180 ([11723](https://github.com/civicrm/civicrm-core/pull/11723))**
181
182 This change restructures the Participant search pages so that the labels are
183 above the inputs for consistency and improved user experience.
184
185 ### CiviMail
186
187 - **[CRM-21576](https://issues.civicrm.org/jira/browse/CRM-21576) Implement Send
188 SMS permission ([11590](https://github.com/civicrm/civicrm-core/pull/11590))**
189
190 This change adds a permission to Send SMS. More specifically, it: Adds the Send SMS
191 permission to CRM_Core_Permissions::getCorePermissions, ensures that all
192 navigation menu entries ('Find SMS' and 'New SMS') respect the new permission,
193 Ensures that all paths (civicrm/sms/send, civicrm/activity/sms/add,
194 civicrm/mailing) respect the new permission, Only show 'Outbound SMS' action
195 from the action menu on the contact screen to users with the send SMS
196 permission, and only shows 'SMS - schedule/send' from the advanced search
197 actions to users with the send SMS permission.
198
199 - **[CRM-21140](https://issues.civicrm.org/jira/browse/CRM-21140) Agree & (if
200 applicable) implement approach to storing extension data for entities / tables
201 ([11608](https://github.com/civicrm/civicrm-core/pull/11608))**
202
203 This change makes it possible to extend Mailing with Custom data by making it
204 so the Mailing api supports custom data. This is primarily for the benefit of
205 extension writers.
206
207 - **[CRM-21405](https://issues.civicrm.org/jira/browse/CRM-21405) Allow
208 "Outbound SMS" when Mobile is not primary phone number
209 ([11252](https://github.com/civicrm/civicrm-core/pull/11252))**
210
211 This change makes it so when a contact has a mobile phone number but it is not
212 the primary number the "Outbound SMS" action is allowed, and usees the first
213 available mobile number from the contact.
214
215 - **Add 'huge' class to html textarea to match plaintext textarea
216 ([11770](https://github.com/civicrm/civicrm-core/pull/11770))**
217
218 This change makes it so that the HTML Format input and the Plain Text Format
219 input On the Message Template editor screen match.
220
221 - **[CRM-21244](https://issues.civicrm.org/jira/browse/CRM-21244) Enhancements
222 to "FROM email addresses"
223 ([11914](https://github.com/civicrm/civicrm-core/pull/11914)) (continues
224 previous work)**
225
226 Help text now adjusts according to whether the logged-in user's email is
227 allowed as a From address option.
228
229 ### CiviMember
230
231 - **[CRM-21733](https://issues.civicrm.org/jira/browse/CRM-21733) Allow
232 overriding membership status temporarily until specific date
233 ([11722](https://github.com/civicrm/civicrm-core/pull/11722) and
234 [11622](https://github.com/civicrm/civicrm-core/pull/11622))**
235
236 When overriding a membership status this change provides extra options to allow
237 a temporary status override.
238
239 Instead of having a checkbox called (Override Status?) in membership
240 add/edit/renew form, it is replaced with a select box that allow the user to
241 choose one of three options: No, Override Permanently or Override until selected
242 date.
243
244 If the first option is selected, then the membership will behave as if the old
245 (Override Status?) is *unchecked*, which means that the membership is subject to
246 membership status rules.
247
248 If the 2nd option is selected, then the membership will behave as if the old
249 (Override Status?) is *checked*, which mean that the membership status is
250 overridden and is not subject to the membership statues rules.
251
252 If the 3rd option is selected, then a new field will appear allowing the user to
253 choose a date, in this status, the membership will behave similar to option 2,
254 but when today date is equal or less than the selected date, then the "Update
255 Membership Statuses" scheduled job will automatically convert its status back to
256 *No*, which means that the membership status is overridden temporarily only for
257 the selected date and after that it will revert back and be subject to
258 membership status rules.
259
260 ### Drupal Integration
261
262 - **[civicrm/civicrm-setup#11](https://github.com/civicrm/civicrm-setup/pull/11)
263 Implement D8 initialization for civicrm-setup
264 [11695](https://github.com/civicrm/civicrm-core/pull/11695)**
265
266 This removes references to `templates/CRM/common/version.tpl` which will not
267 be created as part of the new Drupal 8 installer.
268
269 ## <a name="bugs"></a>Bugs resolved
270
271 ### Core CiviCRM
272
273 - **[CRM-21830](https://issues.civicrm.org/jira/browse/CRM-21830) State/Province
274 tokens are not working as expected in address settings for billing address
275 ([11776](https://github.com/civicrm/civicrm-core/pull/11776))**
276
277 When the 'state_province_name' token was used (in address settings), the
278 state/province was empty when 'Billing Address' was displayed. This change
279 makes it so when the 'state_province_name' token is used in address settings
280 the token is populated when the billing address is displayed
281
282 - **[CRM-21781](https://issues.civicrm.org/jira/browse/CRM-21781) Don't crash if
283 contact ID not found when viewing contact
284 ([11690](https://github.com/civicrm/civicrm-core/pull/11690))**
285
286 In various situations if one ended up at civicrm/contact/view without URL
287 parameters (for example logging back in after session expiry) a fatal error was
288 thrown.
289
290 This change makes it so that instead of throwing a fatal error one is bounced
291 back to the Civi dashboard.
292
293 - **[CRM-21826](https://issues.civicrm.org/jira/browse/CRM-21826) Default FROM
294 Email Address (for system-generated emails) link incorrect in System Status
295 Screen ([11756](https://github.com/civicrm/civicrm-core/pull/11756))**
296
297 This updates the System Status Screen to have separate links for Domain Name and From
298 Email Address.
299
300 - **/civicrm/upgrade - On finish screen, display actual version number
301 ([11705](https://github.com/civicrm/civicrm-core/pull/11705))**
302
303 The upgrade finish screen was hard-coded to always display the message "Thank
304 you for upgrading to 4.7...". This change makes it dynamic, plugging in the
305 actual version number.
306
307 - **Activity Form - Fix recently introduced warning
308 ([11815](https://github.com/civicrm/civicrm-core/pull/11815))**
309
310 Fixes a code warning thrown on the activity form.
311
312 - **[CRM-21667](https://issues.civicrm.org/jira/browse/CRM-21667) Bad timezone
313 hand-off from CMS to CRM
314 ([11800](https://github.com/civicrm/civicrm-core/pull/11800))**
315
316 This change resolves errors resulting from representation of timezone data in different
317 formats. Now timezone data is converted from GMT offset in seconds to region
318 string, as expected by related methods. This fixes takes into account daylight
319 savings time.
320
321 - **CKEditorConfig - Fix double-escaped slashes
322 ([11747](https://github.com/civicrm/civicrm-core/pull/11747))**
323
324 The "Advanced Options" section of the CKEditor configurator allows user-input
325 strings. Slashes were being escaped multiple times in that input. This fixes
326 it.
327
328 - **CiviReport - Check for trueish values of the parameter 'required'
329 ([11725](https://github.com/civicrm/civicrm-core/pull/11725))**
330
331 The value of the parameter required is not evaluated to define whether the
332 field should be shown as required or not. See previous discussion at
333 [civicrm/civicrm-dev-docs#480](https://github.com/civicrm/civicrm-dev-docs/pull/480)
334
335 - **Fix wrong tag defintion
336 ([11698](https://github.com/civicrm/civicrm-core/pull/11698))**
337
338 This change fixes some broken HTML in the Data Source help notification pop-up.
339
340 - **Fix GroupNesting, GroupOrganization, Domain to work with singleValueAlter
341 ([11689](https://github.com/civicrm/civicrm-core/pull/11689))**
342
343 This change standardizes the apis for GroupNesting, GroupOrganization, and
344 Domain and extends unit testing to cover them
345
346 - **composer.json - De-fork dependency, marcj/topsort
347 ([11687](https://github.com/civicrm/civicrm-core/pull/11687))**
348
349 When this dependency was originally added, we needed a few patches (for PHP
350 5.3 compatibility) and initially used a forked version of library. Of course,
351 it's undesirable to use a fork in the long term (e.g. harder to apply
352 upgrades; harder to merge into other build processes).
353
354 In the intervening period, upstream has merged the patches for PHP 5.3, and
355 we've politely asked downstream to get over PHP 5.3, so we're covered on both
356 ends. This change switches back to the mainline branch for marcj/topsort.
357
358 - **Ignore errors when upgrade step already took place
359 ([11685](https://github.com/civicrm/civicrm-core/pull/11685))**
360
361 - **Add/Edit Contact - Fix inconsistent capitalization
362 ([11675](https://github.com/civicrm/civicrm-core/pull/11675))**
363
364 On the "Add/Edit Contact" screen, there are several similar links: "Add another
365 phone number", "Add another IM", "Add another website". This change makes it so
366 that they are all capitalized according the same rules (e.g. standard sentence
367 case).
368
369 - **[CRM-21708](https://issues.civicrm.org/jira/browse/CRM-21708) Make structure
370 proper by adding/removing appropriate classes
371 ([11585](https://github.com/civicrm/civicrm-core/pull/11585))**
372
373 This change fixes class structure for a handful of pages to make them
374 consistent in preparation for common styling and to improve user experience.
375
376 - **[CRM-21391](https://issues.civicrm.org/jira/browse/CRM-21391) Refactor tasks
377 to use a base class
378 ([11808](https://github.com/civicrm/civicrm-core/pull/11808),
379 [11761](https://github.com/civicrm/civicrm-core/pull/11761),
380 [11762](https://github.com/civicrm/civicrm-core/pull/11762),
381 [11763](https://github.com/civicrm/civicrm-core/pull/11763),
382 [11760](https://github.com/civicrm/civicrm-core/pull/11760),
383 [11759](https://github.com/civicrm/civicrm-core/pull/11759),
384 [11758](https://github.com/civicrm/civicrm-core/pull/11758),
385 [11692](https://github.com/civicrm/civicrm-core/pull/11692), and
386 [11693](https://github.com/civicrm/civicrm-core/pull/11693))**
387
388 Refactors all the component tasks so they are extend a new base class
389 CRM_Core_Task.
390
391 This change cleans up the code and uses shared code where possible. It also
392 fixes a few bugs specifically, there were a number of issues with the "Advanced
393 Search" when switching between component types where the task list would be
394 populated with the wrong list of tasks, but the keys would trigger an action on
395 the selected component and an unexpected action may occur and there was also a
396 bug where when saving group_type mailing_list was always being checked.
397
398 - **[CRM-21777](https://issues.civicrm.org/jira/browse/CRM-21777) Improve the
399 messaging related to Directories and Resources
400 ([11802](https://github.com/civicrm/civicrm-core/pull/11802) and
401 [11680](https://github.com/civicrm/civicrm-core/pull/11680))**
402
403 This change makes it so when on the admin page "Directory Preference" or
404 "Resource URL" fields initialized in civicrm.settings.php are loaded as
405 readonly. Prior to this change the fields were being loaded as editable but
406 the values were not being saved because they were being overridden by the
407 values in the civicrm.settings.php file). This change also adds a warning
408 which lets the user know that some fields are already set (overridden) in
409 settings file.
410
411 - **[CRM-21837](https://issues.civicrm.org/jira/browse/CRM-21837) Missing states
412 for Gabon ([11793](https://github.com/civicrm/civicrm-core/pull/11793))**
413
414 This change adds missing states definition for Gabon based on current ISO
415 standard.
416
417 - **[CRM-21766](https://issues.civicrm.org/jira/browse/CRM-21766) Dedupe screen
418 gives inappropriate confirm message when clicking on batch dedupe
419 ([11670](https://github.com/civicrm/civicrm-core/pull/11670))**
420
421 After doing a batch merge which resulted in a screen of conflicts, if you were
422 to click on 'refresh list' you got a 'Do you want to leave this site? Changes
423 you made may not be saved.' popup. This change removes that popup as there was
424 nothing to edit.
425
426 - **[CRM-21773](https://issues.civicrm.org/jira/browse/CRM-21773) CRM-20858
427 breaks merging multi-value custom groups
428 ([11691](https://github.com/civicrm/civicrm-core/pull/11691))**
429
430 This change fixes a bug where Multi-value custom fields were being ignored
431 during the merge process, so that Multi-value fields are migrated if required.
432
433 - **[CRM-20554](https://issues.civicrm.org/jira/browse/CRM-20554) Error when
434 running activity report
435 ([11630](https://github.com/civicrm/civicrm-core/pull/11630))**
436
437 On the Activity Detail report, a series of warnings and notices were being
438 thrown, this change fixes the parameters of the select and from function so that
439 no errors are thrown.
440
441 - **[CRM-21809](https://issues.civicrm.org/jira/browse/CRM-21809) 'Advance
442 search' group by issue
443 ([11728](https://github.com/civicrm/civicrm-core/pull/11728))**
444
445 This fixes a bug where when doing an advanced search (with MySQL
446 FULL_GROUP_BY_MODE enabled), when one choose any activity type and searched the
447 actual number of rows listed and the row count per page differed so that the
448 count is now accurate.
449
450 - **[CRM-21806](https://issues.civicrm.org/jira/browse/CRM-21806) Search builder
451 returns no results
452 ([11769](https://github.com/civicrm/civicrm-core/pull/11769),
453 [11751](https://github.com/civicrm/civicrm-core/pull/11751), and
454 [11746](https://github.com/civicrm/civicrm-core/pull/11746))**
455
456 This change fixes a bug when using a profile in Search Views and attempting to
457 search using one of the columns from the profile the advanced search
458 incorrectly showed no results.
459
460 - **[CRM-21792](https://issues.civicrm.org/jira/browse/CRM-21792) Regression:
461 Extension API cannot filter on status in get request
462 ([11709](https://github.com/civicrm/civicrm-core/pull/11709))**
463
464 - **[CRM-21841](https://issues.civicrm.org/jira/browse/CRM-21841) objectType
465 empty in hook_civicrm_searchTasks
466 ([11861](https://github.com/civicrm/civicrm-core/pull/11861))**
467
468 - **Fix regression on CiviRules search due to exception handling
469 ([11829](https://github.com/civicrm/civicrm-core/pull/11829))**
470
471 - **Revert "CRM-8140: Not possible to select fields for export when using Custom
472 Searches" ([11828](https://github.com/civicrm/civicrm-core/pull/11828))**
473
474 ### CiviCampaign
475
476 - **Add pre and post hooks to the Survey entity
477 ([11813](https://github.com/civicrm/civicrm-core/pull/11813))**
478
479 This change makes it so `hook_civicrm_pre` and `hook_civicrm_post` are invoked
480 when a survey is saved.
481
482 - **[CRM-21797](https://issues.civicrm.org/jira/browse/CRM-21797) Change
483 Structure for Campaign search forms
484 ([11714](https://github.com/civicrm/civicrm-core/pull/11714))**
485
486 ### CiviCase
487
488 - **[dev/core#8](https://lab.civicrm.org/dev/core/issues/8) Fatal error on
489 Print/Merge Document for Cases
490 ([11932](https://github.com/civicrm/civicrm-core/pull/11932))**
491
492 - **[CRM-21789](https://issues.civicrm.org/jira/browse/CRM-21789) 'Find Case'
493 group by issue ([11706](https://github.com/civicrm/civicrm-core/pull/11706))**
494
495 This ensures that when searching cases the count of cases found is accurate.
496
497 - **Re Add CRM_Case_Form_Task::PreProcessCommon()
498 ([11928](https://github.com/civicrm/civicrm-core/pull/11928))**
499
500 ### CiviContribute
501
502 - **Fix upgrade failures from zero value `trxn_date`
503 ([11745](https://github.com/civicrm/civicrm-core/pull/11745))**
504
505 Some longstanding CiviCRM installations would have upgrade failures going to
506 4.7.19 or higher with the database error: "Incorrect datetime value:
507 '0000-00-00 00:00:00' for column 'trxn_date'" This change fixes those values
508 to be NULL prior to the query that causes the problem.
509
510 - **Add test for api money, fix net_amount calc
511 ([11801](https://github.com/civicrm/civicrm-core/pull/11801))**
512
513 Money values 5.000,77 & 5,000.77 were not being handled, they were being
514 converted to '5' by mysql insert. This change handles these values by cleaning
515 the money values in the api layer.
516
517 - **[CRM-20608](https://issues.civicrm.org/jira/browse/CRM-20608) IPN
518 thinks Paypal Pro is Standard
519 ([11777](https://github.com/civicrm/civicrm-core/pull/11777))**
520
521 This fixes an issue where the CiviCRM interprets IPN messages from PayPal Pro
522 as if they're Paypal Standard, causing problems for recurring payments. The
523 fix makes it so that all incoming PayPal Pro IPN notifications for recurring
524 contributions are correctly recorded as payments in CiviCRM.
525
526 - **[CRM-21756](https://issues.civicrm.org/jira/browse/CRM-21756) Editing
527 Contribution (total_amount) does -not- update LineItem (line_total)
528 ([11780](https://github.com/civicrm/civicrm-core/pull/11780))**
529
530 Before this fix when we change the total amount of membership payment (or
531 event registration), it doesn't update the corresponding line-item data,
532 causing a data integrity issue. This fix makes it so that when editing a
533 contribution for a membership payment or event registration the Total amount
534 field is frozen and there is help text beside this field that provides
535 instruction to perform the same task either by recreating the membership (or
536 participant record) or using Lineitem Editor.
537
538 - **[CRM-21819](https://issues.civicrm.org/jira/browse/CRM-21819) Do not load
539 "Submit Credit Card Contribution" button for invalid processors.
540 ([11757](https://github.com/civicrm/civicrm-core/pull/11757))**
541
542 Fixes a recent regression where the 'submit credit card' shows back office when
543 it should not
544
545 - **[dev/core#7](https://lab.civicrm.org/dev/core/issues/7) recurring authorize
546 IPN results in contribution with incorrect payment_instrument_id
547 ([11768](https://github.com/civicrm/civicrm-core/pull/11768))**
548
549 - **ensure pdfFilename is set
550 ([11702](https://github.com/civicrm/civicrm-core/pull/11702))**
551
552 Before this change when downloading a PDF file receipt, the name you were
553 prompted to save it as is not properly set. If it simply set to `.pdf`.
554 This change makes it so the downloaded file name is named after the invoice id.
555
556 - **Throw exception instead of using fatal
557 ([11719](https://github.com/civicrm/civicrm-core/pull/11719))**
558
559 This change makes it so an exception is thrown instead of a fatal error when
560 one starts doing a contribution, stops the browser half way through, and then
561 tries to re-submit.
562
563 - **[dev/financial#5](https://lab.civicrm.org/dev/financial/issues/5) If a
564 currency has been disabled allow the form to be submitted
565 ([11795](https://github.com/civicrm/civicrm-core/pull/11795))**
566
567 - **Fix fatal on topDonor report
568 ([11919](https://github.com/civicrm/civicrm-core/pull/11919))**
569
570 - **[CRM-21831](https://issues.civicrm.org/jira/browse/CRM-21831) and
571 [dev/report#1](https://lab.civicrm.org/dev/report/issues/1) Fix regressions in
572 contribution detail report relating to soft credits
573 ([11917](https://github.com/civicrm/civicrm-core/pull/11917))**
574
575 ### CiviEvent
576
577 - **[CRM-21764](https://issues.civicrm.org/jira/browse/CRM-21764) Recurring
578 Events without Price Set fail to save
579 ([11837](https://github.com/civicrm/civicrm-core/pull/11837))**
580
581 - **[CRM-21639](https://issues.civicrm.org/jira/browse/CRM-21639) Event pages
582 should be set to NoIndex when event is not public or in the past
583 ([11496](https://github.com/civicrm/civicrm-core/pull/11496) and
584 [11498](https://github.com/civicrm/civicrm-core/pull/11498))**
585
586 This change makes it so that the CiviCRM Print Preview pages are not indexed
587 by search engines and this change makes sure Event Info pages are not indexed
588 by search engines when the event is not public.
589
590 - **[CRM-21814](https://issues.civicrm.org/jira/browse/CRM-21814) Add proper
591 container to text
592 ([11735](https://github.com/civicrm/civicrm-core/pull/11735))**
593
594 This change adds wrapper to dangling text without any wrapper in event configure
595 tabs, there is no visual change for now.
596
597 - **[CRM-21770](https://issues.civicrm.org/jira/browse/CRM-21770) Change
598 position of help div in export participants
599 ([11678](https://github.com/civicrm/civicrm-core/pull/11678))**
600
601 This changes the position of the help div on the Export page to be outside the
602 form block to be consistent with other pages.
603
604 - **[CRM-21771](https://issues.civicrm.org/jira/browse/CRM-21771) error when
605 viewing event registration with linked contribution
606 ([11707](https://github.com/civicrm/civicrm-core/pull/11707))**
607
608 Fixes a fatal error on the Fees section of the View Event Registration Page.
609
610 ### CiviMail
611
612 - **[CRM-21848](https://issues.civicrm.org/jira/browse/CRM-21848) Mailing no
613 longer filters out email addresses on hold from recipient group
614 ([11846](https://github.com/civicrm/civicrm-core/pull/11846) and
615 [11848](https://github.com/civicrm/civicrm-core/pull/11848))**
616
617 - **[dev/mail#5](https://lab.civicrm.org/dev/mail/issues/5) "New Mailing"
618 prematurely schedules blasts
619 ([11904](https://github.com/civicrm/civicrm-core/pull/11904))**
620
621 This resolves a regression in 4.7.31 where previewing a mailing after setting
622 the scheduled date and time would end up actually scheduling the mailing.
623
624 - **[dev/mail#7](https://lab.civicrm.org/dev/mail/issues/7) On 'New Mailing'
625 review page, it doesn't show recipients count
626 ([11911](https://github.com/civicrm/civicrm-core/pull/11911))**
627
628 - **Ensure consistancy with previous behavior where user emails are first then
629 system from emails
630 ([11905](https://github.com/civicrm/civicrm-core/pull/11905))**
631
632 This resolves a regression in 4.7.31 where a user's own email would appear
633 below system From emails rather than as the first and default option.
634
635 - **[dev/mail#6](https://lab.civicrm.org/dev/mail/issues/6) On multilingual
636 mode, choosing mailing group doesn't affect recipient count and list
637 ([11906](https://github.com/civicrm/civicrm-core/pull/11906))**
638
639 ### CiviMember
640
641 - **[CRM-20421](https://issues.civicrm.org/jira/browse/CRM-20421) Inherited
642 memberships are converted to individual memberships when the "parent" for the
643 membership is merged with another contact
644 ([11154](https://github.com/civicrm/civicrm-core/pull/11154))**
645
646 This change fixes a bug where inherited memberships were being converted to
647 individual memberships when the "parent" for the membership was merged with
648 another contact so that inherited memberships get removed while merging the
649 contact if we chose not to transfer the memberships.
650
651 - **CiviMember: use `fa-ban`, proper `crm-i` class for canceled auto-renew
652 [11775](https://github.com/civicrm/civicrm-core/pull/11775)**
653
654 ### Drupal Integration
655
656 - **[CRM-21778](https://issues.civicrm.org/jira/browse/CRM-21778) Contact image
657 uploaded from drupal webform don't render on summary page
658 ([11681](https://github.com/civicrm/civicrm-core/pull/11681))**
659
660 This change fixes a bug where if a contact image was uploaded from a webform,
661 it was not displayed on the contact summary page and a notice was thrown so
662 that the image loads correctly without any notice errors.
663
664 - **[CRM-21795](https://issues.civicrm.org/jira/browse/CRM-21795) Fatal error:
665 civicrm/CRM/Utils/System/Drupal.php on line 857
666 ([11712](https://github.com/civicrm/civicrm-core/pull/11712))**
667
668 Fixes fatal error - CRM/Utils/System/Drupal.php on line 857 that occurs on
669 error.log when navigating thru a Drupal site by adding a "onCiviExit()".
670
671 ### WordPress Integration
672
673 - **[dev/core#21](https://lab.civicrm.org/dev/core/issues/21) Regression:
674 Public-facing contribution pages appearance changes on 4.7.31
675 ([11827](https://github.com/civicrm/civicrm-core/pull/11827))**
676
677 Reverses formatting change that caused a regression in 4.7.31 for the display
678 of contribution pages in wordpress.
679
680 ## <a name="misc"></a>Miscellany
681
682 - **[dev/release/1](https://lab.civicrm.org/dev/release/issues/1) - Change
683 numbering to 5.x.x
684 ([11704](https://github.com/civicrm/civicrm-core/pull/11704))**
685
686 - **[CRM-21720](https://issues.civicrm.org/jira/browse/CRM-21720) Cleanup search
687 classes to use enumerators instead of hardcoded values
688 ([11600](https://github.com/civicrm/civicrm-core/pull/11600))**
689
690 - **Fix html template structure with classes, divs & tags
691 ([11796](https://github.com/civicrm/civicrm-core/pull/11796))**
692
693 - **[CRM-21739](https://issues.civicrm.org/jira/browse/CRM-21739) Create unit
694 test for getRecipients include/exclude recipient groups
695 ([11642](https://github.com/civicrm/civicrm-core/pull/11642))**
696
697 - **[CRM-21787](https://issues.civicrm.org/jira/browse/CRM-21787) Simplify
698 CRM_Utils_System::version() to fetch version directly from xml/version.xml
699 ([11700](https://github.com/civicrm/civicrm-core/pull/11700))**
700
701 - **(NFC) Update copyright header for 2018
702 ([522](https://github.com/civicrm/civicrm-drupal/pull/522))**
703
704 - **(NFC) Update copyright header for 2018
705 ([124](https://github.com/civicrm/civicrm-wordpress/pull/124))**
706
707 - **(NFC) Update copyright header for 2018
708 ([45](https://github.com/civicrm/civicrm-joomla/pull/45))**
709
710 - **(NFC) Remove redundant line, improve docblocks
711 ([11742](https://github.com/civicrm/civicrm-core/pull/11742))**
712
713 - **(NFC) remove starting whitespace in ts about installments
714 ([11701](https://github.com/civicrm/civicrm-core/pull/11701))**
715
716 - **(NFC) Rename fiterable fields param in _civicrm_api3_basic_array_get …
717 ([11711](https://github.com/civicrm/civicrm-core/pull/11711))**
718
719 - **(NFC) Update copyright header for 2018
720 ([11713](https://github.com/civicrm/civicrm-core/pull/11713))**
721
722 - **(NFC) MembershipRenewal.php - Fix civilint error
723 ([11717](https://github.com/civicrm/civicrm-core/pull/11717))**
724
725 - **(NFC) Update `xml/templates/*` headers
726 ([11740](https://github.com/civicrm/civicrm-core/pull/11740))**
727
728 - **NFC - Minor code cleanup in CKEditorConfig.php
729 ([11774](https://github.com/civicrm/civicrm-core/pull/11774))**
730
731 - **Remove hacks from CRM_Core_Menu for old unsupported versions
732 ([11781](https://github.com/civicrm/civicrm-core/pull/11781))**
733
734 - **E-notice fix.
735 ([11799](https://github.com/civicrm/civicrm-core/pull/11799))**
736
737 - **Update test to NOT accept a failure in the api call.
738 ([11798](https://github.com/civicrm/civicrm-core/pull/11798))**
739
740 - **Make template structure proper
741 ([11788](https://github.com/civicrm/civicrm-core/pull/11788))**
742
743 - **Fix template structure
744 ([11779](https://github.com/civicrm/civicrm-core/pull/11779))**
745
746 - **Move towards standardising website.create function.
747 ([11694](https://github.com/civicrm/civicrm-core/pull/11694))**
748
749 - **Deduper - Pass arrays rather than strings to construct URLs
750 ([11671](https://github.com/civicrm/civicrm-core/pull/11671))**
751
752 ## <a name="credits"></a>Credits
753
754 This release was developed by the following code authors:
755
756 AGH Strategies - Andrew Hunt; Agileware - Alok Patel; Australian Greens - Seamus
757 Lee; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; CompuCorp -
758 Mukesh Ram, Omar Abu Hussein, René Olivo, Vinu Varshith Sekar; Coop SymbioTIC -
759 Samuel Vanhove; Davis Media Access - Darrick Servis; Fuzion - Jitendra Purohit;
760 Ginkgo Street Labs - Frank Gómez; JMA Consulting - Monish Deb; John Kingsnorth;
761 Joinery - Allen Shaw; Left Join Labs - Sean Madsen; Lighthouse Design and
762 Consulting - Brian Shaughnessy; Łukasz Krutul; MJW Consulting - Matthew Wire;
763 myDropWizard - David Snopek; Oxfam Germany - Thomas Schüttler; Progressive
764 Technology Project - Jamie McClelland; Systopia - Björn Endres; Tadpole
765 Collective - Kevin Cristiano; Third Sector Design - Michael McAndrew; Wikimedia
766 Foundation - Eileen McNaughton
767
768 Most authors also reviewed code for this release; in addition, the following
769 reviewers contributed their comments:
770
771 Agileware - Agileware Team; Artful Robot - Rich Lott; Blackfly Solutions - Alan
772 Dixon; CiviDesk - Nicolas Ganivet; CompuCorp - Jamie Novick; Coop SymbioTIC -
773 Mathieu Lutfy; Daniël van Vuuren; DevApp - Adam Kwiatkowski; Formatux - Gérard
774 Ernaelsten; Freeform Solutions - Herb van den Dool; Fuzion - Peter Davis; JMA
775 Consulting - Joe Murray; Kristine Chan; MC3 - Graham Mitchell; Matthias
776 Bärnthaler; Megaphone Technology Consulting - Jon Goldberg; Paul Treadaway;
777 Richard van Oosterhout; Semper IT - Karin Gerritsen
778
779 ## <a name="feedback"></a>Feedback
780
781 These release notes are edited by Alice Frumin and Andrew Hunt. If you'd like
782 to provide feedback on them, please login to https://chat.civicrm.org/civicrm
783 and contact `@agh1`.