| 1 | # CiviCRM 5.24.0 |
| 2 | |
| 3 | Released April 1, 2020 |
| 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?** | **yes** | |
| 21 | | **Introduce features?** | **yes** | |
| 22 | | **Fix bugs?** | **yes** | |
| 23 | |
| 24 | ## <a name="features"></a>Features |
| 25 | |
| 26 | ### Core CiviCRM |
| 27 | |
| 28 | - **Menubar - Add "find menu item" search feature |
| 29 | ([16597](https://github.com/civicrm/civicrm-core/pull/16597))** |
| 30 | |
| 31 | Adds a new "Find menu item" search under the "Home" (Civi logo) menu which |
| 32 | allows user to locate menu items by typing a few letters. |
| 33 | |
| 34 | - **Allow advanced search for contributions without a soft credit related |
| 35 | ([dev/core#1386](https://lab.civicrm.org/dev/core/issues/1386): |
| 36 | [15834](https://github.com/civicrm/civicrm-core/pull/15834) and |
| 37 | [16622](https://github.com/civicrm/civicrm-core/pull/16622))** |
| 38 | |
| 39 | Improves the Advanced Search UI "Contributions" section "Contributions or Soft |
| 40 | Credits?" field field by adding a fifth option "Contributions without a soft |
| 41 | credit" and updating the labels for the other options. |
| 42 | |
| 43 | - **Allow payment processors to indicate whether they require an email address |
| 44 | ([dev/core#1584](https://lab.civicrm.org/dev/core/issues/1584): |
| 45 | [16503](https://github.com/civicrm/civicrm-core/pull/16503))** |
| 46 | |
| 47 | Adds a function to indicate whether a payment processor requires an email |
| 48 | address which can be used to determine whether drupal webform should require |
| 49 | an email address. |
| 50 | |
| 51 | - **Show full description under select2 options |
| 52 | ([dev/core#1587](https://lab.civicrm.org/dev/core/issues/1587): |
| 53 | [16507](https://github.com/civicrm/civicrm-core/pull/16507) and |
| 54 | [16510](https://github.com/civicrm/civicrm-core/pull/16510))** |
| 55 | |
| 56 | Improves the usability of Select-2 drop downs by displaying the |
| 57 | full description in a tool tip when hovering over an option. |
| 58 | |
| 59 | - **Migrate installers to "setup" API (Work Towards |
| 60 | [dev/core#1615](https://lab.civicrm.org/dev/core/issues/1615): |
| 61 | [16618](https://github.com/civicrm/civicrm-core/pull/16618))** |
| 62 | |
| 63 | Migrates `civicrm-setup` from its own git repo to `civicrm-core.git:setup/`. |
| 64 | |
| 65 | - **APIv4-based smart groups |
| 66 | ([16876](https://github.com/civicrm/civicrm-core/pull/16876), |
| 67 | [16666](https://github.com/civicrm/civicrm-core/pull/16666) and |
| 68 | [16834](https://github.com/civicrm/civicrm-core/pull/16834))** |
| 69 | |
| 70 | Allows smart groups to be created with APIv4 params in addition to via search |
| 71 | form values. Adds a user interface to save smart groups from the APIv4 |
| 72 | explorer. |
| 73 | |
| 74 | - **Style & layout clean up |
| 75 | ([16680](https://github.com/civicrm/civicrm-core/pull/16680))** |
| 76 | |
| 77 | Improves the Contribution Invoice template by cleaning it up, improving |
| 78 | the layout and making the CiviCRM logo comply with the display "empowered by |
| 79 | CiviCRM" setting. |
| 80 | |
| 81 | - **Relationship report - add sort order for end date |
| 82 | ([16512](https://github.com/civicrm/civicrm-core/pull/16512))** |
| 83 | |
| 84 | Improves the Relationship report by making end date available as a field to |
| 85 | sort by. |
| 86 | |
| 87 | - **add column for report |
| 88 | ([16523](https://github.com/civicrm/civicrm-core/pull/16523))** |
| 89 | |
| 90 | Adds "is active?" as an option for the "Columns" tab for the Relationship |
| 91 | report. |
| 92 | |
| 93 | - **Make php 7.3 the recommended php version |
| 94 | ([16459](https://github.com/civicrm/civicrm-core/pull/16459))** |
| 95 | |
| 96 | Makes the recommended php version 7.3. |
| 97 | |
| 98 | - **Increase php min recommended version |
| 99 | ([16668](https://github.com/civicrm/civicrm-core/pull/16668))** |
| 100 | |
| 101 | Makes the minimum recommended php version 7.2 (it was 7.1). |
| 102 | |
| 103 | - **Add pseudoconstant for priceset |
| 104 | ([16665](https://github.com/civicrm/civicrm-core/pull/16665) and |
| 105 | [16648](https://github.com/civicrm/civicrm-core/pull/16648))** |
| 106 | |
| 107 | Adds a pseudo constant for price set so that the API accepts `price_set_id` by |
| 108 | name or id. |
| 109 | |
| 110 | - **[Feature] Add in new hook alterUFFields to allow extensions to modify which |
| 111 | fields can be added to a profile |
| 112 | ([16655](https://github.com/civicrm/civicrm-core/pull/16655))** |
| 113 | |
| 114 | Adds a new hook `hook_civicrm_alterUFFields` which allows extensions to modify |
| 115 | fields in a profile. |
| 116 | |
| 117 | - **Enable the "sequentialcreditnotes" extension on new installations |
| 118 | ([16598](https://github.com/civicrm/civicrm-core/pull/16598))** |
| 119 | |
| 120 | Ensures the new core extension `sequenttialcreditnotes` is added on upgrade |
| 121 | AND install. |
| 122 | |
| 123 | - **Move settings definition on contribution settings form to metadata. |
| 124 | ([16513](https://github.com/civicrm/civicrm-core/pull/16513))** |
| 125 | |
| 126 | Moves from hard coded settings on contribution settings forms to setting a |
| 127 | spec for adding settings to a contribution form making it possible for |
| 128 | extension developers to modify the settings using a hook (like the |
| 129 | `sequentialcreditnotes` extension). |
| 130 | |
| 131 | - **Making the poor performance associated with the `creditnote_id` field opt in |
| 132 | rather than opt out (Work Towards |
| 133 | [dev/financial#84](https://lab.civicrm.org/dev/financial/issues/84): |
| 134 | [16531](https://github.com/civicrm/civicrm-core/pull/16531) and |
| 135 | [16664](https://github.com/civicrm/civicrm-core/pull/16664))** |
| 136 | |
| 137 | Refactors code in preparation of make the credit note field opt in. |
| 138 | Additionally, makes it possible to hide extensions by tagging them |
| 139 | "mgmt:hidden" and hides the `sequentialcreditnotes` extension. |
| 140 | |
| 141 | - **Upgrade Net_SMTP Package and remove now unneeded patches and move to using |
| 142 | composer patches rather than patching in a script file |
| 143 | ([16498](https://github.com/civicrm/civicrm-core/pull/16498))** |
| 144 | |
| 145 | Updates the `Net_SMTP` package to the latest version of the library and |
| 146 | standardizes patches. |
| 147 | |
| 148 | - **info.xml - Allow extensions to define a list of tags |
| 149 | ([16551](https://github.com/civicrm/civicrm-core/pull/16551))** |
| 150 | |
| 151 | Makes it so that extension developers can register tags in the info.xml file. |
| 152 | |
| 153 | - **Speed boost for civicrm/ajax/checkemail |
| 154 | ([15824](https://github.com/civicrm/civicrm-core/pull/15824))** |
| 155 | |
| 156 | Performance improvement for `civicrm/ajax/checkemail` which is used when |
| 157 | adding a cc email address to an email message among other places. |
| 158 | |
| 159 | - **Improve activity query performance in Constituent Detail Report |
| 160 | ([13078](https://github.com/civicrm/civicrm-core/pull/13078))** |
| 161 | |
| 162 | Improves performance of the "Constituent Detail Report" template. |
| 163 | |
| 164 | - **Added conditional check so that it can be altered by hook |
| 165 | ([16499](https://github.com/civicrm/civicrm-core/pull/16499))** |
| 166 | |
| 167 | Added a conditional check for printing blocks so that they can be easily |
| 168 | altered by hooks. |
| 169 | |
| 170 | - **Enable jQuery validate on register/contribution forms |
| 171 | ([16494](https://github.com/civicrm/civicrm-core/pull/16494))** |
| 172 | |
| 173 | Makes jQuery validate available by default on frontend contribution / |
| 174 | registration forms. |
| 175 | |
| 176 | ### CiviCase |
| 177 | |
| 178 | - **Add ts() for a sentence 'Add to case as role' |
| 179 | ([16630](https://github.com/civicrm/civicrm-core/pull/16630))** |
| 180 | |
| 181 | Improves translation by making the string 'Add to case as role' |
| 182 | translatable. |
| 183 | |
| 184 | - **Add CiviCase option for showing case activities in normal views |
| 185 | ([16360](https://github.com/civicrm/civicrm-core/pull/16360))** |
| 186 | |
| 187 | Provides a setting controlling whether activities that belong to cases are |
| 188 | visible outside of cases. |
| 189 | |
| 190 | ### CiviContribute |
| 191 | |
| 192 | - **Proposal: Add in payment_processor-{payment processor type} class attribute |
| 193 | to Radio HTML |
| 194 | ([dev/financial#105](https://lab.civicrm.org/dev/financial/issues/105): |
| 195 | [15940](https://github.com/civicrm/civicrm-core/pull/15940))** |
| 196 | |
| 197 | Adds a css class to each radio button for payment processor options so that |
| 198 | they can be styled distinctly. |
| 199 | |
| 200 | - **Payment edit link cannot be modified |
| 201 | ([dev/financial#117](https://lab.civicrm.org/dev/financial/issues/117): |
| 202 | [16504](https://github.com/civicrm/civicrm-core/pull/16504))** |
| 203 | |
| 204 | Makes it so the edit payment link on view of a Contribution can be modified by |
| 205 | `hook_civicrm_links`. |
| 206 | |
| 207 | - **Proposal - move source & received date to near the top on ContributionView |
| 208 | form ([dev/financial#118](https://lab.civicrm.org/dev/financial/issues/118): |
| 209 | [16565](https://github.com/civicrm/civicrm-core/pull/16565))** |
| 210 | |
| 211 | Improves the UI of Contributions in view mode by moving the source and date |
| 212 | fields closer to the top. |
| 213 | |
| 214 | ### CiviMail |
| 215 | |
| 216 | - **Pass template_type through to alterMailing hook |
| 217 | ([16529](https://github.com/civicrm/civicrm-core/pull/16529))** |
| 218 | |
| 219 | Improves `hook_civicrm_alterMailing` by passing the `template_type` |
| 220 | (traditional or mosaico). |
| 221 | |
| 222 | ### Drupal Integration |
| 223 | |
| 224 | - **Use `civicrm-setup` to handle installation |
| 225 | ([dev/drupal#4](https://lab.civicrm.org/dev/drupal/issues/4): |
| 226 | [16628](https://github.com/civicrm/civicrm-core/pull/16628))** |
| 227 | |
| 228 | Improves the installation process for drupal 8 by making it so `civicrm-setup` |
| 229 | reports the pending action. |
| 230 | |
| 231 | ## <a name="bugs"></a>Bugs resolved |
| 232 | |
| 233 | ### Core CiviCRM |
| 234 | |
| 235 | - **Export Problems from Advanced Search - Searchable Numeric Fields Throw SQL |
| 236 | Error & Not all Rows Exported |
| 237 | ([CRM-607](https://issues.civicrm.org/jira/browse/CRM-607): |
| 238 | [16627](https://github.com/civicrm/civicrm-core/pull/16627))** |
| 239 | |
| 240 | Fixes a syntax error for smart groups that reference custom fields that have |
| 241 | been removed. |
| 242 | |
| 243 | - **Do not CC or BCC (Event) Contribution invoice |
| 244 | ([dev/core#1436](https://lab.civicrm.org/dev/core/issues/1436): |
| 245 | [16005](https://github.com/civicrm/civicrm-core/pull/16005))** |
| 246 | |
| 247 | Ensures Contribution Invoices are not sent to the CC and BCC email address(s) |
| 248 | configured for Event Confirmation purposes. |
| 249 | |
| 250 | - **Group search form template does not add Datatables CSS classes (DT_RowClass) |
| 251 | ([dev/core#1547](https://lab.civicrm.org/dev/core/issues/1547): |
| 252 | [16359](https://github.com/civicrm/civicrm-core/pull/16359) and |
| 253 | [16743](https://github.com/civicrm/civicrm-core/pull/16743))** |
| 254 | |
| 255 | Ensures child groups are nested on the Manage Groups form. |
| 256 | |
| 257 | - **Multisite domain group fails on 5.20.0 (Work Towards |
| 258 | [dev/core#1450](https://lab.civicrm.org/dev/core/issues/1450): |
| 259 | [16095](https://github.com/civicrm/civicrm-core/pull/16095))** |
| 260 | |
| 261 | Improves performance of the multi site domain group to keep it from crashing |
| 262 | on sites with large domain groups. |
| 263 | |
| 264 | - **scheduled reminder: select participant role permissions require admin & |
| 265 | don't match rest of scheduled reminder permissions |
| 266 | ([dev/core#1568](https://lab.civicrm.org/dev/core/issues/1568): |
| 267 | [16455](https://github.com/civicrm/civicrm-core/pull/16455))** |
| 268 | |
| 269 | Ensures that non-administrator users setting scheduled reminders can limit by |
| 270 | participant role. |
| 271 | |
| 272 | - **Custom Group Types not filterable |
| 273 | ([dev/core#1577](https://lab.civicrm.org/dev/core/issues/1577): |
| 274 | [16475](https://github.com/civicrm/civicrm-core/pull/16475))** |
| 275 | |
| 276 | Ensures that the "Custom Group Type" filter works on the "Manage Groups" form. |
| 277 | |
| 278 | - **E_WARNING on New/Edit Tag screen |
| 279 | ([dev/core#1593](https://lab.civicrm.org/dev/core/issues/1593) and |
| 280 | [dev/core#1536](https://lab.civicrm.org/dev/core/issues/1536): |
| 281 | [16554](https://github.com/civicrm/civicrm-core/pull/16554))** |
| 282 | |
| 283 | Fixes count E_WARNING on the Tag screen. |
| 284 | |
| 285 | - **Extension unit tests broken in master |
| 286 | ([dev/core#1594](https://lab.civicrm.org/dev/core/issues/1594): |
| 287 | [16544](https://github.com/civicrm/civicrm-core/pull/16544))** |
| 288 | |
| 289 | Ensures extension unit tests run. |
| 290 | |
| 291 | - **Undefined offset 0 in system check for custom fields after upgrade to 5.23 |
| 292 | ([dev/core#1636](https://lab.civicrm.org/dev/core/issues/1636): |
| 293 | [16707](https://github.com/civicrm/civicrm-core/pull/16707))** |
| 294 | |
| 295 | Fixes an E_NOTICE "Undefined index 0 line 109 in |
| 296 | CRM/Utils/Check/Component/Schema.php" when logging in to a site with smart |
| 297 | groups that don't have `form_values[0]` (most likely made thru the API). |
| 298 | |
| 299 | - **Fix SettingTrait YesNo translation |
| 300 | ([16685](https://github.com/civicrm/civicrm-core/pull/16685))** |
| 301 | |
| 302 | Ensures "Yes/no" radio admin settings are correctly translated. |
| 303 | |
| 304 | - **TokenProcessor - fix greetings tokens |
| 305 | ([16624](https://github.com/civicrm/civicrm-core/pull/16624))** |
| 306 | |
| 307 | Ensure greetings tokens get populated as expected. |
| 308 | |
| 309 | - **Contact Type Values with Cap in order to be well translated with ts() |
| 310 | ([16638](https://github.com/civicrm/civicrm-core/pull/16638))** |
| 311 | |
| 312 | Ensures Contact Types get translated in the task menu. |
| 313 | |
| 314 | - **CommunicationPreferences 'loclize' -> 'localize' |
| 315 | ([16633](https://github.com/civicrm/civicrm-core/pull/16633))** |
| 316 | |
| 317 | Ensures the "Communication Preferences" field options get localized. |
| 318 | |
| 319 | - **Convert civicrm_note.modified_date to timestamp |
| 320 | ([16338](https://github.com/civicrm/civicrm-core/pull/16338))** |
| 321 | |
| 322 | Ensures the `civicrm_note.modified_date` field stores the date and time before |
| 323 | this change this field only stored the date. |
| 324 | |
| 325 | - **Fix two more php-finding regexes |
| 326 | ([16606](https://github.com/civicrm/civicrm-core/pull/16606))** |
| 327 | |
| 328 | Ensures the APIv4 explorer loads regardless regardless of the enclosing path. |
| 329 | |
| 330 | - **Settings Fix setting readonly attribute |
| 331 | ([16451](https://github.com/civicrm/civicrm-core/pull/16451))** |
| 332 | |
| 333 | Ensures that when a setting is defined via "civicrm.settings.php" it is set to |
| 334 | read only in the ui. |
| 335 | |
| 336 | - **Fix issues with retrieving supportsTestMode/supportsLiveMode for payment |
| 337 | processors ([15330](https://github.com/civicrm/civicrm-core/pull/15330))** |
| 338 | |
| 339 | Improves performance and ensures that one cannot select a live payment |
| 340 | processor on the back end payment form in test mode. |
| 341 | |
| 342 | - **State/province not copied on shared address |
| 343 | ([dev/core#1605](https://lab.civicrm.org/dev/core/issues/1605): |
| 344 | [16649](https://github.com/civicrm/civicrm-core/pull/16649))** |
| 345 | |
| 346 | - **Activity Summary civireport gives fatal error when grouping activity date by |
| 347 | quarter ([dev/core#1619](https://lab.civicrm.org/dev/core/issues/1619): |
| 348 | [16643](https://github.com/civicrm/civicrm-core/pull/16643))** |
| 349 | |
| 350 | - **Fix parameter format for upgrade call to install/enable |
| 351 | sequentialcreditnotes |
| 352 | ([16686](https://github.com/civicrm/civicrm-core/pull/16686))** |
| 353 | |
| 354 | - **Activity Report: filtering by "is null" or "is not null" is ignored |
| 355 | ([dev/core#1627](https://lab.civicrm.org/dev/core/issues/1627): |
| 356 | [16672](https://github.com/civicrm/civicrm-core/pull/16672))** |
| 357 | |
| 358 | - **Fix backoffice participant partial payments to be stdised & not miscalculate |
| 359 | net_amount ([16442](https://github.com/civicrm/civicrm-core/pull/16442))** |
| 360 | |
| 361 | - **Throwing API_Exception if file fails to copy when creating attachment |
| 362 | ([16465](https://github.com/civicrm/civicrm-core/pull/16465))** |
| 363 | |
| 364 | - **Do not enable core payment processor types that we believe likely don't work |
| 365 | on new installs |
| 366 | ([16362](https://github.com/civicrm/civicrm-core/pull/16362))** |
| 367 | |
| 368 | - **Resolve notices if first donation amount and date columns were disabled |
| 369 | ([16491](https://github.com/civicrm/civicrm-core/pull/16491))** |
| 370 | |
| 371 | - **Allow any casting done in Type::validate to bubble up to |
| 372 | Request::retrieveValue |
| 373 | ([16525](https://github.com/civicrm/civicrm-core/pull/16525))** |
| 374 | |
| 375 | - **Fix a PHP notice for users with limited permissions when loading a contact's |
| 376 | summary ([16515](https://github.com/civicrm/civicrm-core/pull/16515))** |
| 377 | |
| 378 | - **Do not fatally fail on angular pages if an extension is missing |
| 379 | ([16533](https://github.com/civicrm/civicrm-core/pull/16533))** |
| 380 | |
| 381 | - **fix contribution summary report's statistics when grouping and having |
| 382 | ([16467](https://github.com/civicrm/civicrm-core/pull/16467))** |
| 383 | |
| 384 | - **Fix smart group custom field check to cope with api error |
| 385 | ([16750](https://github.com/civicrm/civicrm-core/pull/16750))** |
| 386 | |
| 387 | - **Inline editing not working on admin option value-like screens |
| 388 | ([dev/core#1651](https://lab.civicrm.org/dev/core/issues/1651): |
| 389 | [16779](https://github.com/civicrm/civicrm-core/pull/16779) and |
| 390 | [16791](https://github.com/civicrm/civicrm-core/pull/16791))** |
| 391 | |
| 392 | - **Fix fatal error on loading extension page when an extension has been deleted |
| 393 | ([16752](https://github.com/civicrm/civicrm-core/pull/16752))** |
| 394 | |
| 395 | - **Can't install 5.23 in another language |
| 396 | ([dev/translation#40](https://lab.civicrm.org/dev/translation/issues/40): |
| 397 | [16842](https://github.com/civicrm/civicrm-core/pull/16842))** |
| 398 | |
| 399 | - **Don't cache the full path of extensions so they don't break with dynamic |
| 400 | paths |
| 401 | ([dev/cloud-native#21](https://lab.civicrm.org/dev/cloud-native/issues/21): |
| 402 | [15410](https://github.com/civicrm/civicrm-core/pull/15410))** |
| 403 | |
| 404 | - **Monetary Amount Display setting not respected for price set totals |
| 405 | ([dev/core#1019](https://lab.civicrm.org/dev/core/issues/1019): |
| 406 | [16487](https://github.com/civicrm/civicrm-core/pull/16487))** |
| 407 | |
| 408 | - **mailing label primary address selection ignored if global option |
| 409 | searchPrimaryDetailsOnly disabled |
| 410 | ([dev/core#1158](https://lab.civicrm.org/dev/core/issues/1158): |
| 411 | [14928](https://github.com/civicrm/civicrm-core/pull/14928) and |
| 412 | [16640](https://github.com/civicrm/civicrm-core/pull/16640))** |
| 413 | |
| 414 | - **APIv4 - Correctly return null values from DAO save actions |
| 415 | ([16645](https://github.com/civicrm/civicrm-core/pull/16645))** |
| 416 | |
| 417 | - **Api4 - Display sql errors in explorer |
| 418 | ([16641](https://github.com/civicrm/civicrm-core/pull/16641))** |
| 419 | |
| 420 | - **"DB Error: unknown error" when merging if duplicate contact has null |
| 421 | created_date ([dev/core#1589](https://lab.civicrm.org/dev/core/issues/1589): |
| 422 | [16543](https://github.com/civicrm/civicrm-core/pull/16543))** |
| 423 | |
| 424 | - **Exporting contacts via membership dashboard click through selects all |
| 425 | contacts in database |
| 426 | ([dev/user-interface#14](https://lab.civicrm.org/dev/user-interface/issues/14): |
| 427 | [16763](https://github.com/civicrm/civicrm-core/pull/16763) and |
| 428 | [16933](https://github.com/civicrm/civicrm-core/pull/16933))** |
| 429 | |
| 430 | Fixes a bug where the links from the membership dashboard 'appear to work' but |
| 431 | then don't work in export. |
| 432 | |
| 433 | ### CiviCampaign |
| 434 | |
| 435 | - **Secondarily order campaign dashboard by id |
| 436 | ([15316](https://github.com/civicrm/civicrm-core/pull/15316))** |
| 437 | |
| 438 | Improves the "Campaign Dashboard" by organizing Campaigns by Start Date and |
| 439 | then Id so that if campaigns are rapidly added they show up in the correct |
| 440 | order. |
| 441 | |
| 442 | ### CiviCase |
| 443 | |
| 444 | - **Case Activities Report includes core activities *always* |
| 445 | ([dev/core#1366](https://lab.civicrm.org/dev/core/issues/1366): |
| 446 | [16669](https://github.com/civicrm/civicrm-core/pull/16669), |
| 447 | [16660](https://github.com/civicrm/civicrm-core/pull/16660) and |
| 448 | [15998](https://github.com/civicrm/civicrm-core/pull/15998))** |
| 449 | |
| 450 | Improves printing/generating the Case Activity Audit by skipping a screen |
| 451 | that does not work and cleaning up the code. |
| 452 | |
| 453 | - **Incorrect boolean comparisons in ang/crmCaseType/list.html for is_active and |
| 454 | is_reserved ([dev/core#1451](https://lab.civicrm.org/dev/core/issues/1451): |
| 455 | [16035](https://github.com/civicrm/civicrm-core/pull/16035))** |
| 456 | |
| 457 | Ensures the correct drop down actions are displayed on the case type listing |
| 458 | screen. |
| 459 | |
| 460 | - **My Case dashlet doesn't sort by name but contact_id instead |
| 461 | ([dev/core#1623](https://lab.civicrm.org/dev/core/issues/1623): |
| 462 | [16647](https://github.com/civicrm/civicrm-core/pull/16647))** |
| 463 | |
| 464 | Ensures the case dashlet sorts by contact sort name. |
| 465 | |
| 466 | - **Remove hardcoded settings from form and use SettingForm.tpl for Case |
| 467 | settings ([16600](https://github.com/civicrm/civicrm-core/pull/16600))** |
| 468 | |
| 469 | - **Adding a timeline to a case doesn't get the last activity in the timeline |
| 470 | right ([dev/core#1675](https://lab.civicrm.org/dev/core/issues/1675): |
| 471 | [16926](https://github.com/civicrm/civicrm-core/pull/16926))** |
| 472 | |
| 473 | ### CiviContribute |
| 474 | |
| 475 | - **when importing contributions, can't match contact on phone number |
| 476 | ([dev/core#1438](https://lab.civicrm.org/dev/core/issues/1438): |
| 477 | [16009](https://github.com/civicrm/civicrm-core/pull/16009))** |
| 478 | |
| 479 | Ensures when importing contributions, phone number is listed as a field to |
| 480 | match on and that matching via phone number works as expected. |
| 481 | |
| 482 | - **Invoice does not assign/display the contact's country |
| 483 | ([dev/financial#109](https://lab.civicrm.org/dev/financial/issues/109): |
| 484 | [15964](https://github.com/civicrm/civicrm-core/pull/15964))** |
| 485 | |
| 486 | - **CRM_Utils_Money::equals should round to monetary values then compare, not do |
| 487 | a difference comparison. |
| 488 | ([dev/financial#104](https://lab.civicrm.org/dev/financial/issues/104): |
| 489 | [15856](https://github.com/civicrm/civicrm-core/pull/15856))** |
| 490 | |
| 491 | - **Count refunds when calculating amount due for an invoice |
| 492 | ([16506](https://github.com/civicrm/civicrm-core/pull/16506))** |
| 493 | |
| 494 | ### CiviMail |
| 495 | |
| 496 | - **Unsubscribe broken on multilingual sites -- may cause mass unsubscribes to |
| 497 | all groups ([dev/core#1622](https://lab.civicrm.org/dev/core/issues/1622): |
| 498 | [16634](https://github.com/civicrm/civicrm-core/pull/16634))** |
| 499 | |
| 500 | ### CiviMember |
| 501 | |
| 502 | - **Deleting memberships does not delete its related line item. |
| 503 | ([dev/membership#17](https://lab.civicrm.org/dev/membership/issues/17): |
| 504 | [15859](https://github.com/civicrm/civicrm-core/pull/15859))** |
| 505 | |
| 506 | - **Related / Inherited Memberships: Custom fields not filled with data |
| 507 | ([dev/core#1365](https://lab.civicrm.org/dev/core/issues/1365): |
| 508 | [15884](https://github.com/civicrm/civicrm-core/pull/15884))** |
| 509 | |
| 510 | ### Backdrop Integration |
| 511 | |
| 512 | - **bin/*, extern/* - Fix leak of "$config" in global namespace backdrop |
| 513 | ([16702](https://github.com/civicrm/civicrm-core/pull/16702))** |
| 514 | |
| 515 | This removes the `$config` variable from some pre CMS boot locations to avoid |
| 516 | issues with backdrop compatability. |
| 517 | |
| 518 | ### Drupal Integration |
| 519 | |
| 520 | - **Multi-select custom data shows values not labels in drupal user record |
| 521 | ([CRM-984](https://issues.civicrm.org/jira/browse/CRM-984): |
| 522 | [549](https://github.com/civicrm/civicrm-drupal/pull/549))** |
| 523 | |
| 524 | Ensures that the "Add CiviCRM Tag to Contact" action lists Tags as options |
| 525 | instead of Groups. |
| 526 | |
| 527 | - **Check email when creating a user in drupal 8 |
| 528 | ([15390](https://github.com/civicrm/civicrm-core/pull/15390))** |
| 529 | |
| 530 | Ensures when creating a new Drupal8 user via a CiviCRM profile, the email |
| 531 | address entered is validated as a unique user email. |
| 532 | |
| 533 | - **`E2E_Cache_*Test` raises dependency-hell in D8 |
| 534 | ([dev/core#1562](https://lab.civicrm.org/dev/core/issues/1562): |
| 535 | [16522](https://github.com/civicrm/civicrm-core/pull/16522))** |
| 536 | |
| 537 | ### Joomla Integration |
| 538 | |
| 539 | - **CiviCRM upgrade to 5.23.0 breaks payment processor |
| 540 | ([dev/financial#120](https://lab.civicrm.org/dev/financial/issues/120): |
| 541 | [16761](https://github.com/civicrm/civicrm-core/pull/16761))** |
| 542 | |
| 543 | Fixes loading of several javascript and css assets on front end pages (such as |
| 544 | the contribution page) in Joomla. |
| 545 | |
| 546 | - **CiviCRM menu disappears and upgrade to 5.23.x fails if Joomla is in a folder |
| 547 | below the website. |
| 548 | ([dev/joomla#26](https://lab.civicrm.org/dev/joomla/issues/26): |
| 549 | [16887](https://github.com/civicrm/civicrm-core/pull/16887))** |
| 550 | |
| 551 | ### WordPress Integration |
| 552 | |
| 553 | - **5.23 breaks WP admin menu links |
| 554 | ([dev/core#1637](https://lab.civicrm.org/dev/core/issues/1637): |
| 555 | [16721](https://github.com/civicrm/civicrm-core/pull/16721), |
| 556 | [16735](https://github.com/civicrm/civicrm-core/pull/16735))** |
| 557 | |
| 558 | - **Fix display of administrator permissions in WordPress Multisite |
| 559 | ([dev/core#1628](https://lab.civicrm.org/dev/core/issues/1628): |
| 560 | [16675](https://github.com/civicrm/civicrm-core/pull/16675))** |
| 561 | |
| 562 | Ensures that users with the role "Network |
| 563 | Administrator" can limit the permissions for users with the role "Site |
| 564 | Administrator" for WordPress with Multisite. |
| 565 | |
| 566 | - **Fix synchronisation of Users to Contacts in WordPress Multisite |
| 567 | ([dev/core#1629](https://lab.civicrm.org/dev/core/issues/1629): |
| 568 | [16676](https://github.com/civicrm/civicrm-core/pull/16676))** |
| 569 | |
| 570 | For WordPress Multisite's ensures that only users of a particular sub site are |
| 571 | synced to CiviCRM for that sub site. |
| 572 | |
| 573 | ## <a name="misc"></a>Miscellany |
| 574 | |
| 575 | - **Update CKEditor 4.14 |
| 576 | ([16841](https://github.com/civicrm/civicrm-core/pull/16841))** |
| 577 | |
| 578 | - **Remove fatal from form |
| 579 | ([16500](https://github.com/civicrm/civicrm-core/pull/16500))** |
| 580 | |
| 581 | - **Add deprecation notices on PartialAmount params |
| 582 | ([16505](https://github.com/civicrm/civicrm-core/pull/16505))** |
| 583 | |
| 584 | - **fix headers ([16492](https://github.com/civicrm/civicrm-core/pull/16492))** |
| 585 | |
| 586 | - **API Kernel - cleanup deprecated fn & unused param |
| 587 | ([16511](https://github.com/civicrm/civicrm-core/pull/16511))** |
| 588 | |
| 589 | - **Common.js - remove duplicate function |
| 590 | ([16508](https://github.com/civicrm/civicrm-core/pull/16508))** |
| 591 | |
| 592 | - **Fix calls to Request::retrieve |
| 593 | ([16526](https://github.com/civicrm/civicrm-core/pull/16526))** |
| 594 | |
| 595 | - **APIv4 - merge ActionUtil with Request::create |
| 596 | ([16516](https://github.com/civicrm/civicrm-core/pull/16516))** |
| 597 | |
| 598 | - **Fix year typo. |
| 599 | ([16486](https://github.com/civicrm/civicrm-core/pull/16486))** |
| 600 | |
| 601 | - **Remove reference to mysql 5.0 & 5.1 |
| 602 | ([16539](https://github.com/civicrm/civicrm-core/pull/16539))** |
| 603 | |
| 604 | - **Change "Added By" to "Added by" |
| 605 | ([16527](https://github.com/civicrm/civicrm-core/pull/16527))** |
| 606 | |
| 607 | - **Remove old defines for flexmailer that haven't been required since CiviCRM |
| 608 | 5.x ([16528](https://github.com/civicrm/civicrm-core/pull/16528))** |
| 609 | |
| 610 | - **Make savedSearch bao sane |
| 611 | ([16575](https://github.com/civicrm/civicrm-core/pull/16575))** |
| 612 | |
| 613 | - **Add deprecation notice |
| 614 | ([16585](https://github.com/civicrm/civicrm-core/pull/16585))** |
| 615 | |
| 616 | - **Move determination of year & month to formatCreditCardDetails |
| 617 | ([16562](https://github.com/civicrm/civicrm-core/pull/16562))** |
| 618 | |
| 619 | - **Add description to params for api3 Payment.get |
| 620 | ([16602](https://github.com/civicrm/civicrm-core/pull/16602))** |
| 621 | |
| 622 | - **Move sequentialcreditnotes under `ext/` folder |
| 623 | ([16616](https://github.com/civicrm/civicrm-core/pull/16616))** |
| 624 | |
| 625 | - **Removed Invalid Parameter from function doc |
| 626 | ([16631](https://github.com/civicrm/civicrm-core/pull/16631))** |
| 627 | |
| 628 | - **civicrm.settings.php.template - Simplify examples of `$civicrm_setting` |
| 629 | ([16636](https://github.com/civicrm/civicrm-core/pull/16636))** |
| 630 | |
| 631 | - **Remove unused columns from civicrm_saved_search |
| 632 | ([16637](https://github.com/civicrm/civicrm-core/pull/16637))** |
| 633 | |
| 634 | - **News dashboard - Code cleanup to update js & css |
| 635 | ([16632](https://github.com/civicrm/civicrm-core/pull/16632))** |
| 636 | |
| 637 | - **Fix mistake in comment |
| 638 | ([16657](https://github.com/civicrm/civicrm-core/pull/16657))** |
| 639 | |
| 640 | - **Remove helper function now that contribution settings is not weirdly stored |
| 641 | ([16566](https://github.com/civicrm/civicrm-core/pull/16566))** |
| 642 | |
| 643 | - **added sudo constant for sms api type |
| 644 | ([16679](https://github.com/civicrm/civicrm-core/pull/16679))** |
| 645 | |
| 646 | - **Add setEntityId() to entityForm |
| 647 | ([16020](https://github.com/civicrm/civicrm-core/pull/16020))** |
| 648 | |
| 649 | - **Remove deprecated function CRM_Contact_BAO_GroupContactCache::remove |
| 650 | ([16682](https://github.com/civicrm/civicrm-core/pull/16682))** |
| 651 | |
| 652 | - **Ancient switch statement that provides hardcoded translation doesn't do |
| 653 | anything anymore |
| 654 | ([dev/translation#37](https://lab.civicrm.org/dev/translation/issues/37): |
| 655 | [16619](https://github.com/civicrm/civicrm-core/pull/16619))** |
| 656 | |
| 657 | - **Cleanup copyValues DAO function |
| 658 | ([16589](https://github.com/civicrm/civicrm-core/pull/16589))** |
| 659 | |
| 660 | - **Remove unused code |
| 661 | ([16493](https://github.com/civicrm/civicrm-core/pull/16493))** |
| 662 | |
| 663 | - **remove unnecessary file |
| 664 | ([16502](https://github.com/civicrm/civicrm-core/pull/16502))** |
| 665 | |
| 666 | - **[REF] Fix static call to non-static function. |
| 667 | ([16552](https://github.com/civicrm/civicrm-core/pull/16552))** |
| 668 | |
| 669 | - **[REF] Change function signature to support moving this off the form layer |
| 670 | ([16677](https://github.com/civicrm/civicrm-core/pull/16677))** |
| 671 | |
| 672 | - **[REF] Remove FPDI library from packages as it is deployed by composer |
| 673 | ([287](https://github.com/civicrm/civicrm-packages/pull/287))** |
| 674 | |
| 675 | - **[REF] Use relative path for finding the advmultiseletct javascript |
| 676 | ([286](https://github.com/civicrm/civicrm-packages/pull/286))** |
| 677 | |
| 678 | - **[REF] Remove patch from dompdf cleanup script that is no longer needed |
| 679 | ([16490](https://github.com/civicrm/civicrm-core/pull/16490))** |
| 680 | |
| 681 | - **(REF) Move CIVICRM_MAIL_LOG logic from patch-files to wrapper-class |
| 682 | ([16497](https://github.com/civicrm/civicrm-core/pull/16497))** |
| 683 | |
| 684 | - **[REF] Remove never used property |
| 685 | ([16540](https://github.com/civicrm/civicrm-core/pull/16540))** |
| 686 | |
| 687 | - **([REF] Fix handling of owner url parameter from Membership Dashboard |
| 688 | [16937](https://github.com/civicrm/civicrm-core/pull/16937))** |
| 689 | |
| 690 | - **REF Refactor ActivityTokens to use a trait that can be shared with other |
| 691 | entities ([16468](https://github.com/civicrm/civicrm-core/pull/16468))** |
| 692 | |
| 693 | - **[REF] Extract function to getTransactionInfo |
| 694 | ([16545](https://github.com/civicrm/civicrm-core/pull/16545))** |
| 695 | |
| 696 | - **[REF] Update civicrm_generated following merge of #16362 |
| 697 | ([16605](https://github.com/civicrm/civicrm-core/pull/16605))** |
| 698 | |
| 699 | - **[REF] Extract self-service eligibility code into its own function |
| 700 | ([16615](https://github.com/civicrm/civicrm-core/pull/16615))** |
| 701 | |
| 702 | - **[REF] Only call getACLs when contact_id is present, remove handling |
| 703 | ([16667](https://github.com/civicrm/civicrm-core/pull/16667))** |
| 704 | |
| 705 | - **[REF] Deprecate _html2pdf_tcpdf function in favour of _html2pdf_dompdf |
| 706 | ([16662](https://github.com/civicrm/civicrm-core/pull/16662))** |
| 707 | |
| 708 | - **[REF] simple function extraction |
| 709 | ([16642](https://github.com/civicrm/civicrm-core/pull/16642))** |
| 710 | |
| 711 | - **[REF] Removed unused function |
| 712 | ([16663](https://github.com/civicrm/civicrm-core/pull/16663))** |
| 713 | |
| 714 | - **[REF] Refactor adding payment processor radio section onto register and |
| 715 | contribution main forms |
| 716 | ([16595](https://github.com/civicrm/civicrm-core/pull/16595))** |
| 717 | |
| 718 | - **[REF] Add in pre and post hooks to UFField Entity |
| 719 | ([16653](https://github.com/civicrm/civicrm-core/pull/16653))** |
| 720 | |
| 721 | - **[NFC] Use insert ignore for inserts into civicrm_extension to stop warnings |
| 722 | on duplicate entry for sequential credit notes extension |
| 723 | ([16644](https://github.com/civicrm/civicrm-core/pull/16644))** |
| 724 | |
| 725 | - **[NFC] dev/core#1466 Update Documentation URLS to be the correct links in the |
| 726 | security component check |
| 727 | ([dev/core#1466](https://lab.civicrm.org/dev/core/issues/1466): |
| 728 | [16085](https://github.com/civicrm/civicrm-core/pull/16085))** |
| 729 | |
| 730 | - **[NFC] Convert Custom Field BAO file to use short array syntax |
| 731 | ([16613](https://github.com/civicrm/civicrm-core/pull/16613))** |
| 732 | |
| 733 | - **[NFC] dev/core#1621 Extend unit tests to ensure that entity financial |
| 734 | account is correctly deleted when financial type is deleted |
| 735 | ([dev/core#1621](https://lab.civicrm.org/dev/core/issues/1621): |
| 736 | [16639](https://github.com/civicrm/civicrm-core/pull/16639))** |
| 737 | |
| 738 | - **[NFC] Minor code cleanup |
| 739 | ([16563](https://github.com/civicrm/civicrm-core/pull/16563))** |
| 740 | |
| 741 | - **[NFC] Preliminary cleanup |
| 742 | ([16557](https://github.com/civicrm/civicrm-core/pull/16557))** |
| 743 | |
| 744 | - **(NFC) Fix typo - no hyphen in 'override' |
| 745 | ([16571](https://github.com/civicrm/civicrm-core/pull/16571))** |
| 746 | |
| 747 | - **(NFC) Remove `$Id$` from header |
| 748 | ([16582](https://github.com/civicrm/civicrm-core/pull/16582))** |
| 749 | |
| 750 | - **[NFC] Test cleanup. |
| 751 | ([16581](https://github.com/civicrm/civicrm-core/pull/16581))** |
| 752 | |
| 753 | - **[NFC] Add missing letter "h" in upgrade script for task description |
| 754 | ([16687](https://github.com/civicrm/civicrm-core/pull/16687))** |
| 755 | |
| 756 | - **[TEST] Unit test environment no longer working on windows after latest |
| 757 | CodeGen updates |
| 758 | ([dev/core#1572](https://lab.civicrm.org/dev/core/issues/1572): |
| 759 | [16477](https://github.com/civicrm/civicrm-core/pull/16477))** |
| 760 | |
| 761 | - **[TEST] CRM_Event_BAO_AdditionalPaymentTest::testAddPartialPayment should |
| 762 | have status transition checks fixed & enabled |
| 763 | ([dev/financial#102](https://lab.civicrm.org/dev/financial/issues/102): |
| 764 | [16564](https://github.com/civicrm/civicrm-core/pull/16564))** |
| 765 | |
| 766 | ## <a name="credits"></a>Credits |
| 767 | |
| 768 | This release was developed by the following code authors: |
| 769 | |
| 770 | a-n The Artists Information Company - William Mortada; AGH Strategies - Alice |
| 771 | Frumin, Andie Hunt; Agileware - Agileware Team, Francis Whittle; Alexy |
| 772 | Mikhailichenko; breheret; Calibrate - Wouter Hechtermans; CEPR - Josh Brown; |
| 773 | Chris Burgess; Christian Wach; Circle Interactive - Pradeep Nayak; CiviCoop - |
| 774 | Klaas Eikelboom; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; |
| 775 | Coop SymbioTIC - Mathieu Lutfy; Dave D; Electronic Frontier Foundation - Mark |
| 776 | Burdett; Francesc Bassas i Bullich; Freeform Solutions - Herb van den Dool; |
| 777 | Fuzion - Jitendra Purohit; Greenpeace Central and Eastern Europe - Patrick |
| 778 | Figel; GMCVO Databases - Jade Gaunt; iXiam - Luciano Spiegel; Jens Schuppe; JMA |
| 779 | Consulting - Monish Deb, Seamus Lee; Kartik Kathuria; Lighthouse Design and |
| 780 | Consulting - Brian Shaughnessy; Makoa - Usha F. Matisson; Megaphone Technology |
| 781 | Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Progressive Technology |
| 782 | Project - Jamie McClelland; Richard van Oosterhout; Roomify, LLC - Adrian |
| 783 | Rollett; Squiffle Consulting - Aidan Saunders; Tadpole Collective - Kevin |
| 784 | Cristiano; Wikimedia Foundation - Eileen McNaughton, Elliott Eggleston, Maggie |
| 785 | Epps |
| 786 | |
| 787 | Most authors also reviewed code for this release; in addition, the following |
| 788 | reviewers contributed their comments: |
| 789 | |
| 790 | a-n The Artists Information Company - William Mortada; Agileware - Justin |
| 791 | Freeman; Andrew Cormick-Dockery; Artful Robot - Rich Lott; Betty Dolfing; |
| 792 | British Humanist Association - Andrew West; CiviCoop - Jaap Jansma, Matthijs |
| 793 | Keijser; CiviDesk - Sunil Pawar; Joinery - Allen Shaw; MJCO - Mikey O'Toole; |
| 794 | Simon John Parker; Third Sector Design - Michael McAndrew; |
| 795 | |
| 796 | ## <a name="feedback"></a>Feedback |
| 797 | |
| 798 | These release notes are edited by Alice Frumin and Andie Hunt. If you'd like |
| 799 | to provide feedback on them, please log in to https://chat.civicrm.org/civicrm |
| 800 | and contact `@agh1`. |