# CiviCRM 4.7.24 Released September 6, 2017; - **[Synopsis](#synopsis)** - **[Features](#features)** - **[Bugs resolved](#bugs)** - **[Miscellany](#misc)** - **[Credits](#credits)** - **[Feedback](#feedback)** ## Synopsis | *Does this version...?* | | |:----------------------------------------------------------- |:-------:| | Fix security vulnerabilities? | | | Change the database schema? | | | Alter the API? | | | Require attention to configuration options? | | | Fix problems installing or upgrading to a previous version? | | | Introduce features? | | | Fix bugs? | | ## Features ### Core CiviCRM - **[CRM-20321](https://issues.civicrm.org/jira/browse/CRM-20321) Changing membership type should change related contribution ([10699](https://github.com/civicrm/civicrm-core/pull/10699))** **NOT CLEAR** NEEDS ATTENTION - **[CRM-20965](https://issues.civicrm.org/jira/browse/CRM-20965) Add Pull Request Template ([10784](https://github.com/civicrm/civicrm-core/pull/10784) and [10758](https://github.com/civicrm/civicrm-core/pull/10758))** Sets up a PR template in github to help contributers standardize their pull request documentation - **[CRM-20960](https://issues.civicrm.org/jira/browse/CRM-20960) Upgrade Dompdf to 0.8 ([10751](https://github.com/civicrm/civicrm-core/pull/10751))** - **[CRM-20929](https://issues.civicrm.org/jira/browse/CRM-20929) Allow styling of page title in Angular ([10711](https://github.com/civicrm/civicrm-core/pull/10711))** - **[CRM-20941](https://issues.civicrm.org/jira/browse/CRM-20941) Determine & notify date to end support for PHP5.3 and PHP5.4 ([10948](https://github.com/civicrm/civicrm-core/pull/10948) and [10872](https://github.com/civicrm/civicrm-core/pull/10872))** Updates messages regarding support for PHP5.3 and PHP5.4 - **[CRM-20563](https://issues.civicrm.org/jira/browse/CRM-20563) Improve 'unable to provide this...' error message ([10340](https://github.com/civicrm/civicrm-core/pull/10340))** Makes the error message more descriptive. - **[CRM-20945](https://issues.civicrm.org/jira/browse/CRM-20945) Differentiate using CSS active selected page in AtoZ Pager ([10723](https://github.com/civicrm/civicrm-core/pull/10723))** Now when using the A to Z pager (searching alphabetically) the active selected page is differentiated from the other pages listed. ### CiviContribute - **[CRM-20610](https://issues.civicrm.org/jira/browse/CRM-20610) Replace payment details block with editable payment list on 'Edit Contribution' form ([10814](https://github.com/civicrm/civicrm-core/pull/10814), [10806](https://github.com/civicrm/civicrm-core/pull/10806), [10777](https://github.com/civicrm/civicrm-core/pull/10777), and [10774](https://github.com/civicrm/civicrm-core/pull/10774))** + Code repetition of the receipt_date construct in the tpl. Once for credit card payments & once not, with no substantive difference. Consolidates them and moves them out of the payment block, which going forwards will better distinguish between the contribution and the payments towards it. + Modified payment fields like credit-card-type, pan_truncation and check_number as optional fields. + Added medium-popup to payment-edit action link to minimize the payment edit form size. But there's a limitation - if you open a popup form inside a popup form, that special class has no effect on the form size. Please check the screencast here. + Shifted the action link from left to right. + Added payment_instrument_id and trxn_id fields in payment edit form + Added formRule validation and added rule for pan_truncation to be numeric + Changed the credit_card_type icon field to card_type_id select field. + Used addField to render some FinancialTrxn fields. + Handle financial accounts if payment instrument is changed via payment edit form + Modify Financial.create API to call CRM_Core_BAO_FinancialTrxn::create(...) + Added CRM unit test for PaymentEdit - **[CRM-20890](https://issues.civicrm.org/jira/browse/CRM-20890) Move recieve_date between Contribution status and Revenue Recognition date in Contribution backoffice form ([10682](https://github.com/civicrm/civicrm-core/pull/10682))** Moves the placement of fields on the backoffice contribution form to enhance user experience. - **[CRM-20984](https://issues.civicrm.org/jira/browse/CRM-20984) Move placement of payment processor field on live mode ([10787](https://github.com/civicrm/civicrm-core/pull/10787))** Moves the placement of the choose payment processor field on live mode closer to billing block to improve user experience. - **[CRM-20860](https://issues.civicrm.org/jira/browse/CRM-20860) Add in password type field availability and apply to payment processor fields ([10660](https://github.com/civicrm/civicrm-core/pull/10660))** Adds in the ability to add in a password type field as an option for QuickForm and applies this to Payment Processor Password fields. This is because passwords are currently in clear text which isn't really suitable - **[CRM-20876](https://issues.civicrm.org/jira/browse/CRM-20876) in honor of does not show up on contribution receipt ([10668](https://github.com/civicrm/civicrm-core/pull/10668))** When making a contribution in honor of someone, the person who is being honored now shows up on the receipt. ### CiviPledge - **[CRM-20913](https://issues.civicrm.org/jira/browse/CRM-20913) Separate pledge statuses from contribution statuses ([10811](https://github.com/civicrm/civicrm-core/pull/10811), [10803](https://github.com/civicrm/civicrm-core/pull/10803), and [10737](https://github.com/civicrm/civicrm-core/pull/10737))** THIS IS A BIG CHANGE COME BACK TO IT ### CiviMail - **[CRM-20521](https://issues.civicrm.org/jira/browse/CRM-20521) Convert list of groups and mailings in CiviMail to be loaded dynamically ([10303](https://github.com/civicrm/civicrm-core/pull/10303))** Converts list of groups and mailings in CiviMail to be loaded dynamically to improve performance for sites with lots of groups and/or mailings. ### Accounting Integration - **[CRM-20987](https://issues.civicrm.org/jira/browse/CRM-20987) Add transaction date field to listings of transactions ([10789](https://github.com/civicrm/civicrm-core/pull/10789))** Financial batch listing page lists transaction with transaction date derived from civicrm_financial_trxn table(column name = Received). This PR renames the column name from Received to Transaction Date and Adding column Received derived from civicrm_contribution.receive_date ### CiviReport - **[CRM-20863](https://issues.civicrm.org/jira/browse/CRM-20863) Improve ordering of report lists ([10653](https://github.com/civicrm/civicrm-core/pull/10653))** Now if reports have the same weight they will be ordered alphabetically by title ascending - **[CRM-20994](https://issues.civicrm.org/jira/browse/CRM-20994) CurrentEmployer Report contains a hardcoded value for RelationshipType ([10795](https://github.com/civicrm/civicrm-core/pull/10795))** Changes CurrentEmployer Report to get Employee Relationship type from api instead of hardcoded value - **[CRM-20931](https://issues.civicrm.org/jira/browse/CRM-20931) Allow contact custom fields to be added to Contribution Detail report ([10713](https://github.com/civicrm/civicrm-core/pull/10713))** Now one can add contact custom fields to the Contribution Detail report. ## Bugs resolved ### Core CiviCRM - **[CRM-21135](https://issues.civicrm.org/jira/browse/CRM-21135) Activity filter preference are not remembered when enabled in display preference ([10932](https://github.com/civicrm/civicrm-core/pull/10932))** - **[CRM-21076](https://issues.civicrm.org/jira/browse/CRM-21076) Fix: Can't view/edit ACL Role Assignments ([10869](https://github.com/civicrm/civicrm-core/pull/10869))** - **Suppress error if fakeFile cannot be created. ([10677](https://github.com/civicrm/civicrm-core/pull/10677))** - **[CRM-21002](https://issues.civicrm.org/jira/browse/CRM-21002) Credit card type icons are incorrectly populated on backoffice live mode ([10799](https://github.com/civicrm/civicrm-core/pull/10799))** - **[CRM-20947](https://issues.civicrm.org/jira/browse/CRM-20947) Remove Deprecation Notice for Option group ([10788](https://github.com/civicrm/civicrm-core/pull/10788), [10782](https://github.com/civicrm/civicrm-core/pull/10782), [10768](https://github.com/civicrm/civicrm-core/pull/10768), [10750](https://github.com/civicrm/civicrm-core/pull/10750), [10743](https://github.com/civicrm/civicrm-core/pull/10743), [10732](https://github.com/civicrm/civicrm-core/pull/10732), and [10727](https://github.com/civicrm/civicrm-core/pull/10727))** - **[CRM-20944](https://issues.civicrm.org/jira/browse/CRM-20944) Remove Deprecation Notice caused by ActivityLinks ([10722](https://github.com/civicrm/civicrm-core/pull/10722))** remove use of CRM_Core_OptionGroup::getKey which is deprecated - **[CRM-20967](https://issues.civicrm.org/jira/browse/CRM-20967) Event Participants List shows Total paid and balance incorrect ([10763](https://github.com/civicrm/civicrm-core/pull/10763))** Participants List shows Total paid and balance incorrect when Deferred revenue is enabled - **[CRM-20946](https://issues.civicrm.org/jira/browse/CRM-20946) Wrong entries in financial table when contribution is cancelled ([10726](https://github.com/civicrm/civicrm-core/pull/10726))** Wrong entries in financial table when contribution is canceled, now uses line total of line item to store in financial item table - **[CRM-20607](https://issues.civicrm.org/jira/browse/CRM-20607) Can't save a reserved dedupe rule ([10383](https://github.com/civicrm/civicrm-core/pull/10383))** - **[CRM-20952](https://issues.civicrm.org/jira/browse/CRM-20952) Refresh membership tab on edits to membership payments ([10741](https://github.com/civicrm/civicrm-core/pull/10741))** - **[CRM-20910](https://issues.civicrm.org/jira/browse/CRM-20910) API call to Participant.get ignores check_permissons ([10698](https://github.com/civicrm/civicrm-core/pull/10698))** - **[CRM-20577](https://issues.civicrm.org/jira/browse/CRM-20577) When creating an activity per-contact when sending letters, store the version with rendered tokens ([10348](https://github.com/civicrm/civicrm-core/pull/10348))** - **[CRM-20970](https://issues.civicrm.org/jira/browse/CRM-20970) long postal code in db prevents searching by zipcode range ([10769](https://github.com/civicrm/civicrm-core/pull/10769))** long postal code in db prevents searching by zipcode range on some configurations. - **[CRM-20973](https://issues.civicrm.org/jira/browse/CRM-20973) Call to undefined function Civi\API\civicrm_api3_create_error() in Civi/API/Kernel.php on line 413 ([10773](https://github.com/civicrm/civicrm-core/pull/10773))** Civi/API/Kernel.php is in the Civi\API namespace and it's calling civicrm_api3_create_error() with no namespace so it's assumed (by PHP) to be in the same namespace, ie. Civi\API\civicrm_api3_create_error(). However, it's really at the top-level, ie \civicrm_api3_create_error() - **[CRM-20976](https://issues.civicrm.org/jira/browse/CRM-20976) Improve error handling when someone tries to make a credit card contribution and no processor is configured ([10775](https://github.com/civicrm/civicrm-core/pull/10775))** Now throws an error message instead of spinny wheel of death when someone tries to make a credit card contribution on a civicrm with no processor configured. - **(NFC) Fix permissions on CRM/Contribute/BAO/Contribution.php ([10766](https://github.com/civicrm/civicrm-core/pull/10766))** - **Fix placement of call to simplifyURL() function ([10762](https://github.com/civicrm/civicrm-core/pull/10762))** - **[CRM-20954](https://issues.civicrm.org/jira/browse/CRM-20954) Fatal SQL error when completing a partially paid contribution in localized installation ([10747](https://github.com/civicrm/civicrm-core/pull/10747))** - **CRM_Utils_SQL_Select - Allow fluent query execution ([10686](https://github.com/civicrm/civicrm-core/pull/10686))** - **[CRM-19575](https://issues.civicrm.org/jira/browse/CRM-19575) Cron jobs on Joomla triggers "Use of undefined constant JDEBUG" ([10715](https://github.com/civicrm/civicrm-core/pull/10715))** - **Remove broken symlink from vendor/pear/net_smtp ([10676](https://github.com/civicrm/civicrm-core/pull/10676))** - **(NFC) gitignore - Remove obsolete entries ([10714](https://github.com/civicrm/civicrm-core/pull/10714))** - **[CRM-20648](https://issues.civicrm.org/jira/browse/CRM-20648) Allow registration in event with cancelled registration ([10430](https://github.com/civicrm/civicrm-core/pull/10430))** If a user has a canceled registration for an event civi now allows them to register on the front end for that same event. - **regen.sh - Fix stale function call in sql/GenerateData.php ([10706](https://github.com/civicrm/civicrm-core/pull/10706))** - **[CRM-20995](https://issues.civicrm.org/jira/browse/CRM-20995) API - Extension get - Ignores parameter full_name as created by API explorer ([10796](https://github.com/civicrm/civicrm-core/pull/10796))** - **[CRM-20939](https://issues.civicrm.org/jira/browse/CRM-20939) $_recent variable initialised as a string in CRM_Utils_Recent when should be an array ([10721](https://github.com/civicrm/civicrm-core/pull/10721))** - **[CRM-20923](https://issues.civicrm.org/jira/browse/CRM-20923) Refactor tpl for admin mail so it respects metadata ([10704](https://github.com/civicrm/civicrm-core/pull/10704))** - **[CRM-20962](https://issues.civicrm.org/jira/browse/CRM-20962) Issue in api_v3_SettingTest where string being used but needs to be array for php7.1 ([10753](https://github.com/civicrm/civicrm-core/pull/10753))** Code Improvement for php7.1 compatibility - **[CRM-20972](https://issues.civicrm.org/jira/browse/CRM-20972) PHP7.1 New Exception generated causing failures in API_v3_SyntaxConformanceTests ([10772](https://github.com/civicrm/civicrm-core/pull/10772))** Code Improvement for php7.1 compatibility ### CiviMail - **[CRM-21100](https://issues.civicrm.org/jira/browse/CRM-21100) Empty list shown in "Send test email to group" dropdown ([10895](https://github.com/civicrm/civicrm-core/pull/10895))** In the preview section of a mailing, the "Send test email to groups" dropdown showed an empty list by default. This list is now only populated by the current list of recipients, if any. It should list existing groups even though these are not chosen as recipients. - **[CRM-21070](https://issues.civicrm.org/jira/browse/CRM-21070) Intra-rc regression:Unable to set Recipients in CiviMail in 4.7.24-rc ([10880](https://github.com/civicrm/civicrm-core/pull/10880))** ### CiviContribute - **[CRM-21027](https://issues.civicrm.org/jira/browse/CRM-21027) Next recurring payment not accurately calculated when effective date passed in ([10818](https://github.com/civicrm/civicrm-core/pull/10818))** This pull request fixes a bug that entered the code base in May, causing payment processors that rely on CiviCRM updating the next_sched_contribution_date for recurring to not get it updated. - **[CRM-20800](https://issues.civicrm.org/jira/browse/CRM-20800) User Cannot Cancel Recurring Payment With Paypal ([10833](https://github.com/civicrm/civicrm-core/pull/10833))** From reading the issue it does not seem like this is done!!! - **[CRM-20821](https://issues.civicrm.org/jira/browse/CRM-20821) Saving an existing premium product breaks the image URLs ([10761](https://github.com/civicrm/civicrm-core/pull/10761) and [10720](https://github.com/civicrm/civicrm-core/pull/10720))** - **[CRM-19941](https://issues.civicrm.org/jira/browse/CRM-19941) PHP 7.1 Compatability ([10724](https://github.com/civicrm/civicrm-core/pull/10724))** ### CiviMember - **[CRM-20961](https://issues.civicrm.org/jira/browse/CRM-20961) Non numeric php 7.1 error when running api_v3_MembershipTest ([10752](https://github.com/civicrm/civicrm-core/pull/10752))** ### CiviReport - **[CRM-20969](https://issues.civicrm.org/jira/browse/CRM-20969) Fix issue in reports where we try and append a new array key to string ([10765](https://github.com/civicrm/civicrm-core/pull/10765))** - **[CRM-21029](https://issues.civicrm.org/jira/browse/CRM-21029) Activity report SQL syntax error ([10820](https://github.com/civicrm/civicrm-core/pull/10820))** Fixes network error thrown on the Scheduled Activities dashlet "Network Error : unable to reach the server". ### CiviSMS - **[CRM-20989](https://issues.civicrm.org/jira/browse/CRM-20989) SMS Provider check in Scheduled Reminders, breaks for multisite ([10792](https://github.com/civicrm/civicrm-core/pull/10792))** ### Import - **[CRM-20875](https://issues.civicrm.org/jira/browse/CRM-20875) Import of membership custom data throws notice errors. ([10664](https://github.com/civicrm/civicrm-core/pull/10664))** ### CiviEvent - **[CRM-17236](https://issues.civicrm.org/jira/browse/CRM-17236) Custom dates fields displayed as (01/01/1970) in Events Confirmation Reciept ([10710](https://github.com/civicrm/civicrm-core/pull/10710))** - **[CRM-20915](https://issues.civicrm.org/jira/browse/CRM-20915) Creating credit card registration for event stores payment method as check ([10701](https://github.com/civicrm/civicrm-core/pull/10701))** - **[CRM-20943](https://issues.civicrm.org/jira/browse/CRM-20943) PHP 7.1 Compatability issue with Manage Events ([10748](https://github.com/civicrm/civicrm-core/pull/10748))** ## Miscellany - **[CRM-21012](https://issues.civicrm.org/jira/browse/CRM-21012) Add link to release notes in CiviCRM footer ([10807](https://github.com/civicrm/civicrm-core/pull/10807))** - **Bring 4.7.23 Release notes into 4.7.24 ([10875](https://github.com/civicrm/civicrm-core/pull/10875))** ## Credits This release was developed by the following code authors: AGH Strategies - Andrew Hunt; Australian Greens - Seamus Lee; CiviCRM - Coleman Watts, Tim Otten; CompuCorp - Michael Devery; Coop SymbioTIC - Samuel Vanhove; dsnopek; Electronic Frontier Foundation - Mark Burdett; Fuzion - Chris Burgess, Eileen McNaughton, Jitendra Purohit; JMA Consulting - Edsel Lopez, Monish Deb, Pradeep Nayak; John Kingsnorth; Korlon - Stuart Gaston; Left Join Labs - Sean Madsen; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Oxfam Germany - Thomas Schüttler; Progressive Technology Project - Jamie McClelland; Wikimedia Foundation - Eileen McNaughton Most authors also reviewed code for this release; in addition, the following reviewers contributed their comments: AGH Strategies - Andrew Hunt; Alcohol Justice - Bruce Wolfe; ASMC; Australian Greens - Seamus Lee; British Humanist Association - William Gordon; CiviCoop - Jaap Jansma; civicrm-builder; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Nicolas Ganivet; CompuCorp - Guanhuan Chen, Jamie Novick, Michael Devery; Coop SymbioTIC - Mathieu Lutfy, Samuel Vanhove, Stéphane Lussier; Dave Greenberg; DevMate - Adam Kwiatkowski; dsnopek; dvalentine@ndi.org; Electronic Frontier Foundation - Mark Burdett; Francesc Bassas i Bullich; Fuzion - Chris Burgess, Eileen McNaughton, Jitendra Purohit, Peter Davis; Greenleaf Advancement - Karen Stevenson; Hunabku; jern; JMA Consulting - Edsel Lopez, Joe Murray, Monish Deb, Pradeep Nayak; John Kingsnorth; Korlon - Stuart Gaston; Lighthouse Design and Consulting - Brian Shaughnessy; lsmithgo; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Nathan Brettell; Oxfam Germany - Thomas Schüttler; Progressive Technology Project - Jamie McClelland; Semper IT - Karin Gerritsen; Skvare - Mark Hanna; Stephen Palmstrom; Tadpole Collective - Kevin Cristiano; Team Expansion - Greg Harris; Thomas Bacon; Thomas Nilefalk; thoni56; Torrance Hodgson; Wikimedia Foundation - Eileen McNaughton ## Feedback These release notes are edited by Andrew Hunt. If you'd like to provide feedback on them, please login to https://chat.civicrm.org/civicrm and contact `@agh1`.