Commit | Line | Data |
---|---|---|
1d3756c5 AH |
1 | # CiviCRM 4.7.25 |
2 | ||
3 | Released October 4, 2017 | |
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? | no | | |
20 | | Fix problems installing or upgrading to a previous version? | no | | |
21 | | **Introduce features?** | **yes** | | |
22 | | **Fix bugs?** | **yes** | | |
23 | ||
24 | ## <a name="features"></a>Features | |
25 | ||
26 | ### Core CiviCRM | |
27 | ||
28 | - **[CRM-20769](https://issues.civicrm.org/jira/browse/CRM-20769) Allow for | |
29 | Button Text on profiles to be overriden in settings | |
30 | ([10940](https://github.com/civicrm/civicrm-core/pull/10940) and | |
31 | [11051](https://github.com/civicrm/civicrm-core/pull/11051))** | |
32 | ||
33 | This adds columns to the `civicrm_uf_group` table to support customizing | |
34 | profile buttons. | |
35 | ||
36 | - **[CRM-20964](https://issues.civicrm.org/jira/browse/CRM-20964) Include queue | |
37 | id while retrieving rows from Event Queue. | |
38 | ([10757](https://github.com/civicrm/civicrm-core/pull/10757))** | |
39 | ||
40 | `CRM_Mailing_Event_BAO_Queue::getRows()` returned rows for each intended | |
41 | recipients, but didn't include any info which differentiates each row. | |
42 | ||
43 | This adds a `queue_id` in the key column of the $result array which enables | |
44 | hooks to know which row is getting displayed. | |
45 | ||
46 | - **[CRM-21118](https://issues.civicrm.org/jira/browse/CRM-21118) Add action | |
47 | links for message templates overview at top of page | |
48 | ([10917](https://github.com/civicrm/civicrm-core/pull/10917))** | |
49 | ||
50 | Previously action links (add message template) were only shown at the bottom | |
51 | of the page. If you have lots of message templates it is not visible until | |
52 | scrolling down. This adds the links at the top of the page as well (like many | |
53 | other pages in CiviCRM). | |
54 | ||
55 | - **[CRM-20979](https://issues.civicrm.org/jira/browse/CRM-20979) pre help for | |
56 | price fields not exposed to UI. | |
57 | ([10780](https://github.com/civicrm/civicrm-core/pull/10780))** | |
58 | ||
59 | Adds a field to the Add/Edit Price Field Form to enter pre help for price | |
60 | fields. | |
61 | ||
62 | - **[CRM-20680](https://issues.civicrm.org/jira/browse/CRM-20680) Make the | |
63 | CiviCRM logo spin while waiting for next page to load | |
64 | ([10903](https://github.com/civicrm/civicrm-core/pull/10903)) (fix to previous | |
65 | work)** | |
66 | ||
67 | This fixes a side effect of the new feature that caused all CiviCRM logos on | |
68 | the page to spin. | |
69 | ||
70 | - **[CRM-21078](https://issues.civicrm.org/jira/browse/CRM-21078) Allow user to | |
71 | save and continue editing message template | |
72 | ([10871](https://github.com/civicrm/civicrm-core/pull/10871))** | |
73 | ||
74 | The message template editing screen now matches similar forms in CiviCRM by | |
75 | offering separate "Save" and "Save and Done" buttons. | |
76 | ||
77 | - **[CRM-20941](https://issues.civicrm.org/jira/browse/CRM-20941) Determine & | |
78 | notify date to end support for PHP5.3 and PHP5.4 | |
79 | ([10851](https://github.com/civicrm/civicrm-core/pull/10851))** | |
80 | ||
81 | A pre-upgrade message and system check now warn administrators of sites using | |
82 | PHP versions prior to 5.6. | |
83 | ||
84 | - **[CRM-17157](https://issues.civicrm.org/jira/browse/CRM-17157) CiviCRM money | |
85 | validation should allow more decimal places | |
86 | ([10827](https://github.com/civicrm/civicrm-core/pull/10827))** | |
87 | ||
88 | Previously, validation of money fields limited values to two decimal places. | |
89 | This allows for currencies that may have more decimal places. | |
90 | ||
91 | - **[CRM-20926](https://issues.civicrm.org/jira/browse/CRM-20926) Allow | |
92 | extensions to flag PHPIDS html/json fields | |
93 | ([10709](https://github.com/civicrm/civicrm-core/pull/10709))** | |
94 | ||
95 | Extensions can now denote fields that should be be evaluated as HTML, JSON, or | |
96 | exceptions for the intrusion detection system (IDS). | |
97 | ||
98 | - **[CRM-20155](https://issues.civicrm.org/jira/browse/CRM-20155) The dedupe | |
99 | code passes has serious maintainability issues, locked in by hooks | |
100 | ([10890](https://github.com/civicrm/civicrm-core/pull/10890)) (preliminary | |
101 | work)** | |
102 | ||
103 | This is initial cleanup work toward separating the dedupe process from the | |
104 | form layer, allowing for extensions to do custom dedupe logic. This initial | |
105 | work merely cleans up the existing processing. | |
106 | ||
107 | - **[CRM-17748](https://issues.civicrm.org/jira/browse/CRM-17748) Expose | |
108 | options['result_buffering'] to CRM_Core_DAO | |
109 | ([10585](https://github.com/civicrm/civicrm-core/pull/10585))** | |
110 | ||
111 | Queries sent to the DAO can now pass options for `DB_mysql`. Specifically, | |
112 | a `result_buffering` option can reduce PHP memory needs by calling for an | |
113 | unbuffered query. | |
114 | ||
115 | - **[CRM-20733](https://issues.civicrm.org/jira/browse/CRM-20733) Relationship | |
116 | report improvements | |
117 | ([10679](https://github.com/civicrm/civicrm-core/pull/10679))** | |
118 | ||
119 | The Relationship Report can now filter results by permissions (contact A over | |
120 | contact B and vice-versa) and order results by start date. | |
121 | ||
122 | - **[CRM-21108](https://issues.civicrm.org/jira/browse/CRM-21108) Creating | |
123 | contacts is slow, part 1 of 2: Calculating Greetings | |
124 | ([10906](https://github.com/civicrm/civicrm-core/pull/10906))** | |
125 | ||
126 | This optimizes the population of greetings for newly-created contacts, the | |
127 | slowest part of generating contacts. | |
128 | ||
129 | - **[CRM-18231](https://issues.civicrm.org/jira/browse/CRM-18231) Support safe | |
130 | migration from production to non-production instances | |
131 | ([10972](https://github.com/civicrm/civicrm-core/pull/10972), | |
132 | [10936](https://github.com/civicrm/civicrm-core/pull/10936), and | |
133 | [8724](https://github.com/civicrm/civicrm-core/pull/8724))** | |
134 | ||
135 | This introduces a feature of environment labels that can be set in | |
136 | `civicrm.settings.php` and be extended in specially-named settings files. If | |
137 | the label is anything other than `Production`, outbound email and scheduled | |
138 | jobs are disabled. See further explanation in the [Sysadmin | |
139 | Guide](https://docs.civicrm.org/sysadmin/en/master/misc/staging-production/) | |
140 | ||
141 | ### CiviCase | |
142 | ||
143 | - **[CRM-20958](https://issues.civicrm.org/jira/browse/CRM-20958) Data model: | |
144 | Track creation+modification times for activities+cases | |
145 | ([10754](https://github.com/civicrm/civicrm-core/pull/10754))** | |
146 | ||
147 | Adds timestamp columns created_date and modified_date to the tables | |
148 | `civicrm_activity` and `civicrm_case` | |
149 | ||
150 | - **[CRM-21052](https://issues.civicrm.org/jira/browse/CRM-21052) Allow opt-out | |
151 | of embedded case-activity tracking | |
152 | ([10842](https://github.com/civicrm/civicrm-core/pull/10842))** | |
153 | ||
154 | A new setting, "Enable Embedded Activity Revisions", determines whether each | |
155 | revision to a case records the change as an activity. This has been the | |
156 | behavior in the past and will continue to be the default for CiviCase until | |
157 | the redesign is complete. However, many CiviCase users may prefer to leave | |
158 | change logging to the log tables that are created when overall CiviCRM logging | |
159 | is enabled. | |
160 | ||
161 | ### CiviContribute | |
162 | ||
163 | - **[CRM-21058](https://issues.civicrm.org/jira/browse/CRM-21058) Add Event | |
164 | filter to PCP contribution report | |
165 | ([10862](https://github.com/civicrm/civicrm-core/pull/10862))** | |
166 | ||
167 | The Personal Campaign Page report now allows filtering by the title of a PCP's | |
168 | associated event. | |
169 | ||
170 | - **[CRM-20990](https://issues.civicrm.org/jira/browse/CRM-20990) Assign | |
171 | `$contributionStatus` to the Contribution Online message template | |
172 | ([10793](https://github.com/civicrm/civicrm-core/pull/10793))** | |
173 | ||
174 | The contribution status is now available as a Smarty variable on the receipt | |
175 | message template for online contributions. | |
176 | ||
177 | - **[CRM-21019](https://issues.civicrm.org/jira/browse/CRM-21019) Change column | |
178 | labels ([10813](https://github.com/civicrm/civicrm-core/pull/10813))** | |
179 | ||
180 | The column headers on accounting batch screens are now clearer. | |
181 | ||
182 | ### CiviEvent | |
183 | ||
184 | - **[CRM-20507](https://issues.civicrm.org/jira/browse/CRM-20507) Prevent | |
185 | disclosure of `is_public=0` Custom Groups in email templates | |
186 | ([10661](https://github.com/civicrm/civicrm-core/pull/10661))** | |
187 | ||
188 | Custom data groups can be public or backend-only as of 4.7.19. This | |
189 | suppresses non-public fields from email receipts for event registrations. | |
190 | ||
191 | ### CiviMail | |
192 | ||
193 | - **[CRM-20905](https://issues.civicrm.org/jira/browse/CRM-20905) Simple mail : | |
194 | Make max emails a hidden config instead of hardcoded value set to 50 | |
195 | ([10705](https://github.com/civicrm/civicrm-core/pull/10705))** | |
196 | ||
197 | The maximum number of emails sent through the quick "send an email" feature is | |
198 | set to 50. This change allows that number to be overridden through the | |
199 | setting API or settings file. | |
200 | ||
201 | ### CiviMember | |
202 | ||
203 | - **[CRM-21152](https://issues.civicrm.org/jira/browse/CRM-21152) Add spec for | |
204 | MembershipStatus.calc API function | |
205 | ([10944](https://github.com/civicrm/civicrm-core/pull/10944))** | |
206 | ||
207 | Adds a function to adjust metadata for `Calc` action. The metadata is used for | |
208 | setting defaults, documentation & validation. | |
209 | ||
210 | ### Drupal Integration | |
211 | ||
212 | - **[CRM-21016](https://issues.civicrm.org/jira/browse/CRM-21016) Allow Drupal | |
213 | views to be used for Notes related to contributions | |
214 | ([468](https://github.com/civicrm/civicrm-drupal/pull/468))** | |
215 | ||
216 | Drupal Views will now join to the `civicrm_note` table for any related entity, | |
217 | not just contacts. | |
218 | ||
219 | - **Add Contributions relevant to the Participant record. | |
220 | ([469](https://github.com/civicrm/civicrm-drupal/pull/469))** | |
221 | ||
222 | Drupal Views will now join to the `civicrm_participant_payment` table, | |
223 | allowing related contributions to be displayed alongside event registrations. | |
224 | ||
225 | ## <a name="bugs"></a>Bugs resolved | |
226 | ||
227 | ### Core CiviCRM | |
228 | ||
229 | - **[CRM-21068](https://issues.civicrm.org/jira/browse/CRM-21068) | |
230 | &lastModified() fails more gracefully. | |
231 | ([10863](https://github.com/civicrm/civicrm-core/pull/10863))** | |
232 | ||
233 | This change avoids displaying an error if something is missing from the log | |
234 | entry for a contact when shown in the summary view. | |
235 | ||
236 | - **[CRM-21099](https://issues.civicrm.org/jira/browse/CRM-21099) Contribution | |
237 | search: "Total Cancelled Amount" surprisingly includes "refunded" status | |
238 | ([10893](https://github.com/civicrm/civicrm-core/pull/10893))** | |
239 | ||
240 | In the results of a Find Contributions search, summary numbers are displayed | |
241 | at the top. One of these is "Total Cancelled Amount" this total included | |
242 | contributions with a "Refunded" or "Cancelled" status. This total now only | |
243 | includes contributions with a status of "Cancelled". | |
244 | ||
245 | - **[CRM-21075](https://issues.civicrm.org/jira/browse/CRM-21075) Notice errors | |
246 | on contact edit | |
247 | ([10878](https://github.com/civicrm/civicrm-core/pull/10878))** | |
248 | ||
249 | When a user would edit their record, a series of notices would be generated | |
250 | because of use of a deprecated function. This change removes those errors. | |
251 | ||
252 | - **[CRM-21057](https://issues.civicrm.org/jira/browse/CRM-21057) export field | |
253 | mapping limited to 25 records | |
254 | ([10848](https://github.com/civicrm/civicrm-core/pull/10848))** | |
255 | ||
256 | This resolves a bug where only 25 saved export mappings were available to | |
257 | select. | |
258 | ||
259 | - **[CRM-21124](https://issues.civicrm.org/jira/browse/CRM-21124) Fix DB error | |
260 | on deduping by criteria when criteria string is too long | |
261 | ([10921](https://github.com/civicrm/civicrm-core/pull/10921))** | |
262 | ||
263 | - **[CRM-21061](https://issues.civicrm.org/jira/browse/CRM-21061) Fix rare | |
264 | CiviReport error relating to long report names | |
265 | ([10854](https://github.com/civicrm/civicrm-core/pull/10854))** | |
266 | ||
267 | The relatively short length of the `report_id` field in the `civicrm_report` | |
268 | table meant that reports with long names would produce obtuse errors. The | |
269 | field is now 512 characters long. | |
270 | ||
271 | - **[CRM-21004](https://issues.civicrm.org/jira/browse/CRM-21004) profile: | |
272 | unable to copy profiles used for events/contribs/etc. | |
273 | ([10802](https://github.com/civicrm/civicrm-core/pull/10802))** | |
274 | ||
275 | - **[CRM-21230](https://issues.civicrm.org/jira/browse/CRM-21230) Multi-value | |
276 | custom field import fail with error message: Call to undefined method | |
277 | `CRM_Custom_Import_Parser_Api::formatContactParameters` | |
278 | ([11039](https://github.com/civicrm/civicrm-core/pull/11039))** | |
279 | ||
280 | - **[CRM-21174](https://issues.civicrm.org/jira/browse/CRM-21174) Circular | |
281 | dependency during upgrade: civicrm_menu.module_data | |
282 | ([10974](https://github.com/civicrm/civicrm-core/pull/10974))** | |
283 | ||
284 | A field to be created during the upgrade was accidentally loaded as part of | |
285 | the upgrade. | |
286 | ||
287 | - **[CRM-21175](https://issues.civicrm.org/jira/browse/CRM-21175) Fatal error on | |
288 | multiple custom field import | |
289 | ([10975](https://github.com/civicrm/civicrm-core/pull/10975))** | |
290 | ||
291 | Import mappings now must have a mapping type. This resolves an error that | |
292 | would appear when a mapping type was missing; now, the mapping type is created | |
293 | on the fly. | |
294 | ||
295 | - **[CRM-20533](https://issues.civicrm.org/jira/browse/CRM-20533) 'Update | |
296 | Indices' System Status action can get tied up (index name already exists, | |
297 | localised dbs?) | |
298 | ([10908](https://github.com/civicrm/civicrm-core/pull/10908)) (continues | |
299 | previous work)** | |
300 | ||
301 | A system check offers to update old or missing table indices when it detects | |
302 | they are missing. In practice, many sites have equivalent indices to the ones | |
303 | that are supposedly missing, but the index names differ or the index fields | |
304 | are listed in a different order. This script has had persistent problems with | |
305 | attempting to create indices that already exist or incorrectly dropping | |
306 | indices. | |
307 | ||
308 | This most recent change deletes false indices automatically when the Update | |
309 | Indices process is started rather than asking the site administrator. Any | |
310 | false-looking index that is actually good will simply be replaced when the | |
311 | missing indices are populated. | |
312 | ||
313 | - **[CRM-21110](https://issues.civicrm.org/jira/browse/CRM-21110) Relationships | |
314 | tab on contact summary runs query twice | |
315 | ([10907](https://github.com/civicrm/civicrm-core/pull/10907))** | |
316 | ||
317 | This streamlines the processing of the contact relationship listing to reduce | |
318 | the number of queries to run. | |
319 | ||
320 | - **[CRM-21142](https://issues.civicrm.org/jira/browse/CRM-21142) Installation | |
321 | fails if PHP XML module isn't installed | |
322 | ([10939](https://github.com/civicrm/civicrm-core/pull/10939))** | |
323 | ||
324 | The installer now checks that PHP SimpleXML support is present. | |
325 | ||
326 | - **[CRM-21139](https://issues.civicrm.org/jira/browse/CRM-21139) Font-Awesome | |
327 | icons not showing on fatal error screen | |
328 | ([10937](https://github.com/civicrm/civicrm-core/pull/10937))** | |
329 | ||
330 | Now `crm-i.css` is specifically loaded on the fatal error template. | |
331 | ||
332 | - **[CRM-19933](https://issues.civicrm.org/jira/browse/CRM-19933) Importing | |
333 | contacts clears out preferred communication method | |
334 | ([10731](https://github.com/civicrm/civicrm-core/pull/10731))** | |
335 | ||
336 | - **[CRM-21079](https://issues.civicrm.org/jira/browse/CRM-21079) Datetime logs | |
337 | don't supports timezones | |
338 | ([10874](https://github.com/civicrm/civicrm-core/pull/10874)) (continues | |
339 | previous work)** | |
340 | ||
341 | A system check appears if certain database fields are `DATETIME` rather than | |
342 | `TIMESTAMP`. Due to the complexity of assigning timezones and the possibility | |
343 | of customizations depending upon those fields, the check merely explains the | |
344 | situation and recommends using [Doctor | |
345 | When](https://github.com/civicrm/org.civicrm.doctorwhen), a time lord | |
346 | extension, to straighten out the situation. | |
347 | ||
348 | - **[CRM-20970](https://issues.civicrm.org/jira/browse/CRM-20970) long postal | |
349 | code in db prevents searching by zipcode range | |
350 | ([10781](https://github.com/civicrm/civicrm-core/pull/10781)) (completes | |
351 | previous work)** | |
352 | ||
353 | This adds test coverage for the fix which appeared in 4.7.24. | |
354 | ||
355 | - **[CRM-20790](https://issues.civicrm.org/jira/browse/CRM-20790) CIVICRM-159 - | |
356 | Import Contacts, Current Employer (Employee of field) is not being imported at | |
357 | all ([10808](https://github.com/civicrm/civicrm-core/pull/10808))** | |
358 | ||
359 | Import would fail to record relationships if data for one or both contacts in | |
360 | the relationship matched existing contacts. | |
361 | ||
362 | - **[CRM-21049](https://issues.civicrm.org/jira/browse/CRM-21049) Can't create a | |
363 | RelationshipType record via API with "All Contacts" as a value | |
364 | ([10839](https://github.com/civicrm/civicrm-core/pull/10839))** | |
365 | ||
366 | This prevented relationship types created in the API where one or both | |
367 | contacts could be any contact type. | |
368 | ||
369 | - **[CRM-20993](https://issues.civicrm.org/jira/browse/CRM-20993) API - | |
370 | Extension get - Cannot filter by ID anymore | |
371 | ([10794](https://github.com/civicrm/civicrm-core/pull/10794))** | |
372 | ||
373 | - **[CRM-21029](https://issues.civicrm.org/jira/browse/CRM-21029) Activity | |
374 | report SQL syntax error | |
375 | ([10819](https://github.com/civicrm/civicrm-core/pull/10819))** | |
376 | ||
377 | A SQL error would appear in the Activity Report, including the Scheduled | |
378 | Activities dashlet, when no ACL `WHERE` clauses are applicable. | |
379 | ||
380 | - **[CRM-20858](https://issues.civicrm.org/jira/browse/CRM-20858) Custom fields | |
381 | migrated even when not asked during merge | |
382 | ([10831](https://github.com/civicrm/civicrm-core/pull/10831))** | |
383 | ||
384 | - **[CRM-21129](https://issues.civicrm.org/jira/browse/CRM-21129) CLI import | |
385 | doesn't allow single-column CSVs | |
386 | ([10924](https://github.com/civicrm/civicrm-core/pull/10924))** | |
387 | ||
388 | - **[CRM-19612](https://issues.civicrm.org/jira/browse/CRM-19612) DB error | |
389 | deduping a group when rule has more than one field | |
390 | ([10405](https://github.com/civicrm/civicrm-core/pull/10405))** | |
391 | ||
392 | - **[CRM-19664](https://issues.civicrm.org/jira/browse/CRM-19664) Skip row and | |
393 | keep importing if matching this contact based on the de-dupe rule would cause | |
394 | an external ID conflict | |
395 | ([9410](https://github.com/civicrm/civicrm-core/pull/9410))** | |
396 | ||
397 | ### CiviMail | |
398 | ||
399 | - **[CRM-21077](https://issues.civicrm.org/jira/browse/CRM-21077) Warn the user | |
400 | when testing outbound mail configuration if CIVICRM_MAIL_LOG is set | |
401 | ([10870](https://github.com/civicrm/civicrm-core/pull/10870))** | |
402 | ||
403 | When sending a test email from the Outbound Email form, a user would not be | |
404 | notified if the CiviCRM settings file was set to send all outbound email to a | |
405 | log file. | |
406 | ||
407 | - **[CRM-20643](https://issues.civicrm.org/jira/browse/CRM-20643) Fix invalid | |
408 | bounce type filter for bounce report | |
409 | ([10427](https://github.com/civicrm/civicrm-core/pull/10427))** | |
410 | ||
411 | A dummy option of `-- please select --` for bounce type was hard-coded as a | |
412 | filter option. This caused the report to default to this value and not load | |
413 | any data. | |
414 | ||
415 | - **[CRM-21000](https://issues.civicrm.org/jira/browse/CRM-21000) Display result | |
416 | as Mailing on Advance Search produces DB Error | |
417 | ([10798](https://github.com/civicrm/civicrm-core/pull/10798))** | |
418 | ||
419 | This resolves an error in Advanced Search when the form is set to display | |
420 | mailings rather than contacts. | |
421 | ||
422 | - **[CRM-20855](https://issues.civicrm.org/jira/browse/CRM-20855) Disabling | |
423 | "Search Primary Details Only" causes partial CiviMail delivery failure | |
424 | ([10915](https://github.com/civicrm/civicrm-core/pull/10915))** | |
425 | ||
426 | - **[CRM-20982](https://issues.civicrm.org/jira/browse/CRM-20982) Fix: Mails | |
427 | sent via command line fail due to EHLO/HELO being "localhost" | |
428 | ([10785](https://github.com/civicrm/civicrm-core/pull/10785))** | |
429 | ||
430 | SMTP connections from the command line now attempt to identify themselves with | |
431 | `EHLO` and the base URL rather than just `EHLO localhost`. | |
432 | ||
433 | ### Backdrop Integration | |
434 | ||
435 | - **[CRM-21088](https://issues.civicrm.org/jira/browse/CRM-21088) Backdrop class | |
436 | contains `drupal_` calls that should be changed | |
437 | ([10884](https://github.com/civicrm/civicrm-core/pull/10884))** | |
438 | ||
439 | This would cause problems if Backdrop compatibility mode was disabled. | |
440 | ||
441 | - **[CRM-21098](https://issues.civicrm.org/jira/browse/CRM-21098) Prevent | |
442 | Backdrop admin drop-down menus from appearing beneath CiviCRM admin menu | |
443 | ([10892](https://github.com/civicrm/civicrm-core/pull/10892))** | |
444 | ||
445 | - **[CRM-21095](https://issues.civicrm.org/jira/browse/CRM-21095) CSS conflicts | |
446 | between CiviCRM and Backdrop | |
447 | ([10891](https://github.com/civicrm/civicrm-core/pull/10891), | |
448 | [42](https://github.com/civicrm/civicrm-backdrop/pull/42), and | |
449 | [41](https://github.com/civicrm/civicrm-backdrop/pull/41))** | |
450 | ||
451 | ### CiviCampaign | |
452 | ||
453 | - **[CRM-21094](https://issues.civicrm.org/jira/browse/CRM-21094) Minor | |
454 | improvement to display of columns in Survey Details report | |
455 | ([10889](https://github.com/civicrm/civicrm-core/pull/10889))** | |
456 | ||
457 | This arranges the columns so that contact-related fields are together and | |
458 | preceding activity fields. | |
459 | ||
460 | - **[CRM-21089](https://issues.civicrm.org/jira/browse/CRM-21089) Fatal error on | |
461 | "Interview Respondents" | |
462 | ([10885](https://github.com/civicrm/civicrm-core/pull/10885))** | |
463 | ||
464 | ### Drupal Integration | |
465 | ||
466 | - **[CRM-17652](https://issues.civicrm.org/jira/browse/CRM-17652) Symfony | |
467 | conflict between Civi and Drupal 8 | |
468 | ([10694](https://github.com/civicrm/civicrm-core/pull/10694) and | |
469 | [465](https://github.com/civicrm/civicrm-drupal/pull/465)) (in progress)** | |
470 | ||
471 | This uses Composer to install dependencies (such as Symfony) in a way that | |
472 | does not conflict with Drupal 8. It resolves a bug where Drupal 8 sites with | |
473 | CiviCRM could not install any more modules. | |
474 | ||
475 | - **[CRM-20838](https://issues.civicrm.org/jira/browse/CRM-20838) Provide alert & | |
476 | fix method for tables in the CiviCRM Db with no log table | |
477 | ([10628](https://github.com/civicrm/civicrm-core/pull/10628))** | |
478 | ||
479 | If Drupal and CiviCRM are installed with the same database and logging is | |
480 | enabled, the logging triggers get confused by the existence of tables created | |
481 | by the role sync modules. A system check now suggests that corresponding log | |
482 | tables be created when it notices this. | |
483 | ||
484 | ### CiviMember | |
485 | ||
486 | - **[CRM-21126](https://issues.civicrm.org/jira/browse/CRM-21126) | |
487 | member_is_primary not set by default on passing owner in the url | |
488 | ([10923](https://github.com/civicrm/civicrm-core/pull/10923))** | |
489 | ||
490 | The membership search now allows `owner=1` to be specified as a URL parameter | |
491 | that populates the "Primary member?" field. | |
492 | ||
493 | - **[CRM-20571](https://issues.civicrm.org/jira/browse/CRM-20571) Offline / Back | |
494 | Office Renewal fatal error when "renewal_date" set to far back. | |
495 | ([10822](https://github.com/civicrm/civicrm-core/pull/10822))** | |
496 | ||
497 | A helpful warning appears when attempting to set a membership renewal date | |
498 | prior to the join date. | |
499 | ||
500 | - **[CRM-20966](https://issues.civicrm.org/jira/browse/CRM-20966) Contribution | |
501 | deleted when relationship deleted, incorrect line items & membership_payments | |
502 | for second inherited membership created in back end via price set | |
503 | ([10759](https://github.com/civicrm/civicrm-core/pull/10759))** | |
504 | ||
505 | This resolves a problem where membership contributions would be applied | |
506 | incorrectly when one contact inherits memberships of separate types from | |
507 | separate related contacts. This could result in data loss if the relationship | |
508 | is deleted. | |
509 | ||
510 | - **[CRM-20955](https://issues.civicrm.org/jira/browse/CRM-20955) Contact's | |
511 | second membership fails to inherit when created in back end using price set | |
512 | ([10745](https://github.com/civicrm/civicrm-core/pull/10745))** | |
513 | ||
514 | ### CiviContribute | |
515 | ||
516 | - **[CRM-21055](https://issues.civicrm.org/jira/browse/CRM-21055) Change label | |
517 | of cancel button | |
518 | ([10845](https://github.com/civicrm/civicrm-core/pull/10845))** | |
519 | ||
520 | The button to exit the backend contribution form without saving is now labeled | |
521 | "Close" rather than "Cancel". This now differs from all other forms. | |
522 | ||
523 | - **[CRM-17040](https://issues.civicrm.org/jira/browse/CRM-17040) Import | |
524 | Contributions using External Id's causes soft credit to be wrongly associated | |
525 | ([10797](https://github.com/civicrm/civicrm-core/pull/10797))** | |
526 | ||
527 | This resolves a problem that occurred when importing contributions that have | |
528 | both soft credit and donor contacts identified by external ID. The | |
529 | contribution would record the soft credit contact as the actual donor. | |
530 | ||
531 | - **[CRM-20949](https://issues.civicrm.org/jira/browse/CRM-20949) | |
532 | BillingBlock.tpl contains wrong paymentProcessor object on initial load of | |
533 | backend Contribution page. | |
534 | ([10734](https://github.com/civicrm/civicrm-core/pull/10734))** | |
535 | ||
536 | - **[CRM-21087](https://issues.civicrm.org/jira/browse/CRM-21087) Payment popup | |
537 | goes weird if you click 'adjust payment amount'. | |
538 | ([10882](https://github.com/civicrm/civicrm-core/pull/10882))** | |
539 | ||
540 | The pledge payment pop-up caused problems with page focus and covering the | |
541 | Save button. | |
542 | ||
543 | - **[CRM-20936](https://issues.civicrm.org/jira/browse/CRM-20936) Hide statuses | |
544 | on backoffice contribution form | |
545 | ([10718](https://github.com/civicrm/civicrm-core/pull/10718))** | |
546 | ||
547 | Non-applicable contribution statuses are now suppressed when creating | |
548 | contributions, event registrations, and memberships on the backend. | |
549 | ||
550 | - **[CRM-21045](https://issues.civicrm.org/jira/browse/CRM-21045) Multiple email | |
551 | field shown on Contribution Page. | |
552 | ([10832](https://github.com/civicrm/civicrm-core/pull/10832))** | |
553 | ||
554 | If a contribution page included a profile with a billing email, the email | |
555 | field at the top of the contribution page would fail to disappear, resulting | |
556 | in two HTML fields for the same data. This resolves that bug. | |
557 | ||
558 | - **[CRM-21047](https://issues.civicrm.org/jira/browse/CRM-21047) TypeError: | |
559 | financialtypeIds is undefined, on contribution form | |
560 | ([10836](https://github.com/civicrm/civicrm-core/pull/10836))** | |
561 | ||
562 | This resolves a Javascript error on the backend contribution form. | |
563 | ||
564 | - **[CRM-20615](https://issues.civicrm.org/jira/browse/CRM-20615) Export only | |
565 | those batches having status Exported | |
566 | ([10394](https://github.com/civicrm/civicrm-core/pull/10394))** | |
567 | ||
568 | This prevents batches from bein exported if the status isn't yet set to | |
569 | "exported". | |
570 | ||
571 | - **[CRM-21026](https://issues.civicrm.org/jira/browse/CRM-21026) Contribution | |
572 | count on contact tabs excludes contributions with disabled financial types | |
573 | ([10824](https://github.com/civicrm/civicrm-core/pull/10824))** | |
574 | ||
575 | - **[CRM-19469](https://issues.civicrm.org/jira/browse/CRM-19469) EWay | |
576 | transaction receipt not sent when member signs up using front-end form but | |
577 | works in the CiviCRM back-end | |
578 | ([9973](https://github.com/civicrm/civicrm-core/pull/9973))** | |
579 | ||
580 | - **[CRM-21043](https://issues.civicrm.org/jira/browse/CRM-21043) Fix Dupe check | |
581 | of on behalf organisation | |
582 | ([10830](https://github.com/civicrm/civicrm-core/pull/10830))** | |
583 | ||
584 | When contributing on behalf of an organization, the organization would not be | |
585 | checked against duplicates and a new contact would be created each time. | |
586 | ||
587 | - **[CRM-19739](https://issues.civicrm.org/jira/browse/CRM-19739) "New Account | |
588 | Relationship Option Screen" does not show exception | |
589 | ([10651](https://github.com/civicrm/civicrm-core/pull/10651))** | |
590 | ||
591 | Creating an invalid account relationship would result in an endless spinning | |
592 | logo rather than displaying an error. | |
593 | ||
594 | - **[CRM-21015](https://issues.civicrm.org/jira/browse/CRM-21015) Contribution | |
595 | page creates recurring contribution even though recurring is not selected | |
596 | ([10835](https://github.com/civicrm/civicrm-core/pull/10835))** | |
597 | ||
598 | Recurring contributions would be created if a contribution page had the option | |
599 | for recurring contributions and a membership price set, even if the recurring | |
600 | contribution checkbox was empty. | |
601 | ||
602 | - **[CRM-21005](https://issues.civicrm.org/jira/browse/CRM-21005) "Record | |
603 | Payment" dialogue lacks required field and is clunky | |
604 | ([10817](https://github.com/civicrm/civicrm-core/pull/10817))** | |
605 | ||
606 | The form for recording a payment did not require a payment method even though | |
607 | that is necessary. Omitting it would result in a system error rather than a | |
608 | validation error. Also, the payment amount now defaults to the amount due. | |
609 | ||
610 | - **[CRM-21031](https://issues.civicrm.org/jira/browse/CRM-21031) Financial type | |
611 | ID display instead of label in "View Price Options" | |
612 | ([10823](https://github.com/civicrm/civicrm-core/pull/10823))** | |
613 | ||
614 | - **[CRM-19186](https://issues.civicrm.org/jira/browse/CRM-19186) Subsequent | |
615 | Installments of Recurring Credit Card Contributions Indicate a Payment | |
616 | Instrument of Check | |
617 | ([10749](https://github.com/civicrm/civicrm-core/pull/10749))** | |
618 | ||
619 | - **[CRM-17281](https://issues.civicrm.org/jira/browse/CRM-17281) Pledges | |
620 | miscalculate when total amount is not an integer and a payment is received | |
621 | that covers three installments | |
622 | ([10861](https://github.com/civicrm/civicrm-core/pull/10861))** | |
623 | ||
624 | - **[CRM-21039](https://issues.civicrm.org/jira/browse/CRM-21039) Trying to add | |
625 | Asset account relationship throws validation error | |
626 | ([10828](https://github.com/civicrm/civicrm-core/pull/10828))** | |
627 | ||
628 | - **[CRM-20988](https://issues.civicrm.org/jira/browse/CRM-20988) Don't display | |
629 | option of Export, Delete etc to users who lack that permission | |
630 | ([10791](https://github.com/civicrm/civicrm-core/pull/10791))** | |
631 | ||
632 | ### CiviCase | |
633 | ||
634 | - **[CRM-20930](https://issues.civicrm.org/jira/browse/CRM-20930) Case Detail | |
635 | Report cannot filter by "Last Action Date" | |
636 | ([10712](https://github.com/civicrm/civicrm-core/pull/10712))** | |
637 | ||
638 | - **[CRM-18082](https://issues.civicrm.org/jira/browse/CRM-18082) CiviCase API | |
639 | Create ignores custom data | |
640 | ([10728](https://github.com/civicrm/civicrm-core/pull/10728))** | |
641 | ||
642 | ### CiviEvent | |
643 | ||
644 | - **[CRM-20935](https://issues.civicrm.org/jira/browse/CRM-20935) Deleting an | |
645 | event does not delete links to profiles it used | |
646 | ([10719](https://github.com/civicrm/civicrm-core/pull/10719))** | |
647 | ||
648 | Rows in `civicrm_uf_join` were not deleted when events were deleted. This | |
649 | resolves the bug and performs a cleanup of orphaned rows upon upgrade. | |
650 | ||
651 | - **[CRM-20237](https://issues.civicrm.org/jira/browse/CRM-20237) Event | |
652 | pricesets copied with long suffix cause DB error | |
653 | ([10929](https://github.com/civicrm/civicrm-core/pull/10929))** | |
654 | ||
655 | When copied, a price set has a copy ID tacked onto the end of its title. This | |
656 | change prevents copies of copies from accumulating many copy ID add-ons. | |
657 | ||
658 | - **[CRM-21069](https://issues.civicrm.org/jira/browse/CRM-21069) Fail more | |
659 | gracefully on event display with invalid data in the DB | |
660 | ([10865](https://github.com/civicrm/civicrm-core/pull/10865))** | |
661 | ||
662 | This avoids a database error by suppressing display of participant records | |
663 | where the event has been deleted in the database. | |
664 | ||
665 | - **[CRM-20914](https://issues.civicrm.org/jira/browse/CRM-20914) participant | |
666 | note field breaking export when populated with data over 32 characters | |
667 | ([10700](https://github.com/civicrm/civicrm-core/pull/10700))** | |
668 | ||
669 | - **[CRM-20933](https://issues.civicrm.org/jira/browse/CRM-20933) Updating Pay | |
670 | later event registration from backend produces formRule error | |
671 | ([10716](https://github.com/civicrm/civicrm-core/pull/10716))** | |
672 | ||
673 | - **[CRM-21121](https://issues.civicrm.org/jira/browse/CRM-21121) Event Income | |
674 | (Summary) report backtrace with 'only_full_group_by' | |
675 | ([10926](https://github.com/civicrm/civicrm-core/pull/10926))** | |
676 | ||
677 | - **[CRM-20027](https://issues.civicrm.org/jira/browse/CRM-20027) Need 'access | |
678 | deleted contacts' permission to retrieve loc block addresses using API | |
679 | ([10916](https://github.com/civicrm/civicrm-core/pull/10916))** | |
680 | ||
681 | Addresses lacking contact IDs because they're used for event locations were | |
682 | treated like addresses belonging to deleted contacts. | |
683 | ||
684 | - **[CRM-13309](https://issues.civicrm.org/jira/browse/CRM-13309) Participant | |
685 | Role on Event's Schedule Reminder form does not populate | |
686 | ([10801](https://github.com/civicrm/civicrm-core/pull/10801))** | |
687 | ||
688 | The field to restrict scheduled reminders to specific participant roles would | |
689 | not appear. | |
690 | ||
691 | - **[CRM-20942](https://issues.civicrm.org/jira/browse/CRM-20942) Email location | |
692 | type must be 'primary' in profile or user creation won't work for event | |
693 | ([10744](https://github.com/civicrm/civicrm-core/pull/10744))** | |
694 | ||
695 | ### WordPress Integration | |
696 | ||
697 | - **Fix parameter parsing in wp-cli civicrm api. | |
698 | ([114](https://github.com/civicrm/civicrm-wordpress/pull/114))** | |
699 | ||
700 | - **[CRM-21166](https://issues.civicrm.org/jira/browse/CRM-21166) WP-CLI | |
701 | commands fail due to whitespace in regex | |
702 | ([115](https://github.com/civicrm/civicrm-wordpress/pull/115))** | |
703 | ||
704 | ### Internationalization | |
705 | ||
706 | - **[CRM-19968](https://issues.civicrm.org/jira/browse/CRM-19968) Disable | |
707 | multiple languages fixes | |
708 | ([9783](https://github.com/civicrm/civicrm-core/pull/9783))** | |
709 | ||
710 | This patch makes the following tweaks to the SQL queries that run when | |
711 | disabling multiple languages so that it is more likely to succeed. | |
712 | ||
713 | 1. Column is renamed instead of created and copied, as the copy often leads to | |
714 | a row size constraint (eg. in civicrm_event when you have some text in | |
715 | intro_text_lang). | |
716 | 2. Use DROP VIEW IF EXISTS instead of DROP VIEW (supported | |
717 | in mysql 5.1+). There is more support for IF EXISTS on other SQL functions in | |
718 | new versions of mysql but we can't use them if we're maintaining | |
719 | compatibility. | |
720 | ||
721 | ## <a name="misc"></a>Miscellany | |
722 | ||
723 | - **[CRM-21153](https://issues.civicrm.org/jira/browse/CRM-21153) Fix mispelled | |
724 | variable ([10945](https://github.com/civicrm/civicrm-core/pull/10945))** | |
725 | ||
726 | Fixes a misspelled variable | |
727 | ||
728 | - **[CRM-21065](https://issues.civicrm.org/jira/browse/CRM-21065) Replace some | |
729 | deprecated slow function calls: some CRM_Core_OptionGroup::values with | |
730 | CRM_Activity_BAO_ActivityContact::buildOptions | |
731 | ([10860](https://github.com/civicrm/civicrm-core/pull/10860))** | |
732 | ||
733 | Replace (some not all) CRM_Core_OptionGroup::values with | |
734 | CRM_Activity_BAO_ActivityContact::buildOptions where it is safe to do so (ie. | |
735 | parameters map directly). | |
736 | ||
737 | - **[CRM-20927](https://issues.civicrm.org/jira/browse/CRM-20927) Allow | |
738 | `civicrm_menu` to store new data in generic column | |
739 | ([10858](https://github.com/civicrm/civicrm-core/pull/10858)) (completes | |
740 | previous work)** | |
741 | ||
742 | The schema change is moved to a PHP-based upgrade task rather than a SQL | |
743 | incremental upgrade query template. | |
744 | ||
745 | - **[CRM-21036](https://issues.civicrm.org/jira/browse/CRM-21036) Change | |
746 | deprecated comments to tags so phpstorm marks functions as deprecated | |
747 | ([10825](https://github.com/civicrm/civicrm-core/pull/10825))** | |
748 | ||
749 | - **[CRM-21023](https://issues.civicrm.org/jira/browse/CRM-21023) Replace | |
750 | deprecated code and hardcoded IDs with pseudoconstants in Activity BAO | |
751 | ([10816](https://github.com/civicrm/civicrm-core/pull/10816))** | |
752 | ||
753 | - **(NFC) SettingsStack - Finish incomplete docblock | |
754 | ([10950](https://github.com/civicrm/civicrm-core/pull/10950))** | |
755 | ||
756 | - **Reinstate accidentally deleted test. | |
757 | ([10938](https://github.com/civicrm/civicrm-core/pull/10938))** | |
758 | ||
759 | - **NFC remove some unused vars, fix comment | |
760 | ([10886](https://github.com/civicrm/civicrm-core/pull/10886))** | |
761 | ||
762 | - **Renamed test class. | |
763 | ([10730](https://github.com/civicrm/civicrm-core/pull/10730))** | |
764 | ||
765 | - **Fix PHP Warnings. Replace fatal with statusBounce. Mark breadcrumbs | |
766 | parameter as array instead of string so editors don't give a warning | |
767 | ([10888](https://github.com/civicrm/civicrm-core/pull/10888))** | |
768 | ||
769 | - **(NFC) Update contributor-key.yml | |
770 | ([10894](https://github.com/civicrm/civicrm-core/pull/10894))** | |
771 | ||
772 | - **(NFC) Improve docs in CONTRIBUTING.md | |
773 | ([10853](https://github.com/civicrm/civicrm-core/pull/10853))** | |
774 | ||
775 | - **(NFC) SettingsStack - Add test coverage for new helper class | |
776 | ([10867](https://github.com/civicrm/civicrm-core/pull/10867))** | |
777 | ||
778 | - **[NFC] Simplify method of getting logged in contact ID | |
779 | ([10855](https://github.com/civicrm/civicrm-core/pull/10855))** | |
780 | ||
781 | - **Update CONTRIBUTORS.txt | |
782 | ([10843](https://github.com/civicrm/civicrm-core/pull/10843))** | |
783 | ||
784 | - **Update Jon Goldberg in CONTRIBUTORS.txt | |
785 | ([10840](https://github.com/civicrm/civicrm-core/pull/10840))** | |
786 | ||
787 | - **Klaas Eikelboom (Kainuk Empowerment) is member of CiviCooP | |
788 | ([10812](https://github.com/civicrm/civicrm-core/pull/10812))** | |
789 | ||
790 | - **(NFC) Lint civicrm.drush.inc | |
791 | ([473](https://github.com/civicrm/civicrm-drupal/pull/473))** | |
792 | ||
793 | ## <a name="credits"></a>Credits | |
794 | ||
795 | This release was developed by the following code authors: | |
796 | ||
797 | Aaron Jones; Abhikalak Consultants - Amal Sharma; AGH Strategies - Alice Frumin, | |
88bd6b02 | 798 | Andie Hunt; Agileware - Agileware Team, Justin Freeman; Australian Greens - |
1d3756c5 AH |
799 | Seamus Lee; CEDC - Laryn Kragt Bakker; Circle Interactive - Dave Jenkins; |
800 | CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; CiviFirst - John | |
801 | Kirk; CompuCorp - Camilo Rodriguez; Coop SymbioTIC - Mathieu Lutfy; Eaiman | |
802 | Shoshi; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; JMA | |
803 | Consulting - Edsel Lopez, Monish Deb, Pradeep Nayak; John Kingsnorth; Joinery - | |
804 | Allen Shaw; Ken West; Left Join Labs - Sean Madsen; Lemniscus - Noah Miller; | |
805 | Lighthouse Design and Consulting - Brian Shaughnessy; Megaphone Technology | |
806 | Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; myDropWizard - David | |
807 | Snopek; Oxfam Germany - Thomas Schüttler; Progressive Technology Project - Jamie | |
808 | McClelland; Randy Tobias; Tadpole Collective - Kevin Cristiano; Wikimedia | |
809 | Foundation - Eileen McNaughton | |
810 | ||
811 | Most authors also reviewed code for this release; in addition, the following | |
812 | reviewers contributed their comments: | |
813 | ||
814 | Artful Robot - Rich Lott; Barbara Miller; Black Brick Software - David Hayes; | |
815 | Blackfly Solutions - Alan Dixon; Brian Hay; Brian McFee; British Humanist | |
816 | Association - Andrew West, William Gordon; Christian Wach; Circle Interactive - | |
817 | Andrew Walker, Martin Castle; CiviCoop - Jaap Jansma, Klaas Eikelboom; CiviDesk - | |
818 | Nicolas Ganivet; Community Builders - Andrew Perry; CompuCorp - Guanhuan Chen, | |
819 | Omar Abu Hussein; Dave D; Dave Greenberg; Dave Rolsky; David Hepper; Davis Media | |
820 | Access - Darrick Servis; Deepak Srivastava; Donald Hirst; Donald Lobo; Effy | |
821 | Elden; Electronic Frontier Foundation - Mark Burdett; eQuality Technology - Greg | |
822 | Rundlett; Forest CRM Consulting - Tamar Meir; Fuzion - Chris Burgess, Peter | |
823 | Davis; Greenleaf Advancement - Guy Iaccarino; Hemophilia of North Carolina - | |
824 | Charles Register; JMA Consulting - Joe Murray; Joel Stevens; Johan Vervloet; | |
825 | Klangsoft - David Reedy Jr; Korlon - Stuart Gaston; Lullabot - Nate Lampton; | |
826 | Manish Zope; Marc Brazeau; Mathias Consulting - Cheryl Chase; Michal Mach; | |
827 | National Democratic Institute - Evan Summers; Nubay Services - David Tarrant; | |
828 | Openflows - Eric Goldhagen; Palante Technology Cooperative - Joseph Lacey; Phil | |
829 | McKerracher; Rareș Pamfil; Responsive Development Technologies - Thomas | |
830 | Nilefalk; Rex Keal; Richard van Oosterhout; Saurabh Batra; Semper IT - Karin | |
831 | Gerritsen; SEN Magazine - Jeremy Nicholls; Shailesh Lende; Skvare - Mark Hanna; | |
832 | Squiffle Consulting - Aidan Saunders; Steve Binkowski; Team Expansion - Greg | |
833 | Harris; Tobias Lounsbury; Wikimedia Foundation - Elliott Eggleston | |
834 | ||
835 | ## <a name="feedback"></a>Feedback | |
836 | ||
88bd6b02 | 837 | These release notes are edited by Alice Frumin and Andie Hunt. If you'd like |
1d3756c5 AH |
838 | to provide feedback on them, please login to https://chat.civicrm.org/civicrm |
839 | and contact `@agh1`. |