First commit

This commit is contained in:
Theodotos Andreou 2018-01-14 13:10:16 +00:00
commit c6e2478c40
13918 changed files with 2303184 additions and 0 deletions

View file

@ -0,0 +1,824 @@
# CiviCRM 4.7.14
Released December 7, 2016
- **[Features](#features)**
- **[Bugs resolved](#bugs)**
- **[Credits](#credits)**
## <a name="features"></a>Features
### Core CiviCRM
- **[CRM-19494](https://issues.civicrm.org/jira/browse/CRM-19494) Refactoring of
permission code ([9246](https://github.com/civicrm/civicrm-core/pull/9246) and
[9339](https://github.com/civicrm/civicrm-core/pull/9339))**
Improve performance of contact view/edit permissions
- **CRM_Utils_Check - Suggest using `[cms.root]`, etal
([8466](https://github.com/civicrm/civicrm-core/pull/8466))**
Add a system check to see if directories and resource URLs are using the new
path tokens—and report a message if not.
- **[CRM-19533](https://issues.civicrm.org/jira/browse/CRM-19533) System check
to see if important folders are writable
([9285](https://github.com/civicrm/civicrm-core/pull/9285))**
If CiviCRM cant write to certain important folders, a system check message
should appear.
- **[CRM-19463](https://issues.civicrm.org/jira/browse/CRM-19463) Get
E2E_AllTests working on php7
([9268](https://github.com/civicrm/civicrm-core/pull/9268))**
Responses from SOAP requests to the API should be encoded properly to be
compatible with PHP 7
- **[CRM-19606](https://issues.civicrm.org/jira/browse/CRM-19606) Provide help
text in installer to provide mysql port, if mysql is running on different port
([9354](https://github.com/civicrm/civicrm-core/pull/9354))**
Explain how an alternate MySQL port can be specified on install
- **[CRM-19644](https://issues.civicrm.org/jira/browse/CRM-19644) Set a value
for iDisplayLength in jsortable.tpl
([9380](https://github.com/civicrm/civicrm-core/pull/9380))**
Listings that use DataTables should display 25 items at a time by default
- **[CRM-17795](https://issues.civicrm.org/jira/browse/CRM-17795) Api - add
support for joins and ACLs
([9413](https://github.com/civicrm/civicrm-core/pull/9413)) [completes
previous work]**
Add support for joins to OpenID in API Get operations
- **[CRM-19581](https://issues.civicrm.org/jira/browse/CRM-19581) Default third
gender should not be 'Transgender'
([9417](https://github.com/civicrm/civicrm-core/pull/9417))**
The default set of genders should be "Female", "Male", and "Other"
### Accounting
- **[CRM-16189](https://issues.civicrm.org/jira/browse/CRM-16189) Improve
support for Accrual Method bookkeeping
([9338](https://github.com/civicrm/civicrm-core/pull/9338))**
Cleanup of code from earlier improvements.
### CiviCampaign
- **[CRM-19595](https://issues.civicrm.org/jira/browse/CRM-19595) Adding street
address to the survey details report
([9299](https://github.com/civicrm/civicrm-core/pull/9299))**
Includes all address fields in the survey details report
### CiviCase
- **[CRM-19552](https://issues.civicrm.org/jira/browse/CRM-19552) Case API may
throw SQL errors when case_id not provided
([9308](https://github.com/civicrm/civicrm-core/pull/9308))**
The Case.update API will accept the `id` parameter as case ID if `case_id` is
missing.
### CiviContribute
- **[CRM-19583](https://issues.civicrm.org/jira/browse/CRM-19583) Show financial
type for line items when viewing them back-office
([9337](https://github.com/civicrm/civicrm-core/pull/9337))**
- **[CRM-19601](https://issues.civicrm.org/jira/browse/CRM-19601) Add support
for `is_email_receipt` to api calls to completetransaction and
repeattransaction
([9353](https://github.com/civicrm/civicrm-core/pull/9353) and
[9403](https://github.com/civicrm/civicrm-core/pull/9403))**
Allow the Contribute.completetransaction API to override the contribution form
settings for emailing a receipt.
### CiviEvent
- **[CRM-18139](https://issues.civicrm.org/jira/browse/CRM-18139) Notification
needed when using Batch Update of Participants via Profile (currently only
when using Change Participant Status function)
([9372](https://github.com/civicrm/civicrm-core/pull/9372))**
Clarifies help text notification emails go out upon bulk participant status
change only if the participant registered online.
### CiviMember
- **[CRM-19556](https://issues.civicrm.org/jira/browse/CRM-19556) Allow to
search on active membership
([9314](https://github.com/civicrm/civicrm-core/pull/9314) and
[9457](https://github.com/civicrm/civicrm-core/pull/9457))**
Membership search includes a single option to search for memberships whose
statuses are considered "current".
### Backdrop integration
- **bin/givi - Add backdrop support
([8944](https://github.com/civicrm/civicrm-core/pull/8944))**
Support Backdrop in the givi script.
### Drupal integration
- **[CRM-19640](https://issues.civicrm.org/jira/browse/CRM-19640) Dynamic custom
fieldsets for Webform Integration
([9377](https://github.com/civicrm/civicrm-core/pull/9377))**
Add pre and post hooks for custom field operations
- **[CRM-19274]( ) Access Instant Messaging in Drupal Views ([civicrm-drupal
395](https://github.com/civicrm/civicrm-drupal/pull/395))**
Expose instant messenger values in Views
- **[CRM-16479](https://issues.civicrm.org/jira/browse/CRM-16479) Support image
styles for contact image in Drupal Views ([civicrm-drupal
364](https://github.com/civicrm/civicrm-drupal/pull/364))**
Let the Image module display contact images in site-specific styles within
Views
- **[CRM-19568](https://issues.civicrm.org/jira/browse/CRM-19568) Expose
recurring contribution processor ID to views ([civicrm-drupal
406](https://github.com/civicrm/civicrm-drupal/pull/406))**
## <a name="bugs"></a>Bugs resolved
### Core CiviCRM
- **[CRM-19472](https://issues.civicrm.org/jira/browse/CRM-19472) Export headers
for relationships are in machine name format
([9187](https://github.com/civicrm/civicrm-core/pull/9187))**
Fixed problem where relationship type labels were not displaying correctly in
export files
- **[CRM-19380](https://issues.civicrm.org/jira/browse/CRM-19380) Allow for
multiple from email addresses but only one per domain
([9066](https://github.com/civicrm/civicrm-core/pull/9066))**
- **[CRM-19122](https://issues.civicrm.org/jira/browse/CRM-19122) Group
Organization & parent default code should be the same
([8751](https://github.com/civicrm/civicrm-core/pull/8751))**
In a multisite instance of CiviCRM, you should be able to set the group
organization for smart groups as well as static groups.
- **[CRM-19471](https://issues.civicrm.org/jira/browse/CRM-19471) Custom
relationships for custom contact types not available during export
([9259](https://github.com/civicrm/civicrm-core/pull/9259))**
Fixed problem where related contacts, related via relationship types specific
to contact subtypes, were not available in the export screen.
- **[CRM-19079](https://issues.civicrm.org/jira/browse/CRM-19079) Profile edit
permission checks bypass standard route in WP
([8707](https://github.com/civicrm/civicrm-core/pull/8707))**
Fixed problem in WordPress where the normal permission checks and hooks were
bypassed on profiles in edit mode.
- **[CRM-19490](https://issues.civicrm.org/jira/browse/CRM-19490) Add a "short
date" format setting to allow for localized display of dates in profile fields
([9253](https://github.com/civicrm/civicrm-core/pull/9253))**
When date fields appear in profiles on the confirmation page of contribution
pages, they should show the date in the localized format.
- **[CRM-17616](https://issues.civicrm.org/jira/browse/CRM-17616) Moving to an
arbitrary search page result could lead to incomplete results
([9266](https://github.com/civicrm/civicrm-core/pull/9266))**
When viewing hundreds of rows in search results, a cache is kept of the next
several hundred rows; this cache should be filled and sized according to the
page being viewed.
- **Minor comment fix
([9269](https://github.com/civicrm/civicrm-core/pull/9269))**
- **[CRM-19511](https://issues.civicrm.org/jira/browse/CRM-19511) Disabled
fields still visible in "Import Multi-value Custom Data"
([9274](https://github.com/civicrm/civicrm-core/pull/9274))**
When importing multi-value custom data, disabled custom fields should not be
available for import.
- **[CRM-19512](https://issues.civicrm.org/jira/browse/CRM-19512) Ensure that
language param is always passed in for navigation script url
([9280](https://github.com/civicrm/civicrm-core/pull/9280))**
When getting a locale, there should always be a result; `en_US` is the
fallback.
- **[CRM-19528](https://issues.civicrm.org/jira/browse/CRM-19528)
Internationalise "Select Code" on contributions page widget tab
([9282](https://github.com/civicrm/civicrm-core/pull/9282))**
The US English words "select code" on the contribution page widget should be
translated.
- **[CRM-19313](https://issues.civicrm.org/jira/browse/CRM-19313) Can't assign
custom group to relationships with two contact subtypes involved
([9287](https://github.com/civicrm/civicrm-core/pull/9287) and
[9328](https://github.com/civicrm/civicrm-core/pull/9328))**
- **[CRM-19529](https://issues.civicrm.org/jira/browse/CRM-19529)
Upcoming/Recent Case Activities results into "Network Error" in PHP 7
([9283](https://github.com/civicrm/civicrm-core/pull/9283))**
- **[CRM-18953](https://issues.civicrm.org/jira/browse/CRM-18953) Better cleanup
of news widget markup
([9289](https://github.com/civicrm/civicrm-core/pull/9289))**
Formatting tags and style should be stripped out of news items in the CiviCRM
News dashlet
- **[CRM-19513](https://issues.civicrm.org/jira/browse/CRM-19513) Saved search
is incorrectly using IN rather than BETWEEN for custom fields for civicrm
group cache ([9284](https://github.com/civicrm/civicrm-core/pull/9284))**
A smart group based upon a search by range should include the whole range, not
just the extremes.
- **[CRM-19540](https://issues.civicrm.org/jira/browse/CRM-19540) UFGroup API
does not respect name parameter
([9295](https://github.com/civicrm/civicrm-core/pull/9295))**
Creating a profile through the API should allow you to specify a machine name
rather than have it generated from the title
- **[CRM-19541](https://issues.civicrm.org/jira/browse/CRM-19541) Custom Date
Range saved search doesn't sets default values to the input
([9297](https://github.com/civicrm/civicrm-core/pull/9297))**
After creating a smart group, the values displayed in the search form should
reflect the smart group criteria. Until this fix, range criteria for a date
field werent filled.
- **[CRM-19559](https://issues.civicrm.org/jira/browse/CRM-19559) Handling for
postal_code missing in CRM_Contact_BAO_Contact_Utils::contactDetails()
([9313](https://github.com/civicrm/civicrm-core/pull/9313))**
Fixed problem when Postal Code is enabled in Settings :: Search Preferences ::
Autocomplete Contact Search it was not retrieved in Contribute, Activity,
Member and Event batch forms.
- **[CRM-19543](https://issues.civicrm.org/jira/browse/CRM-19543) api fields set
to '0' are not passed to _civicrm_api3_api_match_pseudoconstant for validation
([9320](https://github.com/civicrm/civicrm-core/pull/9320))**
An integer field with the value "0" should not bypass validation
- **[CRM-19563](https://issues.civicrm.org/jira/browse/CRM-19563) Mappings from
search builder saved with mapping_type_id = NULL
([9316](https://github.com/civicrm/civicrm-core/pull/9316))**
When creating a smart group from search builder, the mapping type should be
set as "Search Builder", and the mapping should not appear in the
import/export mappings list.
- **[CRM-19278](https://issues.civicrm.org/jira/browse/CRM-19278) Google
Geocoding - Errors are ignored
([8956](https://github.com/civicrm/civicrm-core/pull/8956))**
If Google returns an error while geocoding (other than not finding any results
for the address), the error message should be logged.
- **[CRM-19394](https://issues.civicrm.org/jira/browse/CRM-19394) Relative date
ranges no longer working in Smart Group criteria
([9332](https://github.com/civicrm/civicrm-core/pull/9332),
[9334](https://github.com/civicrm/civicrm-core/pull/9334), and
[9392](https://github.com/civicrm/civicrm-core/pull/9392))**
Store the relative date criteria (e.g. "this calendar year") rather than
todays computed values for relative dates when saving searches
- **Comment Fixes for CRM/Profile directory
([9351](https://github.com/civicrm/civicrm-core/pull/9351))**
- **[CRM-19607](https://issues.civicrm.org/jira/browse/CRM-19607) Usability
issue - mapping vs mapping
([9355](https://github.com/civicrm/civicrm-core/pull/9355))**
Reword the geocode option during import to say "geocode" instead of "mapping",
since an unrelated "saved field mapping" option is also on the form.
- **[CRM-19571](https://issues.civicrm.org/jira/browse/CRM-19571) Smart Groups
don't save Relation Contact settings
([9352](https://github.com/civicrm/civicrm-core/pull/9352))**
If search results are based upon related contacts, a smart group based upon
that search should be made up of the related contacts
- **[CRM-19616](https://issues.civicrm.org/jira/browse/CRM-19616) Incorrect URL
for manage tags ([9359](https://github.com/civicrm/civicrm-core/pull/9359))**
Fixed problem where menu contained incorrect links to add and manage tags
- **[CRM-19352](https://issues.civicrm.org/jira/browse/CRM-19352) Fix pre-post
help text on custom data
([9360](https://github.com/civicrm/civicrm-core/pull/9360))**
Fixed regression where "pre-form" help for multi-record custom fields
displayed after the fields.
- **[CRM-19593](https://issues.civicrm.org/jira/browse/CRM-19593) Non-editable
custom fields show edit button
([9348](https://github.com/civicrm/civicrm-core/pull/9348))**
If all fields in a custom set are "view only" there shouldn't be an edit or
delete button visible
- **[CRM-19589](https://issues.civicrm.org/jira/browse/CRM-19589) Search for
contacts in Smart Groups based on group status shows incorrect results
([9347](https://github.com/civicrm/civicrm-core/pull/9347))**
Fixed problem where search for "removed" contacts in a smart group returns all
"added" contacts.
- **[CRM-19623](https://issues.civicrm.org/jira/browse/CRM-19623) is not of the
type Int when report is filtered with postal code
([9366](https://github.com/civicrm/civicrm-core/pull/9366))**
Fixed address field metadata in reports.
- **[CRM-19617](https://issues.civicrm.org/jira/browse/CRM-19617) Undefined
index notice in CRM_Contact_Form_Contact::checkDuplicateContacts()
([9361](https://github.com/civicrm/civicrm-core/pull/9361))**
Avoids PHP notices on duplicate check when the user lacks edit permission on
one of the contacts
- **[CRM-19048](https://issues.civicrm.org/jira/browse/CRM-19048) FullText -
Search by email, blank
([8633](https://github.com/civicrm/civicrm-core/pull/8633))**
Fixes an error when using the CiviCRM full text search with an email address
or blank value
- **[CRM-19431](https://issues.civicrm.org/jira/browse/CRM-19431) The empty
array that it's not really empty
([9376](https://github.com/civicrm/civicrm-core/pull/9376))**
Removes use of `CRM_Core_DAO::$_nullArray` in certain places as it might not
be empty
- **[CRM-17335](https://issues.civicrm.org/jira/browse/CRM-17335) Stop passing
CRM_Core_DAO::$_nullArray pointlessly
([9379](https://github.com/civicrm/civicrm-core/pull/9379))**
Removes use of `CRM_Core_DAO::$_nullArray` and `CRM_Core_DAO::$_nullObject` in
certain places as they might not be empty
- **[CRM-19646](https://issues.civicrm.org/jira/browse/CRM-19646) Fatal error on
generating ACLs from refactoring
([9385](https://github.com/civicrm/civicrm-core/pull/9385))**
Fixed a regression in how the ACL cache is populated
- **[CRM-17879](https://issues.civicrm.org/jira/browse/CRM-17879) PDF formats in
Message Templates not loading
([9367](https://github.com/civicrm/civicrm-core/pull/9367))**
Carry PDF page formatting with message templates where it is specified
- **[CRM-19650](https://issues.civicrm.org/jira/browse/CRM-19650) API functions
no longer used ([9397](https://github.com/civicrm/civicrm-core/pull/9397))**
Removes deprecated utility code in the API
- **[CRM-17869](https://issues.civicrm.org/jira/browse/CRM-17869) Custom field
relative date filter searching removed in date picker tidy up
([9304](https://github.com/civicrm/civicrm-core/pull/9304))**
Reverts a refactoring of date filter code that removed the relative date
filter dropdown
- **[CRM-19503](https://issues.civicrm.org/jira/browse/CRM-19503) MySQL error on
Activity Summary Report if you sort or group by contact
([9264](https://github.com/civicrm/civicrm-core/pull/9264))**
Fixes character set and collation problems on the temporary table that is
created in preparing the report.
- **[CRM-19397](https://issues.civicrm.org/jira/browse/CRM-19397) Notice error:
unserialize(): Error at offset when searching on contacts
([9310](https://github.com/civicrm/civicrm-core/pull/9310))**
No longer perform an i18n re-write when saving data to cache
- **[CRM-19547](https://issues.civicrm.org/jira/browse/CRM-19547) Quickform
search speed issue when few characters
([9301](https://github.com/civicrm/civicrm-core/pull/9301))**
Optimize the quick search process to not prioritize exact matches in cases
when an exact match is unlikely or unhelpful
- **[CRM-19668](https://issues.civicrm.org/jira/browse/CRM-19668) Contact
relationship list doesn't display correct icon for subtypes
([9415](https://github.com/civicrm/civicrm-core/pull/9415))**
Contacts in the relationship tab should show the correct icon if they are a
contact subtype
- **Remove unnecessary ts() from upgrade tasks
([9418](https://github.com/civicrm/civicrm-core/pull/9418))**
### Accounting
- **[CRM-19485](https://issues.civicrm.org/jira/browse/CRM-19485) Selector issue
on Batch trxn assignment page
([9211](https://github.com/civicrm/civicrm-core/pull/9211))**
When the financial batch assignment list refreshes, if the select-all checkbox
is checked, all transactions should be checked.
- **[CRM-19587](https://issues.civicrm.org/jira/browse/CRM-19587) DB Error when
trying to delete Financial Account
([9342](https://github.com/civicrm/civicrm-core/pull/9342) and
[9346](https://github.com/civicrm/civicrm-core/pull/9346))**
Refuse to delete a financial account if it is present in the
`civicrm_financial_item` table
### CiviCampaign
- **[CRM-19536](https://issues.civicrm.org/jira/browse/CRM-19536) Type is not
defined for field campaign_id in CRM_Report_Form->whereClause()
([9288](https://github.com/civicrm/civicrm-core/pull/9288))**
Reports should treat `campaign_id` as an integer.
### CiviCase
- **Remove phony fk info from case api
([9262](https://github.com/civicrm/civicrm-core/pull/9262))**
No longer specify foreign key APIs for contact and activity IDs in the case
API spec
- **[CRM-19506](https://issues.civicrm.org/jira/browse/CRM-19506) API Regression -
conflicting uniquename in CaseContact DAO
([9318](https://github.com/civicrm/civicrm-core/pull/9318))**
Record the contact ID in `civicrm_case` table as `contact_id` rather than
`case_contact_id`
- **Select correct activity if more than one in upcoming or recent period
([9011](https://github.com/civicrm/civicrm-core/pull/9011))**
The upcoming case activity displayed with a case should be the one coming up
soonest within the next 14 days. Similarly, the recent case activity should
be the most recent one within the past 14 days.
- **[CRM-19551](https://issues.civicrm.org/jira/browse/CRM-19551) Display
multiple case activity attachments
([9330](https://github.com/civicrm/civicrm-core/pull/9330))**
Display links to each attached file on a case listing
- **Remove accidental debug statement
([9292](https://github.com/civicrm/civicrm-core/pull/9292))**
### CiviContribute
- **Pass-thru empty values from api contribution_sendconfirmation
([9344](https://github.com/civicrm/civicrm-core/pull/9344))**
- **[CRM-19539](https://issues.civicrm.org/jira/browse/CRM-19539) Bug prevents
error message to be shown on pledge contribution import
([9302](https://github.com/civicrm/civicrm-core/pull/9302))**
Importing pledges with problems should generate meaningful error messages
- **[CRM-3795](https://issues.civicrm.org/jira/browse/CRM-3795) 'Bcc' fields on
the contribution pages behave like 'Cc'
([9312](https://github.com/civicrm/civicrm-core/pull/9312))**
This provides some commentary on the fix, which was included in 4.7.11
- **[CRM-19561](https://issues.civicrm.org/jira/browse/CRM-19561) When using Pay
Later with a Price Set, Contribution Details in Email Receipt are Blank
([9321](https://github.com/civicrm/civicrm-core/pull/9321))**
Fixed problem on online contributions where pay-later contributions with price
sets had no contribution details.
- **[CRM-19478](https://issues.civicrm.org/jira/browse/CRM-19478) API not
handling Paypal recurring IPN where p=null for Contribution Page
([9326](https://github.com/civicrm/civicrm-core/pull/9326))**
Fixed problem where CiviCRM would fail on certain IPN notifications.
- **[CRM-19590](https://issues.civicrm.org/jira/browse/CRM-19590) Failed CC
Contributions Listed with Status of Pending (Incomplete Transaction) Instead
of Failed ([9350](https://github.com/civicrm/civicrm-core/pull/9350))**
If an online contribution fails the MD5 check on Authorize.net, the
contribution status should be "Failed", not "Pending Incomplete Transaction"
- **[CRM-19635](https://issues.civicrm.org/jira/browse/CRM-19635) Notice errors
on Contribution Aggregate by Relationship report
([9373](https://github.com/civicrm/civicrm-core/pull/9373))**
Fixes PHP notices in certain reports using address filters
- **[CRM-16558](https://issues.civicrm.org/jira/browse/CRM-16558) Broken link
for updateSubscriptionUrl
([9382](https://github.com/civicrm/civicrm-core/pull/9382))**
Only display the URL for updating a recurring contribution if the payment
processor supports it
- **[CRM-19153](https://issues.civicrm.org/jira/browse/CRM-19153) Future pledge
start date causes improper future pledge payment dates
([8785](https://github.com/civicrm/civicrm-core/pull/8785))**
Fixes a problem where pledge dates set for a day of the month were set to
start at the Linux epoch rather than the next instance of that day of the
month
- **[CRM-19621](https://issues.civicrm.org/jira/browse/CRM-19621) Contribution
"confirm" page does not display state/country
([9399](https://github.com/civicrm/civicrm-core/pull/9399) and
[9466](https://github.com/civicrm/civicrm-core/pull/9466))**
Fixed a regression preventing state/province and country from displaying on a
contribution pages confirmation page.
- **[CRM-19298](https://issues.civicrm.org/jira/browse/CRM-19298) Membership fee
amount doubled in receipt when 'separate membership payment' is configured
([9474](https://github.com/civicrm/civicrm-core/pull/9474),
[9491](https://github.com/civicrm/civicrm-core/pull/9491), and
[9499](https://github.com/civicrm/civicrm-core/pull/9499)) [completes previous
work]**
Improvements to the membership receipts showing separate payments.
- **[CRM-17807](https://issues.civicrm.org/jira/browse/CRM-17807) Unit test to
check if invoice is created for paypal
([9333](https://github.com/civicrm/civicrm-core/pull/9333))**
Added test coverage for an past issue with PayPal Standard
- **Whitespace changes
([9336](https://github.com/civicrm/civicrm-core/pull/9336))**
- **Change function signature back
([9345](https://github.com/civicrm/civicrm-core/pull/9345))**
Reorders the parameters for `CRM_Core_Payment_Form::validateCreditCard()` to
put the newly-added `$processorID` last.
- **[CRM-19654](https://issues.civicrm.org/jira/browse/CRM-19654) Missing cancel
date and row style for canceled contributions
([9400](https://github.com/civicrm/civicrm-core/pull/9400))**
Provides `cancel_date` to contribution listings allowing them to be styled as
canceled
- **[CRM-19636](https://issues.civicrm.org/jira/browse/CRM-19636) DB error on
Top Donor Report ([9375](https://github.com/civicrm/civicrm-core/pull/9375))**
Uses standard contact fields rather than specifying them in the Top Donors
report
- **[CRM-19676](https://issues.civicrm.org/jira/browse/CRM-19676) PayPal
Standard IPN fails with "Invalid input parameters"
([9431](https://github.com/civicrm/civicrm-core/pull/9431))**
Fix a regression that ignores PayPal IPN parameters in some cases
- **[CRM-19692](https://issues.civicrm.org/jira/browse/CRM-19692) Cannot select
Priceset in Backend: Contributions: Submit Credit Card Contribution
([9469](https://github.com/civicrm/civicrm-core/pull/9469))**
Fix a regression that prevents a price set from appearing when you select it
on the backend credit card contribution form.
### CiviEvent
- **[CRM-19535](https://issues.civicrm.org/jira/browse/CRM-19535) Workflow that
inadvertently cancels all registrants all enabled events
([9291](https://github.com/civicrm/civicrm-core/pull/9291))**
Fixed problem where bulk actions on participants of a disabled event instead
take effect on participants of all enabled events.
- **[CRM-19550](https://issues.civicrm.org/jira/browse/CRM-19550) Standalone
participant/add form does not properly check for duplicates
([9303](https://github.com/civicrm/civicrm-core/pull/9303))**
When registering a contact for an event from the backend, the form should
prevent the registration if that contact has already been registered.
- **[CRM-18594](https://issues.civicrm.org/jira/browse/CRM-18594) Creating event
templates throws an 'Invalid Entity Filter' exception
([8424](https://github.com/civicrm/civicrm-core/pull/8424))**
Test that events can have text as the event type.
- **[CRM-19569](https://issues.civicrm.org/jira/browse/CRM-19569) Event Info
page should provide relative link to event registration page
([9324](https://github.com/civicrm/civicrm-core/pull/9324))**
Links from an event info page to the registration form should be relative
rather than absolute.
- **[CRM-19560](https://issues.civicrm.org/jira/browse/CRM-19560) When Exporting
Participant fields, the list is not specific
([9363](https://github.com/civicrm/civicrm-core/pull/9363))**
Exporting participant status and role should yield separately labeled columns
for id and label.
- **[CRM-19567](https://issues.civicrm.org/jira/browse/CRM-19567) FALSE "Payment
amount is less than the amount owed" warning
([9322](https://github.com/civicrm/civicrm-core/pull/9322))**
Fixed problem where fulfilling a partially-paid event registration warned
users that the payment was short
- **[CRM-19302](https://issues.civicrm.org/jira/browse/CRM-19302) Event copy -
file type custom data not being copied properly
([9407](https://github.com/civicrm/civicrm-core/pull/9407))**
When copying an event, file custom fields should be copied rather than having
both events refer to the same file.
- **[CRM-19661](https://issues.civicrm.org/jira/browse/CRM-19661) Notice error
on Event Income Report (Detail)
([9406](https://github.com/civicrm/civicrm-core/pull/9406))**
Default group by event ID on event income report to prevent a PHP notice
### CiviGrant
- **[CRM-19543](https://issues.civicrm.org/jira/browse/CRM-19543) contact_id
should be marked as required on grant api
([9296](https://github.com/civicrm/civicrm-core/pull/9296))**
The Grant API spec should indicate that `contact_id`, `status_id`, and
`amount_total` are required.
### CiviMail
- **[CRM-9484](https://issues.civicrm.org/jira/browse/CRM-9484) Running
EmailProcessor.php causes Fatal Error and creates and empty contact record
([8889](https://github.com/civicrm/civicrm-core/pull/8889))**
When processing inbound emails, CiviCRM should log unrecognized message parts
rather than letting the process fail.
- **[CRM-19645](https://issues.civicrm.org/jira/browse/CRM-19645) Missing
translation of label on Opt Out button
([9384](https://github.com/civicrm/civicrm-core/pull/9384))**
Adds `ts()` wrapper to make the "opt out" button translatable on the CiviMail
opt out confirmation form
- **[CRM-19659](https://issues.civicrm.org/jira/browse/CRM-19659) Undefined
index notice for NULL language index when browsing mailings
([9404](https://github.com/civicrm/civicrm-core/pull/9404))**
- **[CRM-19649](https://issues.civicrm.org/jira/browse/CRM-19649) ckeditor
includes html/head/body tags
([9419](https://github.com/civicrm/civicrm-core/pull/9419),
[9427](https://github.com/civicrm/civicrm-core/pull/9427)], and
[9496](https://github.com/civicrm/civicrm-core/pull/9496))**
Allow for multiple presets for WYSIWYG editor settings and improve ckEditor
defaults
- **[CRM-19677](https://issues.civicrm.org/jira/browse/CRM-19677) Mailings fail
in Multilingual post 4.7.13
([9430](https://github.com/civicrm/civicrm-core/pull/9430))**
Fix a regression by getting the correct table name for mailings in
multilingual sites
### CiviMember
- **[CRM-18503](https://issues.civicrm.org/jira/browse/CRM-18503) Membership
join_date is incorrectly set by CiviContribute sign-up page
([9358](https://github.com/civicrm/civicrm-core/pull/9358))**
The join date for new online memberships should be the current date even when
the start date is set to match a fixed membership term
- **[CRM-19462](https://issues.civicrm.org/jira/browse/CRM-19462) Membership
autorenew error when included via price set
([9315](https://github.com/civicrm/civicrm-core/pull/9315))**
Fixes problem where autorenew is neither available nor set if a price set
includes a membership type that allows autorenew
- **Fix membership join_date test
([9383](https://github.com/civicrm/civicrm-core/pull/9383))**
- **[CRM-15861](https://issues.civicrm.org/jira/browse/CRM-15861) Offline
membership renewal doesn't display priceset choices
([9386](https://github.com/civicrm/civicrm-core/pull/9386))**
Cleanup of backend membership form code
- **[CRM-19580](https://issues.civicrm.org/jira/browse/CRM-19580) Line items are
missing from manual receipts when using a price set with multiple membership
organization price fields
([9327](https://github.com/civicrm/civicrm-core/pull/9327))**
Displays all line items on a contribution receipt, even when it includes
memberships from multiple membership organizations
- **[CRM-19594](https://issues.civicrm.org/jira/browse/CRM-19594) Wrong
Membership Updated
([9390](https://github.com/civicrm/civicrm-core/pull/9390),
[9444](https://github.com/civicrm/civicrm-core/pull/9444),
[9449](https://github.com/civicrm/civicrm-core/pull/9449), and
[9464](https://github.com/civicrm/civicrm-core/pull/9464))**
Prevent membership renewals from applying to memberships that have the same ID
number as the renewal contribution
### Drupal integration
- **[CRM-19430](https://issues.civicrm.org/jira/browse/CRM-19430) Relationship
type field in view doesn't update on label change ([civicrm-drupal
403](https://github.com/civicrm/civicrm-drupal/pull/403))**
In Views, display the current relationship type label
- **[CRM-14280](https://issues.civicrm.org/jira/browse/CRM-14280) Missing
permission "edit relationships" in Drupal ([civicrm-drupal
404](https://github.com/civicrm/civicrm-drupal/pull/404))**
Allow users with `edit all contacts` the ability to see relationship edit
links
- **Remove error-suppression arroba ([civicrm-drupal
396](https://github.com/civicrm/civicrm-drupal/pull/396))**
Fix a problem preventing notice of a failure to load the settings file
- **[CRM-19611](https://issues.civicrm.org/jira/browse/CRM-19611) Remove Event
Details custom group ([civicrm-drupal
410](https://github.com/civicrm/civicrm-drupal/pull/410))**
No longer have CiviEngage create a custom field for Event Organizer
- **[CRM-19604](https://issues.civicrm.org/jira/browse/CRM-19604) Drush:
`civicrm-ext-list` only shows up to 25 extensions ([civicrm-drupal
411](https://github.com/civicrm/civicrm-drupal/pull/411))**
Bypass the default API limit of 25 when listing CiviCRM extension using Drush
- **Remove Drupal 6 multicurrency module code
([9325](https://github.com/civicrm/civicrm-core/pull/9325))**
### Joomla integration
- **[CRM-19629](https://issues.civicrm.org/jira/browse/CRM-19629) Labels display
as pills on Joomla backend CiviCRM pages
([9365](https://github.com/civicrm/civicrm-core/pull/9365))**
Overrides Bootstrap styling of elements with the class `label`
## <a name="credits"></a>Credits
This release was developed by the following code authors:
AGH Strategies - Alice Frumin and Andrew Hunt; Agileware - Agileware Team;
Australian Greens - Seamus Lee; Blackfly Solutions - Alan Dixon; Circle
Interactive - Dave Jenkins; CiviCRM - Coleman Watts, Jitendra Purohit, Monish
Deb, Tim Otten, and Yashodha Chaku; CiviDesk - Nicolas Ganivet; CiviFirst - John
Kirk; Community IT Academy - William Mortada; CompuCorp - Camilo Rodriguez; Coop
SymbioTIC - Mathieu Lutfy and Samuel Vanhove; E-Dynamics - Franky Van
Liedekerke; Effy Elden; Francesc Bassas i Bullich; Fuzion NZ - Chris Burgess and
Eileen McNaughton; Ginkgo Street Labs - Frank Gómez and Tobias Lounsbury;
jernic; JMA Consulting - Edzel Lopez and Pradeep Nayak; John Kingsnorth;
Klangsoft - David Reedy Jr; Lighthouse Design and Consulting - Brian
Shaughnessy; Marc Brazeau; Milton Zurita; Progressive Technology Project - Jamie
McClelland; Semper IT - Karin Gerritsen; Sharique Ahmed Farooqui; Spry Digital -
Ellen Hendricks; Systopia - Björn Endres; Third Sector Design - Michael
McAndrew; Thomas Schüttler; Vedant Rathore; Véronique Gratioulet; We Move
Europe/Caltha - Tomasz Pietrzkowski
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
Andrew Cormick-Dockery; Artem Goncharenko; British Humanist Association -
William Gordon; CiviCRM - Dave Greenberg; CompuCorp - Jamie Novick; Ginkgo
Street Labs - Michael Z Daryabeygi; IXiam - Rubén Pineda; JMA Consulting - Joe
Murray; Jon Goldberg; Korlon - Stuart Gaston; Mattias Michaux; Northbridge
Digital - Oliver Gibson; Phil Morice Brubaker; Richard Seabrook; Richard van
Oosterhout; Rob Brandt; Saurabh Batra

View file

@ -0,0 +1,338 @@
# CiviCRM 4.7.15
Released January 4, 2017
- **[Features](#features)**
- **[Bugs resolved](#bugs)**
- **[Credits](#credits)**
## <a name="features"></a>Features
### Core CiviCRM
- **[CRM-17410](https://issues.civicrm.org/jira/browse/CRM-17410) Using xml on
upgrade (not installation) of extension to create/append new optionvalues
([9480](https://github.com/civicrm/civicrm-core/pull/9480))**
Extensions that specify option values in XML for installation can now add
options during an upgrade using XML.
- **[CRM-19688](https://issues.civicrm.org/jira/browse/CRM-19688) State/province
API ([9454](https://github.com/civicrm/civicrm-core/pull/9454))**
An API for creating, modifying, and deleting states/provinces is now
available.
- **[CRM-19755](https://issues.civicrm.org/jira/browse/CRM-19755) reverse order
of html and text on CRM/Mailing/Page/Component.php
([9531](https://github.com/civicrm/civicrm-core/pull/9531))**
The mail template interface is now more consistent in placing the HTML version
before the plain-text version.
- **[CRM-19686](https://issues.civicrm.org/jira/browse/CRM-19686) Dedupe
Exceptions Should Link to Contacts
([9455](https://github.com/civicrm/civicrm-core/pull/9455))**
The list of dedupe exceptions now links to the contacts.
### CiviContribute
- **[CRM-19325](https://issues.civicrm.org/jira/browse/CRM-19325) Search
contributions that are not in any batch
([9492](https://github.com/civicrm/civicrm-core/pull/9492))**
Contribution search now allows filtering by contributions that are not in any
batch of financial transactions.
- **[CRM-18460](https://issues.civicrm.org/jira/browse/CRM-18460) Add relative
date filters for Aggregate Contribution custom search
([9493](https://github.com/civicrm/civicrm-core/pull/9493))**
The Aggregate Contribution custom search now uses the standard relative date
filters.
### CiviEvent
- **[CRM-19626](https://issues.civicrm.org/jira/browse/CRM-19626) Event
Registration page allows registration even if no number (or the number 0) has
been entered in any ticket quantity boxes
([9517](https://github.com/civicrm/civicrm-core/pull/9517))**
Price sets now have a "Minimum Amount" field to accommodate situations where
any one of several fields may be filled but a certain price threshold must be
reached.
## <a name="bugs"></a>Bugs resolved
### Core CiviCRM
- **[CRM-19591](https://issues.civicrm.org/jira/browse/CRM-19591) Creating a
pledge with only one installment will cause pledge payment to have a null
status (and cannot record a payment)
([9557](https://github.com/civicrm/civicrm-core/pull/9557))**
- **[CRM-19772](https://issues.civicrm.org/jira/browse/CRM-19772) Add
$entity,$action to "possibly mandatory" exception message
([9543](https://github.com/civicrm/civicrm-core/pull/9543))**
The API exception message is clearer in some cases with a database constraint
violation.
- **[CRM-19333](https://issues.civicrm.org/jira/browse/CRM-19333) Advanced
Search issue when searching using Group Type(s)
([9534](https://github.com/civicrm/civicrm-core/pull/9534))**
Searching for contacts in groups of a specific group type no longer results in
a database syntax error.
- **[CRM-19764](https://issues.civicrm.org/jira/browse/CRM-19764) Context
ignored when fetching custom field options
([9540](https://github.com/civicrm/civicrm-core/pull/9540))**
The getoptions API method now accurately returns or suppresses disabled
options for custom fields when the `context` parameter is set.
- **[CRM-19662](https://issues.civicrm.org/jira/browse/CRM-19662) Send test
mailing failing because of "only_full_group_by" setting
([9428](https://github.com/civicrm/civicrm-core/pull/9428))**
Various queries having `GROUP BY` set, but with non-aggregated columns besides
those that are grouped, have been resolved to be compatible with MySQL
installations where the `sql_mode` contains `only_full_group_by`. Some have
removed columns from the `SELECT`, while others have added to the `GROUP BY`
clause.
- **[CRM-19698](https://issues.civicrm.org/jira/browse/CRM-19698) Wrong search
results when combining smart and non-smart groups in a single search
([9506](https://github.com/civicrm/civicrm-core/pull/9506))**
Searching for a smart group alongside other groups now accurately displays
contacts who are in any of the groups, rather than just the smart group.
- **[CRM-19743](https://issues.civicrm.org/jira/browse/CRM-19743) API Utils
_civicrm_api3_get_options_from_params doesn't handle sort as an array properly
([9525](https://github.com/civicrm/civicrm-core/pull/9525))**
- **[CRM-19226](https://issues.civicrm.org/jira/browse/CRM-19226) $loginUrl
token not populating in Drupal 7
([9479](https://github.com/civicrm/civicrm-core/pull/9479))**
This fixes a broken or missing login URL link token on Drupal sites.
- **[CRM-19490](https://issues.civicrm.org/jira/browse/CRM-19490) Profile date
fields don't respect localization on the Contribution Page confirmation screen
([9529](https://github.com/civicrm/civicrm-core/pull/9529) and
[9530](https://github.com/civicrm/civicrm-core/pull/9530)) [completes previous
work]**
Short date form fields now have the proper labeling and display for
internationalization.
- **Correct code docs for CRM_Core_Menu::get()
([9514](https://github.com/civicrm/civicrm-core/pull/9514))**
- **[CRM-18248](https://issues.civicrm.org/jira/browse/CRM-18248) Performance -
select2 based contact autocomplete spams the DB server with potentially long
running queries ([9502](https://github.com/civicrm/civicrm-core/pull/9502))**
Entity reference autocomplete fields now wait 300 milliseconds (up from 100)
before sending queries as users type.
- **JS Optimizations
([9505](https://github.com/civicrm/civicrm-core/pull/9505))**
Improves the loading of WYSIWYG Javascript and only loads table headers for
users with "Access CiviCRM" permission.
- **[CRM-19656](https://issues.civicrm.org/jira/browse/CRM-19656) Link for users
to update their subscription billing info generates error
([9401](https://github.com/civicrm/civicrm-core/pull/9401))**
- **[CRM-19721](https://issues.civicrm.org/jira/browse/CRM-19721)
CiviCRM-cxn-rpc needs to be updated to work with PHP 7
([9500](https://github.com/civicrm/civicrm-core/pull/9500))**
- **[CRM-19720](https://issues.civicrm.org/jira/browse/CRM-19720) Typographic
fixes ([9501](https://github.com/civicrm/civicrm-core/pull/9501))**
- **[CRM-19711](https://issues.civicrm.org/jira/browse/CRM-19711) Bookkeeping
report displays pay later items twice
([9490](https://github.com/civicrm/civicrm-core/pull/9490))**
The bookkeeping report no longer shows duplicate row for pay-later items: once
for the pending payment, and once for the completion.
- **CRM_Utils_HttpClientTest - Use special purpose hostnames
([9485](https://github.com/civicrm/civicrm-core/pull/9485))**
Improves testing of HTTP and HTTPS connections by using hosts that have been
prepared specifically for this purpose.
- **[CRM-19699](https://issues.civicrm.org/jira/browse/CRM-19699) PHP7: cannot
install using Drush
([9472](https://github.com/civicrm/civicrm-core/pull/9472))**
`DB_DSN_MODE` is set on installation for PHP 7 compatibility.
- **[CRM-19679](https://issues.civicrm.org/jira/browse/CRM-19679) multi custom
data: file field errors on new record save
([9436](https://github.com/civicrm/civicrm-core/pull/9436))**
Saving data in a file custom field in a multi-record custom data group no
longer results in a database error.
- **[CRM-19681](https://issues.civicrm.org/jira/browse/CRM-19681) date fields
not respected when passed through url for report
([9437](https://github.com/civicrm/civicrm-core/pull/9437))**
Reports now accurately accept fixed date filter parameters in the URL.
- **js cleanup ([175](https://github.com/civicrm/civicrm-packages/pull/175))**
This removes some unnecessary Javascript files and shortens or minifies
others.
- **[CRM-19048](https://issues.civicrm.org/jira/browse/CRM-19048) FullText -
Search by email, blank
([9537](https://github.com/civicrm/civicrm-core/pull/9537) and
[9374](https://github.com/civicrm/civicrm-core/pull/9374)) [completes previous
work]**
Searches with unnecessary wildcard operators no longer result in empty
results.
- **[CRM-19534](https://issues.civicrm.org/jira/browse/CRM-19534) Saving report
with dashlet enabled for non admin users can cause a backtrace
([9456](https://github.com/civicrm/civicrm-core/pull/9456))**
When saving a report with a dashlet, the system now prevents the dashlet from
being added a second time for contacts who already have it enabled.
- **[CRM-19683](https://issues.civicrm.org/jira/browse/CRM-19683) Changing word
replacement strings does not work if you have more than one set in
civicrm_domain ([9446](https://github.com/civicrm/civicrm-core/pull/9446))**
Saving word replacements now applies to the currently-used language.
- **[CRM-19685](https://issues.civicrm.org/jira/browse/CRM-19685) Contacts
preferred_mail_format can't be NULL
([9463](https://github.com/civicrm/civicrm-core/pull/9463))**
Upgrading sites will have all contacts with a null value for
`preferred_mail_format` set to `Both`.
### CiviContribute
- **[CRM-19263](https://issues.civicrm.org/jira/browse/CRM-19263) Online Pay Now
functionality ([9532](https://github.com/civicrm/civicrm-core/pull/9532))
[completes previous work]**
Payments made retain the original financial type instead of picking up the
contribution page's financial type.
- **[CRM-19722](https://issues.civicrm.org/jira/browse/CRM-19722) Fatal Error:
Unknown column 'contribution_source' in 'order clause'
([9516](https://github.com/civicrm/civicrm-core/pull/9516))**
Tasks from the Actions drop-down on contribution searches no longer cause
database errors if the search results are sorted by certain columns.
- **[CRM-19549](https://issues.civicrm.org/jira/browse/CRM-19549) New pledge
data entry page shows hard coded $ for installments
([9475](https://github.com/civicrm/civicrm-core/pull/9475))**
The currency symbol for pledges now changes dynamically according to the
currency of the contribution amount.
- **[CRM-19660](https://issues.civicrm.org/jira/browse/CRM-19660) Financial
Transaction stores wrong transaction date if the contribution is cancelled
([9405](https://github.com/civicrm/civicrm-core/pull/9405))**
- **[CRM-19294](https://issues.civicrm.org/jira/browse/CRM-19294) Unable to
upload files via a contribution page
([9518](https://github.com/civicrm/civicrm-core/pull/9518))**
If a file custom field is required in a profile on a contribution page, a
regression caused the confirmation page to fail validation and prevent
completing the contribution. This has been resolved.
### CiviEvent
- **[CRM-19717](https://issues.civicrm.org/jira/browse/CRM-19717) Event
registration impossible with "Pending from pay later" status being "positive"
([9523](https://github.com/civicrm/civicrm-core/pull/9523))**
The Class attribute of reserved participant statuses can no longer be edited.
- **[CRM-19680](https://issues.civicrm.org/jira/browse/CRM-19680)
Participant.get API generates invalid query when searching for role_id IS
NULL. ([9453](https://github.com/civicrm/civicrm-core/pull/9453))**
### CiviMember
- **[CRM-19736](https://issues.civicrm.org/jira/browse/CRM-19736) Error thrown
when printing labels for members
([9538](https://github.com/civicrm/civicrm-core/pull/9538))**
- **[CRM-19298](https://issues.civicrm.org/jira/browse/CRM-19298) Membership fee
amount doubled in receipt when 'separate membership payment' is configured
([9438](https://github.com/civicrm/civicrm-core/pull/9438)) [completes
previous work]**
Test coverage was added for this issue.
- **[CRM-19600](https://issues.civicrm.org/jira/browse/CRM-19600) Membership
Renewal activity not created through online contribution page
([9357](https://github.com/civicrm/civicrm-core/pull/9357))**
- **[CRM-19678](https://issues.civicrm.org/jira/browse/CRM-19678) No Membership
Renewal Activity is created when a Pay Later is set to Completed
([9447](https://github.com/civicrm/civicrm-core/pull/9447))**
### CiviMail
- **[CRM-19649](https://issues.civicrm.org/jira/browse/CRM-19649) ckeditor
includes html/head/body tags
([9425](https://github.com/civicrm/civicrm-core/pull/9425)) [completes
previous work]**
CKEditor configuration defaults are improved.
### Drupal integration
- **[CRM-19303](https://issues.civicrm.org/jira/browse/CRM-19303) CKEditor
configuration can't be edited on a Drupal multisite installation
([9424](https://github.com/civicrm/civicrm-core/pull/9424)) [continues
previous work]**
The check for the proper Drupal multisite folder is improved.
## <a name="credits"></a>Credits
This release was developed by the following code authors:
Australian Greens - Seamus Lee; CiviCRM - Jitendra Purohit, Monish Deb, Coleman
Watts, Tim Otten, Yashodha Chaku; Coop SymbioTIC - Mathieu Lutfy; Denver DataMan -
Steve Kessler; Fuzion - Chris Burgess, Eileen McNaughton; JMA Consulting - Joe
Murray, Pradeep Nayak; Johan Vervloet; John Kingsnorth; Jon Goldberg;
Progressive Technology Project - Jamie McClelland; Sharique Ahmed Farooqui
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
Agileware - Agileware Team; Andrew Cormick-Dockery; Australian Greens - Seamus
Lee; Barbara Miller; Blackfly Solutions - Alan Dixon; Bob Silvern; British
Humanist Association - William Gordon, Andrew West; Circle Interactive - Dave
Jenkins; CiviCRM - Monish Deb, Jitendra Purohit, Yashodha Chaku, Tim Otten,
Coleman Watts, Josh Gowans, Dave Greenberg; CiviDesk - Nicolas Ganivet, Sunil
Pawar; Coop SymbioTIC - Mathieu Lutfy; Daniel Martinez; Dennis Gray; Denver
DataMan - Steve Kessler; E-Dynamics - Franky Van Liedekerke; Francesc Bassas i
Bullich; Freeform Solutions - Lola Slade; Fuzion - Eileen McNaughton, Peter
Davis, Chris Burgess; Gareth Small; GMCVO Databases - Jon-man Cheung; iXiam -
Vangelis Pantazis; JMA Consulting - Pradeep Nayak; joemurray; johanv; John
Kingsnorth; Joinery - Allen Shaw; Kacper Warda; Korlon - Stuart Gaston;
Lighthouse Design and Consulting - Brian Shaughnessy; Lutz Frommberger; Milton
Zurita; Nubay Services - David Tarrant; Progressive Technology Project - Jamie
McClelland; Richard van Oosterhout; Sharique Ahmed Farooqui; Thomas Nilefalk;
Vakees K; Veda Consulting - Kajakaran Balakrishnan

View file

@ -0,0 +1,550 @@
# CiviCRM 4.7.16
Released February 8, 2017
- **[Features](#features)**
- **[Bugs resolved](#bugs)**
- **[Miscellany](#misc)**
- **[Credits](#credits)**
## <a name="features"></a>Features
### Core CiviCRM
- **[CRM-19925](https://issues.civicrm.org/jira/browse/CRM-19925) Add metadata
to fields array with entity info & date format info
([9727](https://github.com/civicrm/civicrm-core/pull/9727))**
The data access objects (DAO) now include additional information for each
field, including the table name, entity, and business access object (BAO).
- **[CRM-19829](https://issues.civicrm.org/jira/browse/CRM-19829) Activity feed
([9714](https://github.com/civicrm/civicrm-core/pull/9714),
[9649](https://github.com/civicrm/civicrm-core/pull/9649), and
[9624](https://github.com/civicrm/civicrm-core/pull/9624))
(Preliminary work)**
The Attachment API now includes the appropriate icon class name from Font
Awesome, a `CRM.cache` object in Javascript is available to set and retrieve
information from `window.localStorage`, and a new Angular utility
`crmThrottle` prevents a function from running concurrently if called several
times in rapid succession.
- **[CRM-19893](https://issues.civicrm.org/jira/browse/CRM-19893) Activity Type
Categories ([9696](https://github.com/civicrm/civicrm-core/pull/9696))
(Preliminary work)**
The option value form now displays the option's grouping if available.
- **[CRM-19831](https://issues.civicrm.org/jira/browse/CRM-19831) Function
`CRM_Contact_BAO_Group::getGroupsHierarchy` performes bad with 3000 groups
([9673](https://github.com/civicrm/civicrm-core/pull/9673) and
[9633](https://github.com/civicrm/civicrm-core/pull/9633))**
Group listing performance is improved on sites with many groups.
- **[CRM-19256](https://issues.civicrm.org/jira/browse/CRM-19256) Add a hook to
dynamically escalate permissions
([8916](https://github.com/civicrm/civicrm-core/pull/8916))**
A new `hook_civicrm_permission_check` is invoked whenever a user's permissions
are evaluated. (See [hook
documentation](https://wiki.civicrm.org/confluence/display/CRMDOC/hook_civicrm_permission_check)
for details and examples.)
- **[CRM-19853](https://issues.civicrm.org/jira/browse/CRM-19853) Change
interval select controls in Scheduled Reminders with number controls
([9664](https://github.com/civicrm/civicrm-core/pull/9664))**
A few drop-down fields in the Scheduled Reminders interface that were simply
picking integers have been replaced with regular text fields.
- **[CRM-19769](https://issues.civicrm.org/jira/browse/CRM-19769) Colors for
tags and [CRM-19779](https://issues.civicrm.org/jira/browse/CRM-19779) Colors
for activity statuses
([9660](https://github.com/civicrm/civicrm-core/pull/9660),
[9600](https://github.com/civicrm/civicrm-core/pull/9600), and
[9554](https://github.com/civicrm/civicrm-core/pull/9554))**
You can choose colors for tags and activity statuses for better visibility.
- **[CRM-19770](https://issues.civicrm.org/jira/browse/CRM-19770) Favorite
(starred) activities
([9629](https://github.com/civicrm/civicrm-core/pull/9629))**
You can now mark favorite activities with stars.
- **[CRM-19723](https://issues.civicrm.org/jira/browse/CRM-19723) Icons for
activity types ([9707](https://github.com/civicrm/civicrm-core/pull/9707),
[9553](https://github.com/civicrm/civicrm-core/pull/9553),
[9528](https://github.com/civicrm/civicrm-core/pull/9528),
and [9706](https://github.com/civicrm/civicrm-core/pull/9706)**
A user can now choose icons for activity types.
- **[CRM-19816](https://issues.civicrm.org/jira/browse/CRM-19816) Improve
activity search filters
([9609](https://github.com/civicrm/civicrm-core/pull/9609)) (Preliminary work)**
The `Activity.get` API is improved for filtering by related contact, case, and
tag.
- **[CRM-19447](https://issues.civicrm.org/jira/browse/CRM-19447) Improve
Activity Subject/Details text search to be similiar to Notes Subject/Body
([9536](https://github.com/civicrm/civicrm-core/pull/9536))**
Activity search now has a single "Activity Text" field for finding text in the
activity subject, details, or both.
- **[CRM-19883](https://issues.civicrm.org/jira/browse/CRM-19883) Activity
Priority Field is Not Included in Advanced Search or Activity Reports
([9687](https://github.com/civicrm/civicrm-core/pull/9687))**
The priority field is now available in search and activity reports.
- **[CRM-19810](https://issues.civicrm.org/jira/browse/CRM-19810) Api3 - Add
joins on optionValue table
([9593](https://github.com/civicrm/civicrm-core/pull/9593))**
Foreign keys to option values can now be used for joins in the API despite the
fact that they aren't true foreign keys.
- **[CRM-19839](https://issues.civicrm.org/jira/browse/CRM-19839) Declare class
used on developer tab of CiviCRM reports
([9646](https://github.com/civicrm/civicrm-core/pull/9646))**
When viewing the Developer tab on a report, you can now see the report class
in use.
- **[CRM-19812](https://issues.civicrm.org/jira/browse/CRM-19812) Display
related contact names in activity.get api
([9599](https://github.com/civicrm/civicrm-core/pull/9599))**
Activity assignees and targets are now available as return options in the
`Activity.get` API.
### CiviCase
- **[CRM-19806](https://issues.civicrm.org/jira/browse/CRM-19806) CiviCase using
two formlinks when it only needs one
([9586](https://github.com/civicrm/civicrm-core/pull/9586))**
CiviCase now behaves like the rest of CiviCRM when creating action links in a
listing of cases.
- **[CRM-19778](https://issues.civicrm.org/jira/browse/CRM-19778) Allowed
statuses per case-type
([9705](https://github.com/civicrm/civicrm-core/pull/9705))**
Case types can be configured to restrict the available case statuses.
### CiviContribute
- **[CRM-8526](https://issues.civicrm.org/jira/browse/CRM-8526) Support
[contribution.custom_nn] tokens in templates
([9661](https://github.com/civicrm/civicrm-core/pull/9661))**
You can now insert tokens for contribution custom fields.
- **[CRM-16189](https://issues.civicrm.org/jira/browse/CRM-16189) Improve
support for Accrual Method bookkeeping
([8870](https://github.com/civicrm/civicrm-core/pull/8870)) (Completes previous work)**
A "Record Payment" button is now available on contributions.
### CiviEvent
- **Add select2 class to loc_event_id
([9603](https://github.com/civicrm/civicrm-core/pull/9603))**
The field for re-using the location of another event now uses a `select2`
widget.
### CiviMail
- **[CRM-19690](https://issues.civicrm.org/jira/browse/CRM-19690) Allow
alternative email templating systems
([9689](https://github.com/civicrm/civicrm-core/pull/9689),
[9566](https://github.com/civicrm/civicrm-core/pull/9566),
[9619](https://github.com/civicrm/civicrm-core/pull/9619),
[9565](https://github.com/civicrm/civicrm-core/pull/9565),
[9564](https://github.com/civicrm/civicrm-core/pull/9564),
[9563](https://github.com/civicrm/civicrm-core/pull/9563), and
[9562](https://github.com/civicrm/civicrm-core/pull/9562))**
Extensions can now specify mailing template types with template options.
These types can be associated with different template editors, such as
[Mosaico](https://github.com/veda-consulting/uk.co.vedaconsulting.mosaico).
The way tokens are presented and evaluated in CiviMail is also streamlined.
This also passes mail delivery to the FlexMailer extension when it is enabled.
### Drupal Integration Modules
- **[CRM-17917](https://issues.civicrm.org/jira/browse/CRM-17917) Add support
for Drupal 8 ([388](https://github.com/civicrm/civicrm-drupal/pull/388)) (Continues previous work)**
Several small improvements were made, making it easier to install CiviCRM on Drupal 8 using [Buildkit](https://buildkit.civicrm.org/).
## <a name="bugs"></a>Bugs resolved
### Core CiviCRM
- **[CRM-19874](https://issues.civicrm.org/jira/browse/CRM-19874) Allow
overriding sort in the getlist API without clobbering pager
([9675](https://github.com/civicrm/civicrm-core/pull/9675))**
The default pager parameters are no longer ignored when other `options` are set in a `getlist` API.
- **[CRM-19783](https://issues.civicrm.org/jira/browse/CRM-19783) Accessibility
Error - CiviCRM Subscription Page
([9606](https://github.com/civicrm/civicrm-core/pull/9606))**
- **Remove unused var, comments & clean up & refactor caching function
([9721](https://github.com/civicrm/civicrm-core/pull/9721))**
- **[CRM-19906](https://issues.civicrm.org/jira/browse/CRM-19906) Allow Drupal
user names with "@"
([9708](https://github.com/civicrm/civicrm-core/pull/9708))**
- **[CRM-19003](https://issues.civicrm.org/jira/browse/CRM-19003) Profile
listing doesn't produce expected results when range-searching custom date
field ([9699](https://github.com/civicrm/civicrm-core/pull/9699))**
- **[CRM-19801](https://issues.civicrm.org/jira/browse/CRM-19801) changing the
same relationship type of a relationship from A to B or vice versa does not
work ([9579](https://github.com/civicrm/civicrm-core/pull/9579))**
- **[CRM-19842](https://issues.civicrm.org/jira/browse/CRM-19842) Can't delete a
dedupe rule ([9698](https://github.com/civicrm/civicrm-core/pull/9698))**
- **typo fix in New Tag Form.
([9700](https://github.com/civicrm/civicrm-core/pull/9700))**
- **CRM_Extension_Browser - Allow different cache files for different feeds
([9693](https://github.com/civicrm/civicrm-core/pull/9693))**
- **[CRM-17663](https://issues.civicrm.org/jira/browse/CRM-17663) Dashlet code
improvements ([9672](https://github.com/civicrm/civicrm-core/pull/9672))
(Completes previous work)**
An upgrade step now fixes dashlets named `NULL`.
- **Fire hook_civicrm_emailProcessor('activity') if Activity,create successful
([9651](https://github.com/civicrm/civicrm-core/pull/9651))**
- **Civi\API\ExternalBatch - Verify that $_ENV is working
([9595](https://github.com/civicrm/civicrm-core/pull/9595))**
- **[CRM-19847](https://issues.civicrm.org/jira/browse/CRM-19847) batch merge
redirects users to snippet URL
([9653](https://github.com/civicrm/civicrm-core/pull/9653))**
- **(NFC) Civi/*, CRM_Utils_SQL_Select - Fix various warnings
([9657](https://github.com/civicrm/civicrm-core/pull/9657))**
- **[CRM-19824](https://issues.civicrm.org/jira/browse/CRM-19824) Event
listeners are missing if container cache is disabled
([9617](https://github.com/civicrm/civicrm-core/pull/9617))**
- **[CRM-19826](https://issues.civicrm.org/jira/browse/CRM-19826) Extensions in
"vendor" folder have errant slash
([9618](https://github.com/civicrm/civicrm-core/pull/9618))**
- **[CRM-19706](https://issues.civicrm.org/jira/browse/CRM-19706) Smart Group
criteria (Activity Status) are not being retained when using 'Edit Smart Group
criteria' ([9620](https://github.com/civicrm/civicrm-core/pull/9620))**
- **[CRM-19624](https://issues.civicrm.org/jira/browse/CRM-19624) Exclude /
Include by privacy radio buttons gets reset on Smartgroup re-editing
([9597](https://github.com/civicrm/civicrm-core/pull/9597))**
- **[CRM-19805](https://issues.civicrm.org/jira/browse/CRM-19805) Comparing
instead of Assigning
([9591](https://github.com/civicrm/civicrm-core/pull/9591))**
This fixes three typos in the codebase where `==` was used instead of `=`.
- **[CRM-19244](https://issues.civicrm.org/jira/browse/CRM-19244) Custom fields
with option group not importing
([8906](https://github.com/civicrm/civicrm-core/pull/8906))**
- **OptionValue Api cleanup - remove unnecessary lookup
([9569](https://github.com/civicrm/civicrm-core/pull/9569))**
- **[CRM-18472](https://issues.civicrm.org/jira/browse/CRM-18472) Notice fixes
([9558](https://github.com/civicrm/civicrm-core/pull/9558)) (Completes
previous work)**
Avoids a PHP notice on deleting soft credits.
- **Upgrade cleanup - use addColumn utility instead of sql
([9548](https://github.com/civicrm/civicrm-core/pull/9548))**
- **API Explorer: Minor usability improvements
([9539](https://github.com/civicrm/civicrm-core/pull/9539))**
- **[CRM-19832](https://issues.civicrm.org/jira/browse/CRM-19832)
hook_civicrm_searchTasks get invoked twice for some entities
([9637](https://github.com/civicrm/civicrm-core/pull/9637))**
- **[CRM-19875](https://issues.civicrm.org/jira/browse/CRM-19875) Search
builder: Fatal error when searching custom field of type "country"
([9695](https://github.com/civicrm/civicrm-core/pull/9695))**
- **[CRM-19811](https://issues.civicrm.org/jira/browse/CRM-19811) Slow queries
due to use of LOWER() in mysql searches, fix contribution search, current
employer. Comment elsewhere
([9596](https://github.com/civicrm/civicrm-core/pull/9596))**
- **[CRM-19884](https://issues.civicrm.org/jira/browse/CRM-19884) DB Error on
Activity Details Report
([9681](https://github.com/civicrm/civicrm-core/pull/9681))**
- **[CRM-19509](https://issues.civicrm.org/jira/browse/CRM-19509) Add character
set and collation to create table statements in reports
([9411](https://github.com/civicrm/civicrm-core/pull/9411))**
- **[CRM-19807](https://issues.civicrm.org/jira/browse/CRM-19807) MySQL error
when adding contacts on a report to a group
([9594](https://github.com/civicrm/civicrm-core/pull/9594))**
- **[CRM-18591](https://issues.civicrm.org/jira/browse/CRM-18591) group_type
parameter ignored when using API to create group
([9578](https://github.com/civicrm/civicrm-core/pull/9578)) (Completes
previous work)**
This improves the handling of checkboxes on the group edit form.
### Accounting
- **[CRM-19800](https://issues.civicrm.org/jira/browse/CRM-19800) Incorrect
Amount recorded in civicrm_financial_trxn table
([9577](https://github.com/civicrm/civicrm-core/pull/9577))**
This fixes problems when money amounts were entered with a thousands
delimiter.
- **[CRM-19585](https://issues.civicrm.org/jira/browse/CRM-19585) Sales tax
issue ([9598](https://github.com/civicrm/civicrm-core/pull/9598),
[9576](https://github.com/civicrm/civicrm-core/pull/9576),
[9590](https://github.com/civicrm/civicrm-core/pull/9590), and
[9574](https://github.com/civicrm/civicrm-core/pull/9574)) (Preliminary
work)**
A variety of problems have been partially fixed.
- **[CRM-19804](https://issues.civicrm.org/jira/browse/CRM-19804) Pre() and
Post() hook for Financial Account
([9584](https://github.com/civicrm/civicrm-core/pull/9584))**
### CiviCase
- **[CRM-19890](https://issues.civicrm.org/jira/browse/CRM-19890) Case Manager
listed in cases tab is not up to date
([9691](https://github.com/civicrm/civicrm-core/pull/9691))**
- **[CRM-19754](https://issues.civicrm.org/jira/browse/CRM-19754) CiviCase role
relationships reversed
([9560](https://github.com/civicrm/civicrm-core/pull/9560))**
- **[CRM-19897](https://issues.civicrm.org/jira/browse/CRM-19897) Cannot edit
multiple case activities via profile, because deprecated "access CiviCase"
permission is referenced
([9703](https://github.com/civicrm/civicrm-core/pull/9703))**
- **Docs fix: update for changed URL of Case Management > Setup page.
([9701](https://github.com/civicrm/civicrm-core/pull/9701))**
### CiviContribute
- **[CRM-19172](https://issues.civicrm.org/jira/browse/CRM-19172) on behalf form +
user account creation attempts to create user for org
([9669](https://github.com/civicrm/civicrm-core/pull/9669))**
- **[CRM-19863](https://issues.civicrm.org/jira/browse/CRM-19863) 'item_name'
unnecessarily truncated when passed to PayPal
([9677](https://github.com/civicrm/civicrm-core/pull/9677))**
- **[CRM-19725](https://issues.civicrm.org/jira/browse/CRM-19725) Honoree should
never be same as donor
([9503](https://github.com/civicrm/civicrm-core/pull/9503))**
- **[CRM-19761](https://issues.civicrm.org/jira/browse/CRM-19761) contribution
thank you letter generator: unable to export to docx
([9575](https://github.com/civicrm/civicrm-core/pull/9575) and
[9568](https://github.com/civicrm/civicrm-core/pull/9568))**
- **[CRM-19799](https://issues.civicrm.org/jira/browse/CRM-19799) LineItems
incorrect at both Contribution Level and Financial Accounts Level
([9580](https://github.com/civicrm/civicrm-core/pull/9580))**
- **[CRM-19802](https://issues.civicrm.org/jira/browse/CRM-19802) Contribution
page : missing translation
([9581](https://github.com/civicrm/civicrm-core/pull/9581))**
- **[CRM-19777](https://issues.civicrm.org/jira/browse/CRM-19777) Edit
contribution : wrong decimal separator on total_amount
([9556](https://github.com/civicrm/civicrm-core/pull/9556))**
- **[CRM-19795](https://issues.civicrm.org/jira/browse/CRM-19795) Contribution
page confirmation screen undefined index pay_later_receipt
([9632](https://github.com/civicrm/civicrm-core/pull/9632))**
- **[CRM-19794](https://issues.civicrm.org/jira/browse/CRM-19794) Wrong fields
displayed when setting a price set for a contribution page
([9697](https://github.com/civicrm/civicrm-core/pull/9697))**
### CiviEvent
- **[CRM-19860](https://issues.civicrm.org/jira/browse/CRM-19860) Event
participant batch update: respect "options per line" setting for radio buttons
([9667](https://github.com/civicrm/civicrm-core/pull/9667))**
- **[CRM-19907](https://issues.civicrm.org/jira/browse/CRM-19907) Syntax error
generated on CiviEvent Dashboard when show_events is null
([9709](https://github.com/civicrm/civicrm-core/pull/9709))**
- **[CRM-19789](https://issues.civicrm.org/jira/browse/CRM-19789) Cannot create
smart group from 'Find participants'
([9567](https://github.com/civicrm/civicrm-core/pull/9567))**
- **[CRM-19782](https://issues.civicrm.org/jira/browse/CRM-19782) "View" link on
printed Participant Listing Report renders display name unreadable
([9546](https://github.com/civicrm/civicrm-core/pull/9546))**
- **[CRM-19803](https://issues.civicrm.org/jira/browse/CRM-19803) View Payment
popup of a participant does not show refunds
([9634](https://github.com/civicrm/civicrm-core/pull/9634) and
[9592](https://github.com/civicrm/civicrm-core/pull/9592))**
- **[CRM-19288](https://issues.civicrm.org/jira/browse/CRM-19288) VAT not
included for additional participant fee when registering for events
([9545](https://github.com/civicrm/civicrm-core/pull/9545))**
### CiviMail
- **[CRM-19413](https://issues.civicrm.org/jira/browse/CRM-19413) CiviMail: Test
mail notice errors: undefined index
([9550](https://github.com/civicrm/civicrm-core/pull/9550))**
### CiviMember
- **[CRM-19895](https://issues.civicrm.org/jira/browse/CRM-19895) membership
renewal page style collapsed if email disabled
([9713](https://github.com/civicrm/civicrm-core/pull/9713))**
- **[CRM-19936](https://issues.civicrm.org/jira/browse/CRM-19936) Membership
line items are duplicated when a membership is created or renewed with
priceset containing multiple memberships
([9748](https://github.com/civicrm/civicrm-core/pull/9748))
(Preliminary work)**
- **[CRM-19817](https://issues.civicrm.org/jira/browse/CRM-19817) Notice error
fails membership export
([9610](https://github.com/civicrm/civicrm-core/pull/9610))**
Membership export with data from related contacts was causing PHP notices or
complete failure, depending upon the CMS.
- **Fix startdate for testMembershipJoinDateFixed
([9608](https://github.com/civicrm/civicrm-core/pull/9608))**
### Drupal Integration
- **[CRM-19740](https://issues.civicrm.org/jira/browse/CRM-19740) Regression in
phone number Drupal views integration
([415](https://github.com/civicrm/civicrm-drupal/pull/415))**
A problem has been fixed where the same phone number would show up for each of
a contact's location/phone types in Views.
- **CiviCRM Menu -- Add PathProcessor to allow parameters to routes to include
slashes ([420](https://github.com/civicrm/civicrm-drupal/pull/420))**
- **[CRM-19086](https://issues.civicrm.org/jira/browse/CRM-19086) CiviCRM Core
Installation fails on Drupal 8.1.x and
[CRM-18297](https://issues.civicrm.org/jira/browse/CRM-18297) Drupal 8 Crash
on Admin Config page
([419](https://github.com/civicrm/civicrm-drupal/pull/419))**
### Joomla Integration
- **[CRM-19877](https://issues.civicrm.org/jira/browse/CRM-19877) on Joomla
api.Setting.create fails with "option,task not valid settings"
([9678](https://github.com/civicrm/civicrm-core/pull/9678))**
## <a name="misc"></a>Miscellany
- **Comment fixes plus fix inconsistent unused return bool
([9722](https://github.com/civicrm/civicrm-core/pull/9722))**
- **[nfc] Updated test generated examples
([9720](https://github.com/civicrm/civicrm-core/pull/9720))**
- **[nfc] Comment fixes, remove one unused var, declare visibility
([9717](https://github.com/civicrm/civicrm-core/pull/9717))**
- **[NFC] add comments & extract function in contribution search
([9716](https://github.com/civicrm/civicrm-core/pull/9716))**
- **Comment Fixes ([9659](https://github.com/civicrm/civicrm-core/pull/9659))**
- **Comments ([9658](https://github.com/civicrm/civicrm-core/pull/9658))**
- **Add comment blocks
([9656](https://github.com/civicrm/civicrm-core/pull/9656))**
- **allow descendant classes to access the cache array
([9605](https://github.com/civicrm/civicrm-core/pull/9605))**
- **(NFC) CRM_*_Tokens - Reduce redundant docs
([9573](https://github.com/civicrm/civicrm-core/pull/9573))**
- **tools/scripts/phpunit-ls - Fix PhpStorm lookup of PHPUnit_Framework_TestCase
([9535](https://github.com/civicrm/civicrm-core/pull/9535))**
- **[CRM-19768](https://issues.civicrm.org/jira/browse/CRM-19768)
CRM_Utils_Token::replace*Tokens() usage is inconsistent
([9541](https://github.com/civicrm/civicrm-core/pull/9541)) (Preliminary
work)**
- **Convert drupal to Backdrop and change variable_get/set to state_get/set
([21](https://github.com/civicrm/civicrm-backdrop/pull/21))**
- **fix header ([9607](https://github.com/civicrm/civicrm-core/pull/9607))**
- **fix headers ([421](https://github.com/civicrm/civicrm-drupal/pull/421))**
- **fix headers ([109](https://github.com/civicrm/civicrm-wordpress/pull/109))**
- **fix headers ([42](https://github.com/civicrm/civicrm-joomla/pull/42))**
## <a name="credits"></a>Credits
This release was developed by the following code authors:
AGH Strategies - Alice Frumin, Andrew Hunt; ATD Fourth World - Véronique
Gratioulet; Agileware - Agileware Team; Aidan Saunders; AppChecker; Australian
reens - Seamus Lee; CiviCRM - Coleman Watts, Jitendra Purohit, Tim Otten, Monish
Deb, Yashodha Chaku; CiviCoop - Jaap Jansma; CiviDesk - Nicolas Ganivet;
Community Builders - Dejan Lukic; CompuCorp - Omar Abu Hussein; Coop SymbioTIC -
Mathieu Lutfy; Erich Schulz; Freeform Solutions - Herb van den Dool; Fuzion -
Chris Burgess, Eileen McNaughton; Ginkgo Street Labs - Frank Gómez; JMA
Consulting - Edsel Lopez, Jon Goldberg, Pradeep Nayak; John Kingsnorth; Joinery -
Allen Shaw; Klaas Eikelboom; Klangsoft - David Reedy Jr; Lighthouse Design and
Consulting - Brian Shaughnessy; Marc Brazeau; Progressive Technology Project -
Jamie McClelland; Skvare - Mark Hanna; Wikimedia Foundation - Eileen McNaughton
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
AGH Strategies - Tommy Bobo; Christian Wach; Circle Interactive - Dave Jenkins;
CiviCRM - Donald Lobo, Rohan Katkar; Community IT Academy - William Mortada;
CompuCorp - Madura Krishnamoorthy, Mike Kondrashin; Denver DataMan - Steve
Kessler; Digitalcourage - Detlev Sieber; Fedor Khodkov; Forest CRM Consulting -
Tamar Meir; Fuzion - Peter Davis; Ginkgo Street Labs - Frank Gómez; Glick
Software - David Glick; iXiam - Vangelis Pantazis; JMA Consulting - Joe Murray;
Kacper Warda; Ken West; Korlon - Stuart Gaston; Naomi Rosenberg; Noah Miller;
Oxfam Germany - Thomas Schüttler; Richard van Oosterhout; Robert Lang; Semper IT -
Karin Gerritsen; Tadpole Collective - Kevin Cristiano; University of Hawaii at
Manoa - Center on Disability Studies - William Rems; Vakees K; Valéry Gouleau

View file

@ -0,0 +1,556 @@
# CiviCRM 4.7.17
Released March 8, 2017
- **[Features](#features)**
- **[Bugs resolved](#bugs)**
- **[Miscellany](#misc)**
- **[Credits](#credits)**
## <a name="features"></a>Features
### Core CiviCRM
- **[CRM-19815](https://issues.civicrm.org/jira/browse/CRM-19815) Make
pseudoconstant code generic in advanced search
([9908](https://github.com/civicrm/civicrm-core/pull/9908),
[9885](https://github.com/civicrm/civicrm-core/pull/9885), and
[9799](https://github.com/civicrm/civicrm-core/pull/9799))**
This modifies handling of pseudoconstants (site-wide lists of options) from
specific hard-coded situations to metadata-based fields. This results in
removing slow joins and improves speed.
- **[CRM-19492](https://issues.civicrm.org/jira/browse/CRM-19492) When merging:
require row to be taken across before changing row settings
([9902](https://github.com/civicrm/civicrm-core/pull/9902))**
The interface for merging contacts is clarified so that merge options such as
location type on a field are not available unless the field is marked to be
merged from the contact which is to be deleted.
- **[CRM-20175](https://issues.civicrm.org/jira/browse/CRM-20175) Increase pager
support to 9999 pages
([9894](https://github.com/civicrm/civicrm-core/pull/9894))**
The page number box on search results now allows four-digit page numbers.
- **[CRM-19934](https://issues.civicrm.org/jira/browse/CRM-19934) Performance
improvement on civicrm_acl_contact_cache
([9807](https://github.com/civicrm/civicrm-core/pull/9807)) (Partial work)**
The query for building an ACL cache is simplified to avoid a taxing `OR`
clause.
- **[CRM-19816](https://issues.civicrm.org/jira/browse/CRM-19816) Improve
activity search filters
([9841](https://github.com/civicrm/civicrm-core/pull/9841))**
Using the API to search for activities involving a specific contact is
simplified and standardized across the assignee, source, and target, plus the
generic `contact_id` parameter.
- **[CRM-19883](https://issues.civicrm.org/jira/browse/CRM-19883) Activity
Priority Field is Not Included in Advanced Search or Activity Reports
([9816](https://github.com/civicrm/civicrm-core/pull/9816) and
[9800](https://github.com/civicrm/civicrm-core/pull/9800))**
The Priority field is now available in the Activity Detail and Activity
Summary reports.
- **[CRM-19938](https://issues.civicrm.org/jira/browse/CRM-19938) Make Civi to
CMS email sync optional
([9765](https://github.com/civicrm/civicrm-core/pull/9765))**
There is now an option to disable synchronization of a contact's email address
with their CMS user account.
- **[CRM-19930](https://issues.civicrm.org/jira/browse/CRM-19930) Patch
DB_DataObject::toArray() to sprintf only as needed
([9735](https://github.com/civicrm/civicrm-core/pull/9735) and
[177](https://github.com/civicrm/civicrm-packages/pull/177))**
Database query performance is improved by only running strings through
`sprintf()` when actually necessary.
- **Extension.download API - Allow downloading without installing
([9898](https://github.com/civicrm/civicrm-core/pull/9898))**
The Extension.download API still defaults to downloading and installing an
extension, but a new parameter `install` can be set to `FALSE` in order to
download without installing.
- **[CRM-20034](https://issues.civicrm.org/jira/browse/CRM-20034) Support "OR"
params in api get
([9844](https://github.com/civicrm/civicrm-core/pull/9844))**
Many entities can now be queried with sets of `OR` parameters, returning rows
that meet one of several criteria. The API Explorer displays the `AND`/`OR`
option when it is available.
Separately, the Activity.get API now allows for searching by the ID of
attached files and allows for joining on EntityTag.
- **[CRM-19943](https://issues.civicrm.org/jira/browse/CRM-19943) Improve tag
management UI ([9918](https://github.com/civicrm/civicrm-core/pull/9918) and
[9787](https://github.com/civicrm/civicrm-core/pull/9787))**
A new drag-and-drop interface allows for editing, nesting, and coloring tags.
- **[CRM-20061](https://issues.civicrm.org/jira/browse/CRM-20061) Allow 'tables'
as a parameter on the revert api
([9862](https://github.com/civicrm/civicrm-core/pull/9862))**
This adds the opportunity to specify which tables to revert for a logged
change.
### CiviContribute
- **[CRM-20158](https://issues.civicrm.org/jira/browse/CRM-20158) Store card
type and last 4 digits of credit card
([9876](https://github.com/civicrm/civicrm-core/pull/9876)) (Preliminary
work)**
The `civicrm_financial_trxn` table now contains fields to store credit card
type (e.g. Visa, MasterCard, etc.) and the last four digits of the card
number, if available. The fields are not yet used by any functions.
- **[CRM-20022](https://issues.civicrm.org/jira/browse/CRM-20022) Add Batch
Title to Columns, Grouping tabs on Contribution Summary report
([9838](https://github.com/civicrm/civicrm-core/pull/9838))**
The Contribution Summary report now has an option to display the title of the
corresponding financial transaction batch.
### CiviEvent
- **[CRM-19999](https://issues.civicrm.org/jira/browse/CRM-19999) Soften error
message when registration is closed for an event
([9823](https://github.com/civicrm/civicrm-core/pull/9823))**
CiviCRM now says "Sorry" when you attempt to register for an event where
registration is closed.
### CiviMail
- **[CRM-20196](https://issues.civicrm.org/jira/browse/CRM-20196) Add a useful
message when the user didn't setup bounce processing properly
([9906](https://github.com/civicrm/civicrm-core/pull/9906))**
If you fail to set a domain in the Mail Accounts and send a message through
CiviMail, a log message will note the situation.
### Backdrop Integration
- **Add a default layout for CiviCRM admin and ability to configure/set to
default.
([15](https://github.com/civicrm/civicrm-backdrop/issues/15) and
[20](https://github.com/civicrm/civicrm-backdrop/pull/20))**
CiviCRM for Backdrop now has a default layout for administration pages.
## <a name="bugs"></a>Bugs resolved
### Core CiviCRM
- **[CRM-19929](https://issues.civicrm.org/jira/browse/CRM-19929) Implement pre
hook for entityTag
([9733](https://github.com/civicrm/civicrm-core/pull/9733))**
Updates to `civicrm_entity_tag`--tagging or untagging a contact or
activity--now invoke `hook_civicrm_pre()`.
- **[CRM-20201](https://issues.civicrm.org/jira/browse/CRM-20201) Manage Tags
page does not work if a tag set does not have created by set
([9919](https://github.com/civicrm/civicrm-core/pull/9919) and
[9913](https://github.com/civicrm/civicrm-core/pull/9913))**
- **(Regression) CRM_Mailing_ActionTokens - Degrade gracefully
([9874](https://github.com/civicrm/civicrm-core/pull/9874))**
This fixes an issue where scheduled reminders and other non-CiviMail messages
would fail if they inadvertently use CiviMail action tokens.
- **[CRM-19453](https://issues.civicrm.org/jira/browse/CRM-19453) In Windows
System->Directories fails to display under Joomla
([9890](https://github.com/civicrm/civicrm-core/pull/9890))**
This allows Joomla users on Windows to view the Directories settings page
without errors.
- **[CRM-20144](https://issues.civicrm.org/jira/browse/CRM-20144) API
contact.get group='x' yields ""DB Error: no such field""
([9884](https://github.com/civicrm/civicrm-core/pull/9884) and
[9867](https://github.com/civicrm/civicrm-core/pull/9867))**
This reinstates the feature allowing for contacts to be searched by group
(including smart group) using the API.
- **Display error message for activity processing
([9882](https://github.com/civicrm/civicrm-core/pull/9882))**
The activity processor scheduled job now records the actual error message that
occurred rather than a generic failure message.
- **ApiExplorer - Fix js error
([9883](https://github.com/civicrm/civicrm-core/pull/9883))**
- **[CRM-19693](https://issues.civicrm.org/jira/browse/CRM-19693) Don't show
options for disabled components
([9459](https://github.com/civicrm/civicrm-core/pull/9459))**
- **[CRM-19657](https://issues.civicrm.org/jira/browse/CRM-19657) recurring
contribution receipt comes from logged in user
([9856](https://github.com/civicrm/civicrm-core/pull/9856) and
[9842](https://github.com/civicrm/civicrm-core/pull/9842))**
This fixes a bug where receipts triggered by an administrator's actions or a
scheduled job now come from system-wide information or the default email
rather than the contact associated with the user who is triggering them.
- **[CRM-19972](https://issues.civicrm.org/jira/browse/CRM-19972) Add in Post
upgrade message for addition of manage tags permission
([9808](https://github.com/civicrm/civicrm-core/pull/9808))**
The "manage tags" permission was added in 4.7.13, but site administrators were
not alerted about it when upgrading.
- **[CRM-19184](https://issues.civicrm.org/jira/browse/CRM-19184) Activities
target contact list does not truncate
([9846](https://github.com/civicrm/civicrm-core/pull/9846))**
When viewing activities, the list of contacts the activity is with should be
limited to the first several. This fixes a regression that listed all the
contacts.
- **[CRM-18811](https://issues.civicrm.org/jira/browse/CRM-18811) MySQL table
and column aliases can contain spaces
([8548](https://github.com/civicrm/civicrm-core/pull/8548))**
This fixes a problem displaying profiles that have location details for a
location type that contains a space.
- **[CRM-20015](https://issues.civicrm.org/jira/browse/CRM-20015) token values
with ampersand cause error when generating docx letter
([9834](https://github.com/civicrm/civicrm-core/pull/9834))**
- **[CRM-19950](https://issues.civicrm.org/jira/browse/CRM-19950) Wrong param
passed to checkPermission function
([9832](https://github.com/civicrm/civicrm-core/pull/9832) and
[9810](https://github.com/civicrm/civicrm-core/pull/9810))**
- **[CRM-18464](https://issues.civicrm.org/jira/browse/CRM-18464) Database Error
upgrading to Civicrm 4.7
([9679](https://github.com/civicrm/civicrm-core/pull/9679))**
Some legacy sites had a foreign key from `civicrm_action_schedule` to
`mapping_id` set as an index rather than a proper foreign key. Dropping that
key as part of the upgrade to 4.7.alpha1 resulted in a failed upgrade. The
key is now dropped more safely.
- **[CRM-19979](https://issues.civicrm.org/jira/browse/CRM-19979)
GroupContact.delete does not work for contacts with status of Pending
([9797](https://github.com/civicrm/civicrm-core/pull/9797))**
- **[CRM-19957](https://issues.civicrm.org/jira/browse/CRM-19957) DB Syntax
Error on all Search Form submission
([9767](https://github.com/civicrm/civicrm-core/pull/9767))**
- **[CRM-19955](https://issues.civicrm.org/jira/browse/CRM-19955) custom field
image display in contact record retrieve incorrectly
([9758](https://github.com/civicrm/civicrm-core/pull/9758))**
This fixes a problem where files uploaded to custom fields were retrieved
according to the ID of the entity they're attached to, not the ID of the files
themselves.
- **[CRM-19926](https://issues.civicrm.org/jira/browse/CRM-19926) Constituent
Summary Report Filtered by Groups ignores children groups
([9732](https://github.com/civicrm/civicrm-core/pull/9732))**
- **[CRM-18427](https://issues.civicrm.org/jira/browse/CRM-18427) Submitted
custom data values not reloaded on form when validation fails
([9752](https://github.com/civicrm/civicrm-core/pull/9752))**
- **[CRM-19927](https://issues.civicrm.org/jira/browse/CRM-19927) Error message
when "Add to Group" is pressed with no group selected
([9731](https://github.com/civicrm/civicrm-core/pull/9731))**
- **[CRM-19864](https://issues.civicrm.org/jira/browse/CRM-19864) Incorrect URL
in CiviCRM Resources dashlet on Joomla
([9668](https://github.com/civicrm/civicrm-core/pull/9668))**
The Configuration Checklist link in the Resources menu was a frontend link in
WordPress and Joomla.
- **[CRM-20180](https://issues.civicrm.org/jira/browse/CRM-20180) Several
documentation links are malformed
([9897](https://github.com/civicrm/civicrm-core/pull/9897))**
- **Handle date formats through metadata (see
[CRM-19490](https://issues.civicrm.org/jira/browse/CRM-19490),
[CRM-18387](https://issues.civicrm.org/jira/browse/CRM-18387),
[CRM-20012](https://issues.civicrm.org/jira/browse/CRM-20012),
[CRM-20011](https://issues.civicrm.org/jira/browse/CRM-20011),
[CRM-15948](https://issues.civicrm.org/jira/browse/CRM-15948), and
[CRM-19911](https://issues.civicrm.org/jira/browse/CRM-19911))
(([9888](https://github.com/civicrm/civicrm-core/pull/9888),
[9845](https://github.com/civicrm/civicrm-core/pull/9845),
[9843](https://github.com/civicrm/civicrm-core/pull/9843), and
[9830](https://github.com/civicrm/civicrm-core/pull/9830))) (Preliminary work)**
A variety of problems periodically emerge with date fields, mainly due to the
practically-unique ways of defining and handling each date field. The goal of
this work is to define all date fields through metadata. Changes so far
define the metadata for date fields, but the fields are still generated the
old way.
- **[CRM-19887](https://issues.civicrm.org/jira/browse/CRM-19887) Activity
Summary report gives DB error on sort by email
([9690](https://github.com/civicrm/civicrm-core/pull/9690))**
- **[CRM-19982](https://issues.civicrm.org/jira/browse/CRM-19982) Can't enter
dates in 4.7.16. Can only enter characters in word "birth"
([9831](https://github.com/civicrm/civicrm-core/pull/9831))**
- **[CRM-19947](https://issues.civicrm.org/jira/browse/CRM-19947) custom multi
profile: file upload display issue
([9754](https://github.com/civicrm/civicrm-core/pull/9754))**
On profiles including fields from multi-record custom data sets, files
uploaded in one record were appearing in other records on the same contact.
### CiviCase
- **[CRM-19956](https://issues.civicrm.org/jira/browse/CRM-19956) Moving/Copying
activities between Cases
([9766](https://github.com/civicrm/civicrm-core/pull/9766))**
This fixes an issue preventing the selection of a destination case when moving
or copying activities.
### CiviContribute
- **[CRM-19830](https://issues.civicrm.org/jira/browse/CRM-19830) Cleanup
contribution search by making non-exportable fields exportable
([9718](https://github.com/civicrm/civicrm-core/pull/9718))**
- **[CRM-19793](https://issues.civicrm.org/jira/browse/CRM-19793) Redirect
payment processors that fail result in ugly fatal - be prettier
([9762](https://github.com/civicrm/civicrm-core/pull/9762))**
- **[CRM-19949](https://issues.civicrm.org/jira/browse/CRM-19949) Notice appear
when setup profiles contain common field with contribution page
([9753](https://github.com/civicrm/civicrm-core/pull/9753))**
- **[CRM-19881](https://issues.civicrm.org/jira/browse/CRM-19881): Time
clobbered in receive_date and trxn_date for api contribution repeattransaction
and completetransaction
([9680](https://github.com/civicrm/civicrm-core/pull/9680))**
The API spec for the contribution `gettransaction` and `repeattransaction`
actions did not contain time, so the receive date and transaction dates were
set to midnight.
- **[CRM-20145](https://issues.civicrm.org/jira/browse/CRM-20145) line_item with
$0 amount may error when creating civicrm_entity_financial_trxn
([9866](https://github.com/civicrm/civicrm-core/pull/9866))**
- **[CRM-20048](https://issues.civicrm.org/jira/browse/CRM-20048) PayPal IPNs
not processed if "receiver_email" != "business"
([9858](https://github.com/civicrm/civicrm-core/pull/9858))**
This resolves problems if a site's PayPal account has a `receiver_email` that
is different from the main email address for their business account. CiviCRM
now looks for the `business` email.
- **[CRM-19908](https://issues.civicrm.org/jira/browse/CRM-19908) Fundamental
Fixes for Tax Math Calculations.
([9711](https://github.com/civicrm/civicrm-core/pull/9711))**
This change defers rounding of tax amounts until after being multiplied by an
item's quantity and avoids deriving a tax rate from the amount of tax on a
line item.
- **[CRM-19517](https://issues.civicrm.org/jira/browse/CRM-19517) Show price
field Options that use disabled Financial Types so they can be edited.
([9763](https://github.com/civicrm/civicrm-core/pull/9763))**
- **[CRM-19802](https://issues.civicrm.org/jira/browse/CRM-19802) Contribution
page : missing translation
([9587](https://github.com/civicrm/civicrm-core/pull/9587))**
This fixes the wrapping of translatable strings in Javascript within page
templates.
- **[CRM-19873](https://issues.civicrm.org/jira/browse/CRM-19873)
contribute.repeattransaction fails when contribution_recur_id is a test
recurring contribtuion
([9674](https://github.com/civicrm/civicrm-core/pull/9674))**
### CiviEvent
- **[CRM-20004](https://issues.civicrm.org/jira/browse/CRM-20004) Event payment
receipt sent twice
([9933](https://github.com/civicrm/civicrm-core/pull/9933))**
- **[CRM-19964](https://issues.civicrm.org/jira/browse/CRM-19964) Event
registration creates contribution without line item
([9774](https://github.com/civicrm/civicrm-core/pull/9774))**
This situation occurred if a price set was enabled, no price field was
required, and a user registered for the event without any of the price fields
having a value.
- **[CRM-19918](https://issues.civicrm.org/jira/browse/CRM-19918) Price field
"Active on" date ignored in Edit Event Registration > "Change Selections"
([9764](https://github.com/civicrm/civicrm-core/pull/9764))**
- **[CRM-20170](https://issues.civicrm.org/jira/browse/CRM-20170) Fix attendee
count on event summary report for free events
([9887](https://github.com/civicrm/civicrm-core/pull/9887))**
- **[CRM-20013](https://issues.civicrm.org/jira/browse/CRM-20013) Localization
for participant status on Event Income Report (Summary)
([9833](https://github.com/civicrm/civicrm-core/pull/9833))**
The participant status was showing the field name rather than the translated
label.
### CiviMail
- **[CRM-20016](https://issues.civicrm.org/jira/browse/CRM-20016) Fatal error
processing bounces when email_id IS NULL
([9837](https://github.com/civicrm/civicrm-core/pull/9837))**
- **[CRM-19924](https://issues.civicrm.org/jira/browse/CRM-19924) Unsubscribe
from a mailing sent to a parent group silently fails
([9730](https://github.com/civicrm/civicrm-core/pull/9730))**
### CiviMember
- **[CRM-19871](https://issues.civicrm.org/jira/browse/CRM-19871) Default
Membership Type not selected - Contribution Form
([9704](https://github.com/civicrm/civicrm-core/pull/9704))**
The membership type on contribution pages was defaulting according to weight
rather than the type marked as default.
- **[CRM-19936](https://issues.civicrm.org/jira/browse/CRM-19936) Membership
line items are duplicated when a membership is created or renewed with
priceset containing multiple memberships
([9744](https://github.com/civicrm/civicrm-core/pull/9744)) (Partially
fixed)**
Bug was as described. The cause has been repaired, but the issue is still
pending an action to repair the duplicate line items.
- **[CRM-20010](https://issues.civicrm.org/jira/browse/CRM-20010) Membership
period_type is required in frontend but not in API.
([9829](https://github.com/civicrm/civicrm-core/pull/9829))**
- **[CRM-19945](https://issues.civicrm.org/jira/browse/CRM-19945)
api.contribute.repeattransaction fails to renew membership under certain
conditions ([9792](https://github.com/civicrm/civicrm-core/pull/9792))**
### Drupal Integration Modules
- **[CRM-19910](https://issues.civicrm.org/jira/browse/CRM-19910) Drupal view
contact sub type IN query
([424](https://github.com/civicrm/civicrm-drupal/pull/424))**
Views was attempting to filter contact subtype as a single-value field rather
than a delimited multi-value field.
- **[CRM-20051](https://issues.civicrm.org/jira/browse/CRM-20051) Drupal 8 user
view page, Profile information not displaying
([428](https://github.com/civicrm/civicrm-drupal/pull/428))**
CiviCRM's implementation of `hook_user_view()` needed to reflect a change to
the hook function signature.
- **[CRM-19960](https://issues.civicrm.org/jira/browse/CRM-19960) Drupal 8
Standard Page title does not immediately disappear on contact record screen
([9770](https://github.com/civicrm/civicrm-core/pull/9770))**
- **[CRM-19545](https://issues.civicrm.org/jira/browse/CRM-19545) Custom field
groups which do not directly extend the base 'Contact' disappear from Drupal
view after applying patch CRM-18776
([417](https://github.com/civicrm/civicrm-drupal/pull/417))**
This reverts a change for
[CRM-18776](https://issues.civicrm.org/jira/browse/CRM-18776), which in turn
was attempting to fix a bug with custom fields that apply to only certain
types of an entity (e.g. activity types or financial types). That original
issue is still outstanding.
## <a name="misc"></a>Miscellany
- **[CRM-20154](https://issues.civicrm.org/jira/browse/CRM-20154) dedupe code
improvement, remove unused autoflip parameter
([9893](https://github.com/civicrm/civicrm-core/pull/9893) and
[9873](https://github.com/civicrm/civicrm-core/pull/9873))**
This cleans up code and removes a parameter called `autoFlip` that was never
fully implemented in the merging of duplicate contacts.
- **[CRM-20181](https://issues.civicrm.org/jira/browse/CRM-20181) Deprecate
CRM_Core_Error::fatal()
([9900](https://github.com/civicrm/civicrm-core/pull/9900))**
- **MailingGroup API - Tighten up deprecations
([9892](https://github.com/civicrm/civicrm-core/pull/9892))**
- **More test output on intermittant error
([9871](https://github.com/civicrm/civicrm-core/pull/9871))**
A test of reverting tables now sleeps for a second.
- **Remove mispelt param.
([9853](https://github.com/civicrm/civicrm-core/pull/9853))**
- **remove markdown files in /docs
([9771](https://github.com/civicrm/civicrm-core/pull/9771))**
- **civicrm_webtest.install - Restore access to edit message templates and tags
([9785](https://github.com/civicrm/civicrm-core/pull/9785))**
- **Update Test generated examples
([9798](https://github.com/civicrm/civicrm-core/pull/9798))**
- **[CRM-20007](https://issues.civicrm.org/jira/browse/CRM-20007)
RepeatTransaction API does not use the Payment Processor's payment Instrument
to determine Payment Instrument
([9826](https://github.com/civicrm/civicrm-core/pull/9826))**
## <a name="credits"></a>Credits
This release was developed by the following code authors:
AGH Strategies - Andrew Hunt; Australian Greens - Seamus Lee; Chanun
Chirattikanon; CiviCRM - Coleman Watts, Kurund Jalmi, Monish Deb, Tim Otten;
Francesc Bassas i Bullich; Freeform Solutions - Herb van den Dool; Fuzion -
Chris Burgess, Eileen McNaughton; Hartmann Computer Consulting - Peter Hartmann;
JMA Consulting - Edsel Lopez, Pradeep Nayak; John Kingsnorth; Lighthouse Design
and Consulting - Brian Shaughnessy; Matthew Wire; MongoDB - A. Jesse Jiryu
Davis; Sean Madsen; Semper IT - Karin Gerritsen; Skvare - Mark Hanna; Stephen
Palmstrom; Wikimedia Foundation - Eileen McNaughton
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
Agileware - Agileware Team; Andrew Cormick-Dockery; Andrew McNaughton; Andrew
Thompson; Blackfly Solutions - Alan Dixon; Borislav Zlatanov; Circle Interactive -
Dave Jenkins; City of Winnipeg, Manitoba - Matt Allard; CiviCoop - Jaap Jansma;
CiviCRM - Jitendra Purohit, Yashodha Chaku; CiviDesk - Nicolas Ganivet, Steve
Kessler, Sunil Pawar; CompuCorp - Alessandro Verdura, Guanhuan Chen; Coop
SymbioTIC - Mathieu Lutfy, Stéphane Lussier; Davi Alexandre; Erich Schulz;
Jesper Angelo; JMA Consulting - Joe Murray, Jon Goldberg; Joinery - Allen Shaw;
Klangsoft - David Reedy Jr; Korlon - Stuart Gaston; MC3 - Graham Mitchell;
Monadnock Developmental Services - Charlie Wilder; Oxfam Germany - Thomas
Schüttler; Palante Technology Cooperative - Joseph Lacey; Progressive Technology
Project - Jamie McClelland; Skylark Technology - Owen Pearson; Spry Digital -
Ellen Hendricks; Squiffle Consulting - Aidan Saunders; Systopia - Björn Endres;
Tadpole Collective - Kevin Cristiano; Third Sector Design - Michael McAndrew;
Upleaf - Osvaldo Gomez; Vakees K; Valéry Gouleau; Veda Consulting - Kajakaran
Balakrishnan;

View file

@ -0,0 +1,570 @@
# CiviCRM 4.7.18
Released April 5, 2017
- **[Features](#features)**
- **[Bugs resolved](#bugs)**
- **[Miscellany](#misc)**
- **[Credits](#credits)**
## <a name="features"></a>Features
### Core CiviCRM
- **[CRM-19385](https://issues.civicrm.org/jira/browse/CRM-19385) Look at
REMOVING id column from cache tables
([10073](https://github.com/civicrm/civicrm-core/pull/10073) and
[10019](https://github.com/civicrm/civicrm-core/pull/10019))**
Cache tables no longer use auto-incremented ID fields.
- **[CRM-20062](https://issues.civicrm.org/jira/browse/CRM-20062) New counties
of Kenya ([9937](https://github.com/civicrm/civicrm-core/pull/9937))**
Kenya is now divided into 47 counties, treated as "state/province" in CiviCRM.
- **[CRM-20187](https://issues.civicrm.org/jira/browse/CRM-20187) allow class
parameter for hook_civicrm_links()
([9901](https://github.com/civicrm/civicrm-core/pull/9901))**
Links provided to `hook_civicrm_links()` can now specify classes for the `<a>`
element.
- **[CRM-20039](https://issues.civicrm.org/jira/browse/CRM-20039) Add
supplemental address lines as criteria in Advanced Search
([9850](https://github.com/civicrm/civicrm-core/pull/9850))**
Searching by supplemental address 1 and 2 (though not 3) is available in the
Advanced Search.
- **[CRM-20219](https://issues.civicrm.org/jira/browse/CRM-20219) Switch
activity date time to use datepicker in profiles
([9935](https://github.com/civicrm/civicrm-core/pull/9935))**
The activity date/time field now uses the more standard datepicker rather than
the jCalendar widget when used in a profile.
- **Tweak icon when expanding popup to fullscreen
([9961](https://github.com/civicrm/civicrm-core/pull/9961))**
The expand icon becomes a compress icon after expanding a popup window.
- **[CRM-4287](https://issues.civicrm.org/jira/browse/CRM-4287) - Contact search
for email address (& other details) shows only primary detail matches as
results ([9772](https://github.com/civicrm/civicrm-core/pull/9772))**
Search preferences now contain a setting for whether to restrict searches to
primary address, phone, email, IM, and OpenID.
### CiviCase
- **[CRM-20302](https://issues.civicrm.org/jira/browse/CRM-20302) Case api
improvements ([10017](https://github.com/civicrm/civicrm-core/pull/10017))**
The Case API now allows for filtering by and returning cases with tags.
- **[CRM-20102](https://issues.civicrm.org/jira/browse/CRM-20102) Case table
view ([9940](https://github.com/civicrm/civicrm-core/pull/9940))**
The Activity API now allows for filtering by and returning activities with
Case ID. The Case API now properly handles SQL operators for the `contact_id`
field and returns the `case_id.definition` joined field with proper formatting.
### CiviContribute
- **[CRM-20286](https://issues.civicrm.org/jira/browse/CRM-20286) Add card type
field on search form
([9999](https://github.com/civicrm/civicrm-core/pull/9999))**
The Find Contributions and Advanced Search now allow searching by card type.
- **[CRM-20282](https://issues.civicrm.org/jira/browse/CRM-20282) Add credit
card type field for Bookkeeping report
([9995](https://github.com/civicrm/civicrm-core/pull/9995))**
The bookkeeping report now allows for displaying and filtering by card type.
- **[CRM-19674](https://issues.civicrm.org/jira/browse/CRM-19674) Add ability to
see at a glance if a contribution is part of a recurring series
([9421](https://github.com/civicrm/civicrm-core/pull/9421))**
The display of recurring contributions in contribution search results is
shorter.
- **[CRM-20272](https://issues.civicrm.org/jira/browse/CRM-20272) Add credit
card type field for Contribution Summary Report
([9986](https://github.com/civicrm/civicrm-core/pull/9986))**
The contribution summary report now allows for displaying and filtering by
card type.
- **[CRM-19715](https://issues.civicrm.org/jira/browse/CRM-19715) Remove Close
Accounting Period code
([9983](https://github.com/civicrm/civicrm-core/pull/9983) and
[9955](https://github.com/civicrm/civicrm-core/pull/9955))**
The Close Accounting Period interface is removed.
- **[CRM-20058](https://issues.civicrm.org/jira/browse/CRM-20058) Add Credit
Card Payment link for partially paid contribution
([9860](https://github.com/civicrm/civicrm-core/pull/9860) and
[9941](https://github.com/civicrm/civicrm-core/pull/9941))**
There is now a separate link for the credit card payment form for partially
paid contributions.
- **[CRM-20199](https://issues.civicrm.org/jira/browse/CRM-20199) Contribution
searches all include an unindexed join
([9631](https://github.com/civicrm/civicrm-core/pull/9631))**
The option value table is joined on contribution searches when option values
could be provided through pseudoconstants, with improved performance.
- **[CRM-16189](https://issues.civicrm.org/jira/browse/CRM-16189) Improve
support for Accrual Method bookkeeping
([8807](https://github.com/civicrm/civicrm-core/pull/8807)) (partial work)**
The deferred revenue report now operates more like other reports.
- **[CRM-20251](https://issues.civicrm.org/jira/browse/CRM-20251) Make it easier
to overwrite front end form help text regarding recurring
([9970](https://github.com/civicrm/civicrm-core/pull/9970))**
The recurring contribution help text for donors is now prepared when building
the form rather than on the template. This makes it easier to modify in
hooks.
- **[CRM-20252](https://issues.civicrm.org/jira/browse/CRM-20252) Improve text
when processing possibly-delayed-payments
([9971](https://github.com/civicrm/civicrm-core/pull/9971))**
The "Your contribution has been submitted" text on contribution forms now only
appears if the site is still waiting on notification of a successful
transaction.
### CiviEvent
- **[CRM-20213](https://issues.civicrm.org/jira/browse/CRM-20213) Switch
participant_register_date to use datepicker in profiles
([9922](https://github.com/civicrm/civicrm-core/pull/9922))**
The registration date field now uses the more standard datepicker rather than
the jCalendar widget when used in a profile.
### CiviMember
- **[CRM-20294](https://issues.civicrm.org/jira/browse/CRM-20294) Update
membership dates in profiles to use datepicker
([10005](https://github.com/civicrm/civicrm-core/pull/10005))**
Membership join, start, end, and reminder date fields now use the more
standard datepicker rather than the jCalendar widget when used in a profile.
### CiviMail
- **[CRM-19836](https://issues.civicrm.org/jira/browse/CRM-19836) Allow mail
bounce processing to create activities for inbound email
([9655](https://github.com/civicrm/civicrm-core/pull/9655))**
The bounce fetcher can now optionally create activities for tracked replies to
CiviMail messages.
### CiviReport
- **[CRM-20255](https://issues.civicrm.org/jira/browse/CRM-20255) Add developer
tabs to more reports
([9978](https://github.com/civicrm/civicrm-core/pull/9978))**
The repeating contribution and event income reports now have the developer tab.
- **[CRM-20242](https://issues.civicrm.org/jira/browse/CRM-20242) Add developer
Tab to Activity Detail report
([9965](https://github.com/civicrm/civicrm-core/pull/9965))**
The Activity Detail report now has the developer tab.
### Drupal Integration Modules
- **[CRM-20186](https://issues.civicrm.org/jira/browse/CRM-20186) Expose legal
name in views ([430](https://github.com/civicrm/civicrm-drupal/pull/430) and
[429](https://github.com/civicrm/civicrm-drupal/pull/429))**
The Legal Name field is now available in Drupal Views.
### WordPress Integration
- **[CRM-20225](https://issues.civicrm.org/jira/browse/CRM-20225) Add classes to
WordPress basepage
([111](https://github.com/civicrm/civicrm-wordpress/pull/111))**
When viewing a CiviCRM page using the basepage method, the `<body>` element is
given a class name corresponding to the CiviCRM page.
## <a name="bugs"></a>Bugs resolved
### Core CiviCRM
- **[CRM-19773](https://issues.civicrm.org/jira/browse/CRM-19773) Call
hook_civicrm_selectWhereClause from the BAOs
([9923](https://github.com/civicrm/civicrm-core/pull/9923) and
[9570](https://github.com/civicrm/civicrm-core/pull/9570)) (preliminary work)**
Reports now check permissions more consistently for viewing entities.
- **[CRM-19124](https://issues.civicrm.org/jira/browse/CRM-19124) Date of birth
format varies between hooks and API
([9847](https://github.com/civicrm/civicrm-core/pull/9847))**
The birth date field is now *mostly* in the format `yyyymmddhhmmss` when it
appears in hooks.
- **[CRM-19914](https://issues.civicrm.org/jira/browse/CRM-19914)
civicrmHooks.php issues on windows
([9788](https://github.com/civicrm/civicrm-core/pull/9788))**
On Windows systems, the path to a `civicrmHooks.php` file in the custom PHP
directory was not resolving correctly.
- **[CRM-20216](https://issues.civicrm.org/jira/browse/CRM-20216) Dedupe rules
should be prevented from being saved if Weight Threshold is null or zero
([10020](https://github.com/civicrm/civicrm-core/pull/10020))**
- **[CRM-19308](https://issues.civicrm.org/jira/browse/CRM-19308) Disallow
false-y values for paths purged during cache clears
([8980](https://github.com/civicrm/civicrm-core/pull/8980))**
This prevents the entire CiviCRM files directory from being deleted on cache
clear in certain cases.
- **[CRM-19979](https://issues.civicrm.org/jira/browse/CRM-19979)
GroupContact.delete does not work for contacts with status of Pending
([9789](https://github.com/civicrm/civicrm-core/pull/9789)) (completes prior
work)**
This fixes a problem where an enormous contribution value would cause an
error on Authorize.net but nonetheless save the value in CiviCRM.
- **News dashlet - don't show count when it's zero
([10002](https://github.com/civicrm/civicrm-core/pull/10002))**
- **[CRM-20254](https://issues.civicrm.org/jira/browse/CRM-20254) Custom CSS
files do not include cache buster
([9980](https://github.com/civicrm/civicrm-core/pull/9980))**
- **[CRM-19980](https://issues.civicrm.org/jira/browse/CRM-19980) FIx slow
queries due to LOWER on contact name fields
([9802](https://github.com/civicrm/civicrm-core/pull/9802))**
Some contact fields were being queried with the `LOWER()` function, blocking
the performance benefit of indexes. CiviCRM tables use case-insensitive
collation, so queries will already be handled in case-insensitive way.
- **[CRM-19051](https://issues.civicrm.org/jira/browse/CRM-19051) Logging -
setting to allow offline triggers not respected in all cases
([9602](https://github.com/civicrm/civicrm-core/pull/9602))**
- **Settings ([9420](https://github.com/civicrm/civicrm-core/pull/9420))**
This resolves a code loop that could occur when retrieving domain settings and
removes some obsolete functions from the domain BAO.
- **[CRM-20020](https://issues.civicrm.org/jira/browse/CRM-20020) Advanced
search for parent group + another criteria ignores other criteria - shows all
group members always
([9836](https://github.com/civicrm/civicrm-core/pull/9836))**
- **[CRM-20023](https://issues.civicrm.org/jira/browse/CRM-20023) Accept
state_province_id without state_province in `CRM_Utils_Geocode_*`
([9958](https://github.com/civicrm/civicrm-core/pull/9958) and
[9839](https://github.com/civicrm/civicrm-core/pull/9839))**
- **[CRM-20235](https://issues.civicrm.org/jira/browse/CRM-20235) Suppress
annoying extension download error messages
([9954](https://github.com/civicrm/civicrm-core/pull/9954))**
No longer generate a separate pop-up message when CiviCRM is unable to access
the extension directory or write to the extensions folder.
- **[CRM-19958](https://issues.civicrm.org/jira/browse/CRM-19958) Problems with
contact types (subtypes) which beginning with numbers
([9769](https://github.com/civicrm/civicrm-core/pull/9769))**
- **[CRM-18747](https://issues.civicrm.org/jira/browse/CRM-18747) group
descriptions no longer included when listing in profiles
([9946](https://github.com/civicrm/civicrm-core/pull/9946))**
When groups are included as a checkbox field in a profile form,
the descriptions are now displayed as they were in CiviCRM 4.4.x and earlier.
- **[CRM-19993](https://issues.civicrm.org/jira/browse/CRM-19993) Fixes for ISO
compliance with countries and counties
([9951](https://github.com/civicrm/civicrm-core/pull/9951))**
A number of missing, misspelled, or out-of-date country and state/province
names are fixed.
- **[CRM-19386](https://issues.civicrm.org/jira/browse/CRM-19386) Date format is
not taken into account for custom field on activity import
([9072](https://github.com/civicrm/civicrm-core/pull/9072))**
- **[CRM-15505](https://issues.civicrm.org/jira/browse/CRM-15505) Mailing labels
show the state/province name as the abbreviation rather than the full
state/province name ([9911](https://github.com/civicrm/civicrm-core/pull/9911)
and [9905](https://github.com/civicrm/civicrm-core/pull/9905))**
- **[CRM-20208](https://issues.civicrm.org/jira/browse/CRM-20208) Multiple names
for Results Column in profiles
([10004](https://github.com/civicrm/civicrm-core/pull/10004))**
When viewing a profile's fields, the confusing legacy term "In Selector" was
still the label for whether a field appears in the results column.
- **[CRM-20270](https://issues.civicrm.org/jira/browse/CRM-20270) Test suite
displays "PHP Warning: declare(encoding=...) ignored because Zend multibyte
feature is turned off by settings in"
([9982](https://github.com/civicrm/civicrm-core/pull/9982))**
The ezcMail package is updated.
- **[CRM-20232](https://issues.civicrm.org/jira/browse/CRM-20232) Not all
relationship types available in relationship report filter.
([9947](https://github.com/civicrm/civicrm-core/pull/9947))**
Symmetrical relationships (e.g. sibling, spouse, etc.) weren't available as
filter options in the relationship report.
- **[CRM-19869](https://issues.civicrm.org/jira/browse/CRM-19869) CiviReport:
Layout problem multiple-page PDF
([9670](https://github.com/civicrm/civicrm-core/pull/9670))**
- **[CRM-20179](https://issues.civicrm.org/jira/browse/CRM-20179) Upgrade jstree
and other clientside performance fixes
([9899](https://github.com/civicrm/civicrm-core/pull/9899))**
### CiviContribute
- **[CRM-19710](https://issues.civicrm.org/jira/browse/CRM-19710) Preserve
is_email_receipt parameter through to email sent
([10000](https://github.com/civicrm/civicrm-core/pull/10000))**
In some cases, the `is_email_receipt` API parameter would fail to trigger a
receipt getting sent.
- **[CRM-19900](https://issues.civicrm.org/jira/browse/CRM-19900) Enable/Disable
payment processor from summary page only disables live
([9979](https://github.com/civicrm/civicrm-core/pull/9979))**
- **[CRM-20220](https://issues.civicrm.org/jira/browse/CRM-20220) Use text box
for signature field on payment processor page
([9936](https://github.com/civicrm/civicrm-core/pull/9936))**
- **[CRM-20146](https://issues.civicrm.org/jira/browse/CRM-20146) check_number
toggle: don't hardcode value
([9865](https://github.com/civicrm/civicrm-core/pull/9865))**
The value of the "check" payment instrument was hard-coded for the purpose of
showing and hiding the check number field.
- **[CRM-20334](https://issues.civicrm.org/jira/browse/CRM-20334) Fatal Error on
Submit Credit Card Form
([10042](https://github.com/civicrm/civicrm-core/pull/10042))**
- **[CRM-20052](https://issues.civicrm.org/jira/browse/CRM-20052) BillingBlock
js not loading as expected in Drupal 8
([9859](https://github.com/civicrm/civicrm-core/pull/9859))**
- **Civi\API\ExternalBatch - Improve test for variables_order/$_ENV
([9969](https://github.com/civicrm/civicrm-core/pull/9969))**
The ExternalBatch API checks more accurately for a missing `$_ENV` variable.
- **[CRM-20025](https://issues.civicrm.org/jira/browse/CRM-20025) DB Error on
email task for advanced search for contributions
([9952](https://github.com/civicrm/civicrm-core/pull/9952))**
- **[CRM-20247](https://issues.civicrm.org/jira/browse/CRM-20247) $is_recur not
always assigned to the template for recurring contributions
([9966](https://github.com/civicrm/civicrm-core/pull/9966))**
- **[CRM-20248](https://issues.civicrm.org/jira/browse/CRM-20248) Dummy payment
processor on dev sites uses Elavon, not dummy class
([9967](https://github.com/civicrm/civicrm-core/pull/9967))**
The dummy payment processor ID has been updated in hard-coded sample data.
- **[CRM-19966](https://issues.civicrm.org/jira/browse/CRM-19966) Tax applied
repeatedly when 'empty editing' contribution
([9948](https://github.com/civicrm/civicrm-core/pull/9948))**
- **[CRM-20193](https://issues.civicrm.org/jira/browse/CRM-20193) Draw currency
from better table on Batch Transaction form
([9930](https://github.com/civicrm/civicrm-core/pull/9930))**
Currency is now more accurately looked up from `civicrm_entity_financial_trxn`
rather than `civicrm_contribution`.
- **[CRM-19937](https://issues.civicrm.org/jira/browse/CRM-19937) entering $
(dollar sign) in other amount contribution box makes credit card forms go away
([9745](https://github.com/civicrm/civicrm-core/pull/9745))**
- **[CRM-19741](https://issues.civicrm.org/jira/browse/CRM-19741) Price set and
price set value "label" fields are inconsistant to users
([9776](https://github.com/civicrm/civicrm-core/pull/9776))**
This fixes a bug where the price field label was not saving properly when
edited inline.
### CiviMail
- **[CRM-20299](https://issues.civicrm.org/jira/browse/CRM-20299) CiviMail UI:
Recipient list does not update for advanced options
([10014](https://github.com/civicrm/civicrm-core/pull/10014))**
- **[CRM-19962](https://issues.civicrm.org/jira/browse/CRM-19962) Name field of
AB mailing too short
([9815](https://github.com/civicrm/civicrm-core/pull/9815))**
The `<input>` tag was missing the `type` attribute of `text`.
- **[CRM-20001](https://issues.civicrm.org/jira/browse/CRM-20001) Tokens in
Subject not working
([9824](https://github.com/civicrm/civicrm-core/pull/9824))**
- **[CRM-20206](https://issues.civicrm.org/jira/browse/CRM-20206) `&` encoded to
`&amp;` in plain text email checksum links
([9938](https://github.com/civicrm/civicrm-core/pull/9938) and
[9917](https://github.com/civicrm/civicrm-core/pull/9917))**
### CiviMember
- **[CRM-19792](https://issues.civicrm.org/jira/browse/CRM-19792) Authorize.net
membership renewals with credit card not processed though event regs are
([9662](https://github.com/civicrm/civicrm-core/pull/9662))**
Renewing a membership would not always provide the email address to the
payment processor.
- **[CRM-20342](https://issues.civicrm.org/jira/browse/CRM-20342) Fatal Error on
View Membership ([10060](https://github.com/civicrm/civicrm-core/pull/10060))**
- **Enotice fix ([10032](https://github.com/civicrm/civicrm-core/pull/10032))**
This fixes an occasional PHP notice for a missing variable when batch editing
memberships.
### CiviEvent
- **[CRM-20347](https://issues.civicrm.org/jira/browse/CRM-20347) Fatal error on
delete participant record with related contribution
([10061](https://github.com/civicrm/civicrm-core/pull/10061))**
- **[CRM-19273](https://issues.civicrm.org/jira/browse/CRM-19273) Changes to
Event Selections on Pending (Pay Later) Contribution Not Creating Correct
Financial Items Causing Imbalance in Accounting Batch Export
([9998](https://github.com/civicrm/civicrm-core/pull/9998)) (preliminary work)**
### Drupal Integration
- **[CRM-19835](https://issues.civicrm.org/jira/browse/CRM-19835) Installing
into D8, DB requirements fail using non-standard port for MySQL
([9910](https://github.com/civicrm/civicrm-core/pull/9910) and
[423](https://github.com/civicrm/civicrm-drupal/pull/423))**
- **[CRM-19856](https://issues.civicrm.org/jira/browse/CRM-19856) Get User
record url fails in Drupal 8
([9521](https://github.com/civicrm/civicrm-core/pull/9521))**
### WordPress Integration
- **[CRM-19665](https://issues.civicrm.org/jira/browse/CRM-19665) Canonical URL
for WP basepage pages is the basepage itself
([107](https://github.com/civicrm/civicrm-wordpress/pull/107))**
The canonical URL is now set properly (for the new standard `get_canonical_url`
filter as well as All-in-one SEO and Yoast SEO) when viewing a frontend page
using the basepage (long URL) method.
## <a name="misc"></a>Miscellany
- **[CRM-20239](https://issues.civicrm.org/jira/browse/CRM-20239) Extra tests
for the CRM_Contact_BAO_Individual::format function
([9963](https://github.com/civicrm/civicrm-core/pull/9963))**
- **[CRM-20157](https://issues.civicrm.org/jira/browse/CRM-20157) Code cleanup -
remove unused & unuseful variables in dedupe classes
([9907](https://github.com/civicrm/civicrm-core/pull/9907))**
- **[CRM-20224](https://issues.civicrm.org/jira/browse/CRM-20224) Cleanup
internal event names
([9943](https://github.com/civicrm/civicrm-core/pull/9943))**
- **Minor test tidy up.
([10044](https://github.com/civicrm/civicrm-core/pull/10044))**
- **Fix up test to create line_items & memberships accurately
([10029](https://github.com/civicrm/civicrm-core/pull/10029))**
- **extract two core API permission functions
([10016](https://github.com/civicrm/civicrm-core/pull/10016))**
API permissions are moved to a function providing them.
- **New GenCodeChecksum for auto-generated DAO files
([10013](https://github.com/civicrm/civicrm-core/pull/10013))**
- **Minor comment fixes & function extraction.
([9751](https://github.com/civicrm/civicrm-core/pull/9751))**
New `CRM_Core_Form` methods handle adding basic select fields and statistic
fields to reports.
- **Fix test to use name that will not cause intermittant errors
([10011](https://github.com/civicrm/civicrm-core/pull/10011))**
- **Correct description of order api
([10008](https://github.com/civicrm/civicrm-core/pull/10008))**
- **(NFC) Update API examples and add example of using user_contact_id as id for
current logged in user
([9959](https://github.com/civicrm/civicrm-core/pull/9959))**
- **Update to 4.7.18 ([9956](https://github.com/civicrm/civicrm-core/pull/9956))**
- **[CRM-20200](https://issues.civicrm.org/jira/browse/CRM-20200) Add
.editorconfig for easier editor config / coding standards
([9912](https://github.com/civicrm/civicrm-core/pull/9912))**
- **comment changes only
([9931](https://github.com/civicrm/civicrm-core/pull/9931))**
- **Additional unit test, checking membership renewal
([9909](https://github.com/civicrm/civicrm-core/pull/9909))**
## <a name="credits"></a>Credits
This release was developed by the following code authors:
AGH Strategies - Andrew Hunt; Agileware - Agileware Team; Arkadiusz
Rzadkowolski; Australian Greens - Seamus Lee; Black Brick Software - David
Hayes; Christian Wach; CiviCRM - Coleman Watts, Donald Lobo, Jitendra Purohit,
Kurund Jalmi, Tim Otten; CiviDesk - Sunil Pawar; CompuCorp - Michael Devery;
Ergon Logic Enterprises - Christopher Gervais; Erich Schulz; Fuzion - Chris
Burgess, Eileen McNaughton; Jérôme Lebleu; JMA Consulting - Edsel Lopez, Joe
Murray, Pradeep Nayak; Johan Vervloet; John Kingsnorth; Klaas Eikelboom;
Lighthouse Design and Consulting - Brian Shaughnessy; Matthew Wire; Progressive
Technology Project - Jamie McClelland; Romain Thouvenin; Sean Madsen; Semper IT -
Karin Gerritsen; Squiffle Consulting - Aidan Saunders; Tadpole Collective -
Kevin Cristiano; Vasantha Kaje; Vikas Kumar; We Move Europe/Caltha - Tomasz
Pietrzkowski; Wikimedia Foundation - Eileen McNaughton
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
Amnistía Internacional España - Fernando Rodríguez; Avietech - Jonathan Boeke;
Blackfly Solutions - Alan Dixon; British Humanist Association - Andrew West;
Circle Interactive - Dave Jenkins, Martin Castle; CiviCoop - Jaap Jansma;
CiviCRM - Monish Deb, Yashodha Chaku; CiviDesk - Nicolas Ganivet; CiviHosting -
Hershel Robinson; CompuCorp - Guanhuan Chen, Mirela Stanila; Dmitry Smirnov;
Forest CRM Consulting - Tamar Meir; Fuzion - Peter Davis; JMA Consulting - Jon
Goldberg; Korlon - Stuart Gaston; Minnesota Association of Veterinary
Technicians - Maureen Parks; Pawel Nowak; Skvare - Mark Hanna; Stuart Parker

View file

@ -0,0 +1,798 @@
# CiviCRM 4.7.19
Released May 3, 2017
- **[Features](#features)**
- **[Bugs resolved](#bugs)**
- **[Miscellany](#misc)**
- **[Credits](#credits)**
## <a name="features"></a>Features
### Backdrop Integration
- **[CRM-17711](https://issues.civicrm.org/jira/browse/CRM-17711) Add Support
for Backdrop ([10184](https://github.com/civicrm/civicrm-core/pull/10184))
(completes previous work)**
Backdrop is a fork of the Drupal project designed to offer a smooth upgrade
from Drupal 7. This is now the fourth content management system supported by
CiviCRM.
### Core CiviCRM
- **[CRM-20420](https://issues.civicrm.org/jira/browse/CRM-20420) Allow
retention of generated PDFs/Docs
([10155](https://github.com/civicrm/civicrm-core/pull/10155))**
A new option allows for generated PDF and other document files to be
automatically attached to their corresponding activities.
- **[CRM-19813](https://issues.civicrm.org/jira/browse/CRM-19813) Hook
priorities and core hooks to support LExIM
([10138](https://github.com/civicrm/civicrm-core/pull/10138) and
[9949](https://github.com/civicrm/civicrm-core/pull/9949))**
CiviCRM has increasingly relied upon the Symfony framework for providing new
areas of functionality. Symfony offers an [EventDispatcher](http://symfony.com/doc/current/components/event_dispatcher.html)
component that allows for extensions to respond to events and modify values.
Meanwhile, CiviCRM has long offered a Drupal-style hook system for those
purposes.
This change runs hook invocations through the EventDispatcher system to allow
for a richer feature set for extensions. This will let core functionality
become more modular. [Read the introduction to the pull request for more
background](https://github.com/civicrm/civicrm-core/pull/9949#issue-212649186)
- **[CRM-20361](https://issues.civicrm.org/jira/browse/CRM-20361) Populate
tokens when Scheduled Reminders are set to Record Activity for Automated Email
([10081](https://github.com/civicrm/civicrm-core/pull/10081))**
Activities generated by scheduled reminders now have the token values
populated. This is valuable for referring to fields that have changed since
the message was generated.
- **[CRM-20318](https://issues.civicrm.org/jira/browse/CRM-20318) Add is_public
setting on Custom Groups.
([10028](https://github.com/civicrm/civicrm-core/pull/10028))**
Custom data sets now have an additional setting determining whether the fields
should be displayed in "public" contexts. The only current application is for
events: event custom fields will only display if they are marked as "public".
- **[CRM-20207](https://issues.civicrm.org/jira/browse/CRM-20207) Introduce
selectWhereClause hook for activity results on activity tab contact summary
page ([9916](https://github.com/civicrm/civicrm-core/pull/9916))**
This change increases the coverage of `hook_civicrm_selectWhereClause` to
include the activity listing on a contact record.
- **[CRM-20312](https://issues.civicrm.org/jira/browse/CRM-20312) Identify and
fix missing indexes
([10109](https://github.com/civicrm/civicrm-core/pull/10109),
[10106](https://github.com/civicrm/civicrm-core/pull/10106), and
[10108](https://github.com/civicrm/civicrm-core/pull/10108))**
A new system check compares the indices on a site's database with those that
would be expected from the CiviCRM configuration. (A mismatch can cause
performance problems.) A utility now offers to clean up the database's
indices.
- **[CRM-20313](https://issues.civicrm.org/jira/browse/CRM-20313) Add index to
civicrm_activity.status_id
([10169](https://github.com/civicrm/civicrm-core/pull/10169) and
[10025](https://github.com/civicrm/civicrm-core/pull/10025))**
This adds database indices to several commonly-filtered columns in
`civicrm_activity`, `civicrm_entity_financial_account`, and
`civicrm_mailing_event_queue`.
- **[CRM-20332](https://issues.civicrm.org/jira/browse/CRM-20332) Refactor
summaryActions hook to allow user-defined actions in third column
([10046](https://github.com/civicrm/civicrm-core/pull/10046))**
Extension developers can now modify all items in the "Actions" list on a
contact record using `hook_civicrm_summaryActions`.
- **[CRM-18251](https://issues.civicrm.org/jira/browse/CRM-18251) Pingback
improvements ([8525](https://github.com/civicrm/civicrm-core/pull/8525))**
By default, CiviCRM sends basic usage statistics to civicrm.org. This adds
the country of the domain's address and the count of delivered mailings to
those statistics.
- **[CRM-20330](https://issues.civicrm.org/jira/browse/CRM-20330) Generate a
table with composite primary key
([10038](https://github.com/civicrm/civicrm-core/pull/10038))**
The database schema generation system of CiviCRM now supports the creation of
tables with composite primary keys: two or more fields in tandem serving as
the primary key.
- **[CRM-20368](https://issues.civicrm.org/jira/browse/CRM-20368) report
templates: don't hard-code order bys
([10087](https://github.com/civicrm/civicrm-core/pull/10087))**
Several report templates that had the "order by" clause directly specified in
code now use the standard sorting options.
- **[CRM-20308](https://issues.civicrm.org/jira/browse/CRM-20308) Activity copy
is always sent FROM logged in user's email ID
([10158](https://github.com/civicrm/civicrm-core/pull/10158),
[10122](https://github.com/civicrm/civicrm-core/pull/10122),
and [10163](https://github.com/civicrm/civicrm-core/pull/10163))**
The from email address for an activity assignment notification will now be
determined in the following order of preference:
1. The email address of the source contact of the activity
2. If that can not be found, the default `from` email address for the domain
3. If the default `from` email address for the domain can not be found the
email address of the logged-in user will be used. This was the prior
behavior.
- **[CRM-19464](https://issues.civicrm.org/jira/browse/CRM-19464)
supplemental_address_3 only exists in API
([10166](https://github.com/civicrm/civicrm-core/pull/10166) and
[9857](https://github.com/civicrm/civicrm-core/pull/9857))**
The Supplemental Address 3 field is now available to view and edit in the UI.
- **Icons for attachments
([10078](https://github.com/civicrm/civicrm-core/pull/10078))**
File attachments now have an icon corresponding to their MIME type.
### CiviCase
- **[CRM-16633](https://issues.civicrm.org/jira/browse/CRM-16633) Case Subject
not Editable ([10123](https://github.com/civicrm/civicrm-core/pull/10123))**
Case subjects can now be edited, generating a "Change Case Subject" activity.
- **[CRM-20345](https://issues.civicrm.org/jira/browse/CRM-20345) Sortable
columns ([10058](https://github.com/civicrm/civicrm-core/pull/10058)) (partial
work)**
Cases can now be sorted according to client.
- **[CRM-20105](https://issues.civicrm.org/jira/browse/CRM-20105) Search actions
([10188](https://github.com/civicrm/civicrm-core/pull/10188))**
Cases can now be merged with each other or restored from the trash using the
API.
- **[CRM-19778](https://issues.civicrm.org/jira/browse/CRM-19778) Allowed
statuses per case-type
([10065](https://github.com/civicrm/civicrm-core/pull/10065)) (completes
previous work)**
UI improvements to the case type management screen.
### CiviContribute
- **[CRM-20384](https://issues.civicrm.org/jira/browse/CRM-20384) Bookkeeping
report add contrib ID, filter by financial account owner (IIDA-85)
([10112](https://github.com/civicrm/civicrm-core/pull/10112))**
Two fields are added as columns and filters on the Bookkeeping Report:
contribution ID and financial account owner.
- **[CRM-20400](https://issues.civicrm.org/jira/browse/CRM-20400) Update the
Payment Receipt to use for Contribution payment
([10128](https://github.com/civicrm/civicrm-core/pull/10128))**
The receipt for partial payments has updated language appropriate for use
besides merely for participant partial payments.
- **[CRM-20264](https://issues.civicrm.org/jira/browse/CRM-20264) Store CC type
and last 4 digits from Contribution form
([10234](https://github.com/civicrm/civicrm-core/pull/10234),
[10228](https://github.com/civicrm/civicrm-core/pull/10228),
[10157](https://github.com/civicrm/civicrm-core/pull/10157),
[10193](https://github.com/civicrm/civicrm-core/pull/10193),
[10194](https://github.com/civicrm/civicrm-core/pull/10194), and
[10189](https://github.com/civicrm/civicrm-core/pull/10189))**
When processing a credit card from the front or back end, the last four digits
of the card number along with the card type are now stored on the financial
transaction.
- **[CRM-20158](https://issues.civicrm.org/jira/browse/CRM-20158) Store card
type and last 4 digits of credit card
([9880](https://github.com/civicrm/civicrm-core/pull/9880)) (partially
complete)**
This is the parent issue for tracking and retrieving card type and the last
four digits of the card number on financial transactions.
- **[CRM-20391](https://issues.civicrm.org/jira/browse/CRM-20391) Add
pan_truncation to search form
([10139](https://github.com/civicrm/civicrm-core/pull/10139))**
The last four digits of a card number are now searchable in the Find
Contributions search and Advanced Search pane.
- **[CRM-20273](https://issues.civicrm.org/jira/browse/CRM-20273) Add credit
card type field for Contribution Details Report
([9987](https://github.com/civicrm/civicrm-core/pull/9987))**
- **[CRM-20278](https://issues.civicrm.org/jira/browse/CRM-20278) Add credit
card type field for Top Donor Report
([9991](https://github.com/civicrm/civicrm-core/pull/9991))**
- **[CRM-20275](https://issues.civicrm.org/jira/browse/CRM-20275) Add credit
card type field for Contributions by Organization Report
([9989](https://github.com/civicrm/civicrm-core/pull/9989))**
- **[CRM-20277](https://issues.civicrm.org/jira/browse/CRM-20277) Add credit
card type field for Contributions by Household Report
([9990](https://github.com/civicrm/civicrm-core/pull/9990))**
- **[CRM-20279](https://issues.civicrm.org/jira/browse/CRM-20279) Add credit
card type field for SYBUNT report
([9992](https://github.com/civicrm/civicrm-core/pull/9992))**
- **[CRM-20280](https://issues.civicrm.org/jira/browse/CRM-20280) Add credit
card type field for LYBUNT report
([9993](https://github.com/civicrm/civicrm-core/pull/9993))**
- **[CRM-20281](https://issues.civicrm.org/jira/browse/CRM-20281) Add credit
card type field for Soft Credit Report
([9994](https://github.com/civicrm/civicrm-core/pull/9994))**
- **[CRM-20284](https://issues.civicrm.org/jira/browse/CRM-20284) Add credit
card type field for Contribution Aggregate by Relationship report
([9997](https://github.com/civicrm/civicrm-core/pull/9997))**
- **[CRM-20285](https://issues.civicrm.org/jira/browse/CRM-20285) Add credit
card type field for Recurring Contributions report
([10001](https://github.com/civicrm/civicrm-core/pull/10001))**
- **[CRM-20331](https://issues.civicrm.org/jira/browse/CRM-20331) Add card type
and pan truncation besides payment method
([10037](https://github.com/civicrm/civicrm-core/pull/10037))**
When viewing payment details on a credit card contribution, the credit card
type and last four digits are displayed if available.
- **[CRM-8526](https://issues.civicrm.org/jira/browse/CRM-8526) Support
[contribution.custom_nn] tokens in templates
([9848](https://github.com/civicrm/civicrm-core/pull/9848)) (completes
previous work)**
CiviCRM can now process tokens for contribution custom fields (most lately in
emails sent from search results).
- **[CRM-20379](https://issues.civicrm.org/jira/browse/CRM-20379) Move payment
details above less important sections on backoffice form
([10101](https://github.com/civicrm/civicrm-core/pull/10101))**
Payment details now appear before soft credits when recording or editing
contributions in the backend.
- **[CRM-19892](https://issues.civicrm.org/jira/browse/CRM-19892) Improve
financial transaction pager for batch assignment
([9694](https://github.com/civicrm/civicrm-core/pull/9694))**
The listing of financial transactions for batches now allows for viewing more
lines per page.
- **[CRM-20022](https://issues.civicrm.org/jira/browse/CRM-20022) Add Batch
Title to Columns, Grouping tabs on Contribution Summary report
([10142](https://github.com/civicrm/civicrm-core/pull/10142) and
[10006](https://github.com/civicrm/civicrm-core/pull/10006))**
The batch title is now available to view and group in the Contribution
Summary report.
### CiviEvent
- **[CRM-19773](https://issues.civicrm.org/jira/browse/CRM-19773) Call
hook_civicrm_selectWhereClause from the BAOs
([10125](https://github.com/civicrm/civicrm-core/pull/10125) and
[9544](https://github.com/civicrm/civicrm-core/pull/9544))**
This change increases the coverage of `hook_civicrm_selectWhereClause` to
include selecting events.
### CiviMail
- **[CRM-20369](https://issues.civicrm.org/jira/browse/CRM-20369) include
subject field in mailing reports
([10088](https://github.com/civicrm/civicrm-core/pull/10088))**
Mailing reports now can display the subject line in addition to the internal
mailing name.
### CiviMember
- **[CRM-20344](https://issues.civicrm.org/jira/browse/CRM-20344) Make 'Member
Since' displayed on membership tabs for Inactive Memberships.
([10055](https://github.com/civicrm/civicrm-core/pull/10055))**
The membership join date is now displayed even on the table of a contact's
inactive memberships.
- **[CRM-20375](https://issues.civicrm.org/jira/browse/CRM-20375) Respect
membership auto-renew status for contribution pages
([10095](https://github.com/civicrm/civicrm-core/pull/10095))**
Auto-renew options on contribution pages now appear or freeze according to the
selected membership type's settings for auto-renew.
### Drupal Integration Modules
- **[CRM-20319](https://issues.civicrm.org/jira/browse/CRM-20319) Expose
relationship permission to views
([437](https://github.com/civicrm/civicrm-drupal/pull/437))**
Views can now display, filter by, and sort by whether a relationship grants
permission for one contact to view or edit the other.
### WordPress Integration
- **[CRM-20148](https://issues.civicrm.org/jira/browse/CRM-20148) WP-CLI
installer won't run if it can be run
([110](https://github.com/civicrm/civicrm-wordpress/pull/110))**
CiviCRM can now be installed using WP-CLI, either by first downloading and
enabling the CiviCRM plugin or manually including the `wp-cli/civicrm.php`
file as part of the command.
## <a name="bugs"></a>Bugs resolved
### Core CiviCRM
- **[CRM-20417](https://issues.civicrm.org/jira/browse/CRM-20417) Translate
strings ([10179](https://github.com/civicrm/civicrm-core/pull/10179) and
[10148](https://github.com/civicrm/civicrm-core/pull/10148))**
A number of untranslated phrases are now sent through translation.
- **[CRM-20246](https://issues.civicrm.org/jira/browse/CRM-20246) maxfilesize on
import should respect 0 as meaning "no limit"
([10021](https://github.com/civicrm/civicrm-core/pull/10021))**
A zero value had been interpreted as disallowing any size file.
- **[CRM-20333](https://issues.civicrm.org/jira/browse/CRM-20333) Search menu
visible even when a user has not access to any contacts.
([10040](https://github.com/civicrm/civicrm-core/pull/10040))**
- **[CRM-20451](https://issues.civicrm.org/jira/browse/CRM-20451) Do no assume
all BAOs have exportableFields method in Core_report
([10191](https://github.com/civicrm/civicrm-core/pull/10191))**
- **[CRM-20481](https://issues.civicrm.org/jira/browse/CRM-20481) Refactor
Activity api to more efficient query
([10280](https://github.com/civicrm/civicrm-core/pull/10280)) (preliminary
work)**
- **[CRM-20467](https://issues.civicrm.org/jira/browse/CRM-20467) PHP notices on
contact search for ACL'd user
([10243](https://github.com/civicrm/civicrm-core/pull/10243))**
Notices appeared when the user has access to contacts via ACLs rather than the
"View all contacts" permission.
- **[CRM-20441](https://issues.civicrm.org/jira/browse/CRM-20441) Fatal error on
contact summary for ACL'd user (from activity tab count)
([10237](https://github.com/civicrm/civicrm-core/pull/10237),
[10232](https://github.com/civicrm/civicrm-core/pull/10232),
[10231](https://github.com/civicrm/civicrm-core/pull/10231), and
[10212](https://github.com/civicrm/civicrm-core/pull/10212))**
The fatal error occurred when the user has access to contacts via ACLs rather
than the "View all contacts" permission.
- **Added object type selector to panel rule
([10175](https://github.com/civicrm/civicrm-core/pull/10175))**
This fixes a bug where all elements with the `panel` class were hidden.
- **[CRM-20436](https://issues.civicrm.org/jira/browse/CRM-20436) Non Static
method CRM_Upgrade_Incremental_php_FourSeven::updateKenyanProvinces should be
static ([10170](https://github.com/civicrm/civicrm-core/pull/10170))**
- **[CRM-20429](https://issues.civicrm.org/jira/browse/CRM-20429) Deleting an
activity with target contacts > 50 results in error
([10162](https://github.com/civicrm/civicrm-core/pull/10162))**
- **[CRM-20339](https://issues.civicrm.org/jira/browse/CRM-20339) Custom field
data on relationships only saved when creating a new relationship, not on edit
([10092](https://github.com/civicrm/civicrm-core/pull/10092))**
- **[CRM-20390](https://issues.civicrm.org/jira/browse/CRM-20390) Data type
mismatch in angular select2 bindings
([10116](https://github.com/civicrm/civicrm-core/pull/10116))**
Select2 widgets had been expected to accept comma-delimited data and produce
arrays. This change makes input and output consistent.
- **[CRM-19921](https://issues.civicrm.org/jira/browse/CRM-19921) CustomGroup
$params['extends'] should only be required on create, not on update
([9724](https://github.com/civicrm/civicrm-core/pull/9724))**
- **[CRM-19400](https://issues.civicrm.org/jira/browse/CRM-19400) open street
map no longer works
([10049](https://github.com/civicrm/civicrm-core/pull/10049))**
Mapping with OpenStreetMap now uses the Carto tile server.
- **[CRM-20350](https://issues.civicrm.org/jira/browse/CRM-20350) Incorrect
escaping of double-quotes in iCalendar text values
([10067](https://github.com/civicrm/civicrm-core/pull/10067))**
- **[CRM-20011](https://issues.civicrm.org/jira/browse/CRM-20011) Profile date
fields using YYYY-MM or MM YY don't work
([10003](https://github.com/civicrm/civicrm-core/pull/10003))**
- **[CRM-20327](https://issues.civicrm.org/jira/browse/CRM-20327) API chaining -
replace $value when using operators.
([10033](https://github.com/civicrm/civicrm-core/pull/10033))**
API Chaining is a CiviCRM feature introduced in May 2011 by Eileen McNaughton
([CRM-8148](https://issues.civicrm.org/jira/browse/CRM-8148)) allowing for a
single API call to both retrieve entities and perform actions on those
entities. The value of the parent link in a chain is denoted by `$value`, but
this was not handled properly with operators like `IF` or `<`.
- **[CRM-20178](https://issues.civicrm.org/jira/browse/CRM-20178) Writes to
timestamp fields are silently ignored by $dao->save()
([178](https://github.com/civicrm/civicrm-packages/pull/178))**
- **[CRM-20427](https://issues.civicrm.org/jira/browse/CRM-20427) Many pages
break on multilingual on 4.7.18
([10171](https://github.com/civicrm/civicrm-core/pull/10171))**
- **[CRM-19663](https://issues.civicrm.org/jira/browse/CRM-19663) A scheduled
reminder set to use an absolute date does not allow repeats
([9773](https://github.com/civicrm/civicrm-core/pull/9773))**
- **[CRM-19612](https://issues.civicrm.org/jira/browse/CRM-19612) Dedupe_copy DB
error ([10035](https://github.com/civicrm/civicrm-core/pull/10035))
(preliminary work)**
Deduping according to a matching rule with more than one field can result in a
database error. Users still report facing this bug.
### CiviCampaign
- **[CRM-20376](https://issues.civicrm.org/jira/browse/CRM-20376) SurveyDetails
Report should not repeat field names when printing
([10096](https://github.com/civicrm/civicrm-core/pull/10096))**
- **Crm 20378 - simplify SurveyDetail report - improve line breaks in PDF, etc.
([10097](https://github.com/civicrm/civicrm-core/pull/10097))**
### CiviMember
- **[CRM-20343](https://issues.civicrm.org/jira/browse/CRM-20343) Wrong Activity
creation when Membership status is changed from membership form.
([10093](https://github.com/civicrm/civicrm-core/pull/10093))**
Editing a cancelled membership may result in a new membership activity being
created.
- **[CRM-20371](https://issues.civicrm.org/jira/browse/CRM-20371) Set
is_transactional when trying to create membership_payments in recur
transaciton ([10091](https://github.com/civicrm/civicrm-core/pull/10091))**
If creating a membership payment fails on a recurring payment, the entire
transaction should not roll back.
- **[CRM-20311](https://issues.civicrm.org/jira/browse/CRM-20311) Membership
cancelation via contribution doesn't create membership status change activity
([10054](https://github.com/civicrm/civicrm-core/pull/10054) and
[10024](https://github.com/civicrm/civicrm-core/pull/10024))**
- **[CRM-20008](https://issues.civicrm.org/jira/browse/CRM-20008)
repeattrasaction should create pending membership when
contribtuion_status_id is pending
([10030](https://github.com/civicrm/civicrm-core/pull/10030))**
- **[CRM-20413](https://issues.civicrm.org/jira/browse/CRM-20413) Wrong
payment_instrument used for civicrm_contribution for membership office
contributions ([10144](https://github.com/civicrm/civicrm-core/pull/10144))**
This fixes a bug where contributions created by memberships created in the
backend have the payment instrument incorrectly recorded as "Check".
- **[CRM-19243](https://issues.civicrm.org/jira/browse/CRM-19243) Free
membership results in two activities and email receipts
([10084](https://github.com/civicrm/civicrm-core/pull/10084))**
- **[CRM-20329](https://issues.civicrm.org/jira/browse/CRM-20329) Backend
Membership with Payment set to Failed results in Membership being set to New
([10036](https://github.com/civicrm/civicrm-core/pull/10036))**
### CiviMail
- **[CRM-20340](https://issues.civicrm.org/jira/browse/CRM-20340) Translate
unsubscribe string
([10047](https://github.com/civicrm/civicrm-core/pull/10047))**
The unsubscribe button on the unsubscribe form was not translated.
- **[CRM-20316](https://issues.civicrm.org/jira/browse/CRM-20316) Api mailing
create should work without logged in user (eg. drush)
([10186](https://github.com/civicrm/civicrm-core/pull/10186))**
- **[CRM-20389](https://issues.civicrm.org/jira/browse/CRM-20389) Cloned
experiment or winner mailing should have type standalone
([10127](https://github.com/civicrm/civicrm-core/pull/10127))**
Reusing a mailing from an A/B test should not carry the type from the test;
it should look like other "normal" mailings.
- **[CRM-20402](https://issues.civicrm.org/jira/browse/CRM-20402) improve "spam"
pattern match for bounces
([10132](https://github.com/civicrm/civicrm-core/pull/10132))**
Some spam notifications were being treated as syntax bounces.
- **[CRM-20140](https://issues.civicrm.org/jira/browse/CRM-20140) CiviCRM
alterMailParams hook does not work on subject
([9869](https://github.com/civicrm/civicrm-core/pull/9869))**
### CiviContribute
- **[CRM-20374](https://issues.civicrm.org/jira/browse/CRM-20374) Don't crash
when we can't UpdateSubscription for recurring contributions
([10094](https://github.com/civicrm/civicrm-core/pull/10094))**
- **[CRM-20450](https://issues.civicrm.org/jira/browse/CRM-20450) Fix invoice
math for partial payments
([10223](https://github.com/civicrm/civicrm-core/pull/10223) and
[10222](https://github.com/civicrm/civicrm-core/pull/10222))**
- **[CRM-20465](https://issues.civicrm.org/jira/browse/CRM-20465) pan truncation
doesn't respect values preceding with 0
([10218](https://github.com/civicrm/civicrm-core/pull/10218))**
The last four digits of a credit card number were being stored as an integer
rather than a four-character string.
- **[CRM-20464](https://issues.civicrm.org/jira/browse/CRM-20464) Smarty error
when receipt is send for recording payment
([10210](https://github.com/civicrm/civicrm-core/pull/10210))**
- **[CRM-19597](https://issues.civicrm.org/jira/browse/CRM-19597) Allow the
receive_date to be passed in when replaying Authorize.net transactions
([10099](https://github.com/civicrm/civicrm-core/pull/10099))**
The `receive_date` had been populated by the current date.
- **[CRM-20392](https://issues.civicrm.org/jira/browse/CRM-20392) Credit card
payment not recorded when contribution is partially paid
([10187](https://github.com/civicrm/civicrm-core/pull/10187),
[10143](https://github.com/civicrm/civicrm-core/pull/10143),
[10129](https://github.com/civicrm/civicrm-core/pull/10129),
[10137](https://github.com/civicrm/civicrm-core/pull/10137), and
[10136](https://github.com/civicrm/civicrm-core/pull/10136))**
- **[CRM-20388](https://issues.civicrm.org/jira/browse/CRM-20388) Payflow Pro
payment processor codes rejected payments as completed
([10115](https://github.com/civicrm/civicrm-core/pull/10115))**
- **[CRM-20385](https://issues.civicrm.org/jira/browse/CRM-20385) oversensitive
deferred revenue account validation
([10114](https://github.com/civicrm/civicrm-core/pull/10114))**
- **Refactored Deferred Revenue report to follow more standardized approach.
([10113](https://github.com/civicrm/civicrm-core/pull/10113))**
- **[CRM-19633](https://issues.civicrm.org/jira/browse/CRM-19633) Contribution
page shows error on multisite when viewed from a domain that the payment
processor isn't linked to
([9371](https://github.com/civicrm/civicrm-core/pull/9371))**
- **[CRM-20336](https://issues.civicrm.org/jira/browse/CRM-20336) Failed iATS
contribution should be set to failed, not pending
([10041](https://github.com/civicrm/civicrm-core/pull/10041))**
- **[CRM-20012](https://issues.civicrm.org/jira/browse/CRM-20012) contribution
batch update: can't unset thank you date value
([9729](https://github.com/civicrm/civicrm-core/pull/9729))**
Date handling in profiles is simplified and standardized.
- **[CRM-20334](https://issues.civicrm.org/jira/browse/CRM-20334) Regression
within release cycle - Fatal Error on Submit Credit Card Form
([10039](https://github.com/civicrm/civicrm-core/pull/10039))**
- **[CRM-20449](https://issues.civicrm.org/jira/browse/CRM-20449) Possible
regression - enotices from 'send thankyou letter' on contribution search
actions ([10219](https://github.com/civicrm/civicrm-core/pull/10219))**
- **[CRM-20393](https://issues.civicrm.org/jira/browse/CRM-20393) Authorize.net:
fix for the "check if the user already submitted this transaction"
([10147](https://github.com/civicrm/civicrm-core/pull/10147))**
- **[CRM-19517](https://issues.civicrm.org/jira/browse/CRM-19517) Show price
field Options that use disabled Financial Types so they can be edited.
([9276](https://github.com/civicrm/civicrm-core/pull/9276))**
- **[CRM-20360](https://issues.civicrm.org/jira/browse/CRM-20360) Payment
Options heading is incorrectly shown when default amount is 0
([10080](https://github.com/civicrm/civicrm-core/pull/10080))**
- **[CRM-19741](https://issues.civicrm.org/jira/browse/CRM-19741) Price set and
price set value "label" fields are inconsistant to users
([10120](https://github.com/civicrm/civicrm-core/pull/10120))**
### CiviSMS
- **[CRM-20410](https://issues.civicrm.org/jira/browse/CRM-20410) Refactor SMS
provider BAO to have proper create function
([10135](https://github.com/civicrm/civicrm-core/pull/10135))**
- **[CRM-19961](https://issues.civicrm.org/jira/browse/CRM-19961) Make CiviCRM
SMS Providers multisite aware
([9796](https://github.com/civicrm/civicrm-core/pull/9796) and
[10100](https://github.com/civicrm/civicrm-core/pull/10100))**
### CiviEvent
- **[CRM-20029](https://issues.civicrm.org/jira/browse/CRM-20029) Events with
file custom fields don't copy the files
([9960](https://github.com/civicrm/civicrm-core/pull/9960))**
Copying an event with files uploaded to custom fields should result in copies
of the files attached to the copy of the event.
### Drupal Integration
- **[CRM-20502](https://issues.civicrm.org/jira/browse/CRM-20502) Drush upgrade
crashes on loading "is_public" field
([444](https://github.com/civicrm/civicrm-drupal/pull/444))**
The cache of custom fields will no longer be populated when a site is being
upgraded.
- **Drupal bootstrap failures should throw debuggable exception
([9616](https://github.com/civicrm/civicrm-core/pull/9616))**
## <a name="misc"></a>Miscellany
- **[CRM-20439](https://issues.civicrm.org/jira/browse/CRM-20439) Rename
card_type to card_type_id of civicrm_financial_trxn table (IIDA-126)
([10178](https://github.com/civicrm/civicrm-core/pull/10178))**
- **[CRM-20367](https://issues.civicrm.org/jira/browse/CRM-20367) Add wrapper
function for adding and dropping Index in Upgrader
([10131](https://github.com/civicrm/civicrm-core/pull/10131) and
[10086](https://github.com/civicrm/civicrm-core/pull/10086))**
- **[CRM-19967](https://issues.civicrm.org/jira/browse/CRM-19967) Contact query
inline docs improvements from CRM-4287
([10090](https://github.com/civicrm/civicrm-core/pull/10090))**
- **[CRM-19715](https://issues.civicrm.org/jira/browse/CRM-19715) Remove Close
Accounting Period code
([10083](https://github.com/civicrm/civicrm-core/pull/10083),
[9974](https://github.com/civicrm/civicrm-core/pull/9974),
[9985](https://github.com/civicrm/civicrm-core/pull/9985), and
[10077](https://github.com/civicrm/civicrm-core/pull/10077))**
An unadvertised set of features allowed for closing the books at the end of an
accounting period and producing a trial balance. This feature set is more
appropriate in an extension.
- **[CRM-20328](https://issues.civicrm.org/jira/browse/CRM-20328) Remove code
duplication when calling Dedupe functions
([10053](https://github.com/civicrm/civicrm-core/pull/10053),
[10034](https://github.com/civicrm/civicrm-core/pull/10034),
[10150](https://github.com/civicrm/civicrm-core/pull/10150),
[10069](https://github.com/civicrm/civicrm-core/pull/10069),
[10070](https://github.com/civicrm/civicrm-core/pull/10070), and
[10064](https://github.com/civicrm/civicrm-core/pull/10064)) (towards
[CRM-20155](https://issues.civicrm.org/jira/browse/CRM-20155))**
This refactors and standardizes code for matching contacts and preparing to
merge duplicates.
- **[CRM-20357](https://issues.civicrm.org/jira/browse/CRM-20357) Remove
CRM_Dedupe_Finder::dupesOfContact function
([10071](https://github.com/civicrm/civicrm-core/pull/10071))**
The function was obsolete and unused.
- **Fix spelling. ([10282](https://github.com/civicrm/civicrm-core/pull/10282))**
- **[NFC] Remove comment as this has been fixed
([10199](https://github.com/civicrm/civicrm-core/pull/10199))**
- **[NFC] Further test improvement
([10198](https://github.com/civicrm/civicrm-core/pull/10198))**
- **CiviEventInspector - Add util for displaying hook metadata
([10161](https://github.com/civicrm/civicrm-core/pull/10161))**
This utility makes use of the fact that hooks are now handled by Symfony
events, providing the ability to view information about implementations of a
hook/event.
- **Code cleanup ([10176](https://github.com/civicrm/civicrm-core/pull/10176))**
This removes redundant code relating to financial accounts.
- **Used Api to get financial account for an entity defined in
civicrm_entity_financial_account table
([10130](https://github.com/civicrm/civicrm-core/pull/10130))**
- **GenCode - Reduce merge-conflicts on AllCoreTables
([10182](https://github.com/civicrm/civicrm-core/pull/10182))**
- **[NFC] Fix invalid php in test-generated example
([10185](https://github.com/civicrm/civicrm-core/pull/10185))**
- **Fix visibility typo
([10177](https://github.com/civicrm/civicrm-core/pull/10177))**
- **Document PR scope & size
([10174](https://github.com/civicrm/civicrm-core/pull/10174))**
- **Make sourceSQLFile throw an error when it can't find a file.
([10160](https://github.com/civicrm/civicrm-core/pull/10160))**
- **Fix test regression by correctly setting timestamp in test method
([10145](https://github.com/civicrm/civicrm-core/pull/10145))**
- **[CRM-19987](https://issues.civicrm.org/jira/browse/CRM-19987) Disabled
activities are shown in search results
([10119](https://github.com/civicrm/civicrm-core/pull/10119))**
Only comments are added.
- **Add my details ([10110](https://github.com/civicrm/civicrm-core/pull/10110))**
- **Minor spelling & casing tidy ups
([10107](https://github.com/civicrm/civicrm-core/pull/10107))**
- **[CRM-20346](https://issues.civicrm.org/jira/browse/CRM-20346) Remove
encryptDB.php from codebase
([10059](https://github.com/civicrm/civicrm-core/pull/10059))**
- **(NFC) Update stale GenCode checksums
([10048](https://github.com/civicrm/civicrm-core/pull/10048))**
- **Remove CRM_Core_Form::generateID().
([9968](https://github.com/civicrm/civicrm-core/pull/9968))**
## <a name="credits"></a>Credits
This release was developed by the following code authors:
AGH Strategies - Andrew Hunt; Agileware - Agileware Team; Australian Greens -
Seamus Lee; CiviCoop - Erik Hommel, Jaap Jansma; CiviCRM - Coleman Watts, Tim
Otten; CiviFirst - John Kirk; CompuCorp - Omar Abu Hussein; Coop SymbioTIC -
Mathieu Lutfy; Erich Schulz; Fuzion - Chris Burgess, Eileen McNaughton, Jitendra
Purohit; JMA Consulting - Edsel Lopez, Joe Murray, Monish Deb, Pradeep Nayak;
Joinery - Allen Shaw; Lighthouse Design and Consulting - Brian Shaughnessy; MJW
Consulting - Matthew Wire; Progressive Technology Project - Jamie McClelland;
Romain Thouvenin; Semper IT - Karin Gerritsen; Squiffle Consulting - Aidan
Saunders; Stan Dragnev; Systopia - Björn Endres; Third Sector Design - Michael
McAndrew; Tobias Lounsbury; Wikimedia Foundation - Eileen McNaughton
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
AGH Strategies - Mika Weinstein; Annertech - Anthony Lindsay; Barbara Miller;
Blackfly Solutions - Alan Dixon; British Humanist Association - William Gordon;
Canine Companions for Independence - Angela Cacciola; Christian Wach; Circle
Interactive - Dave Jenkins, Martin Castle; CiviCRM - Josh Gowans; CiviDesk -
Nicolas Ganivet, Steve Kessler, Sunil Pawar, Yashodha Chaku; Comunica2 - René
Nieuwburg; CompuCorp - Guanhuan Chen, Mirela Stanila; Coop SymbioTIC - Mathieu
Lutfy; Donald Lobo; Freeform Solutions - Herb van den Dool; Fuzion - Gemma
Potaka, Peter Davis; Ginkgo Street Labs - Frank Gómez; Glick Software - David
Glick; GMCVO Databases - Jon-man Cheung; Greenleaf Advancement - Guy Iaccarino;
Hartmann Computer Consulting - Peter Hartmann; JMA Consulting - Jon Goldberg;
John Kingsnorth; Korlon - Stuart Gaston; Lullabot - Nate Lampton; Marc Brazeau;
MC3 - Graham Mitchell; Michal Mach; Richard van Oosterhout; Romain Thouvenin;
Samuel Haskell; Sean Madsen; Semper IT - Karin Gerritsen; Spry Digital - Ellen
Hendricks, Sheila Burkett; Tadpole Collective - Kevin Cristiano; Team Expansion -
Greg Harris; Timbsoft Technologies - Tunbola Ogunwande

View file

@ -0,0 +1,630 @@
# CiviCRM 4.7.20
Released June 7, 2017
- **[Features](#features)**
- **[Bugs resolved](#bugs)**
- **[Miscellany](#misc)**
- **[Credits](#credits)**
## <a name="features"></a>Features
### Core CiviCRM
- **[CRM-20552](https://issues.civicrm.org/jira/browse/CRM-20552) Task for "Add
Relationship - to individual" is missing
([10332](https://github.com/civicrm/civicrm-core/pull/10332))**
You can now add a relationship to an individual for contacts in search results.
- **[CRM-19977](https://issues.civicrm.org/jira/browse/CRM-19977) Update all
fields manipulated by hook_civicrm_geocoderFormat when geocoding
([9864](https://github.com/civicrm/civicrm-core/pull/9864))**
Extensions implementing `hook_civicrm_geocoderFormat` will now modify all
address fields instead of just the latitude, longitude, and postal code
fields.
- **[CRM-20458](https://issues.civicrm.org/jira/browse/CRM-20458) Add
`civi.dao.preDelete event`
([10197](https://github.com/civicrm/civicrm-core/pull/10197))**
This triggers a Symfony event prior to deleting a record in the database.
- **[CRM-20425](https://issues.civicrm.org/jira/browse/CRM-20425) Activity
status per mail account
([10159](https://github.com/civicrm/civicrm-core/pull/10159))**
Administrators can now designate the status for activities created by inbound
emails to accounts. Each account may have a different activity status.
- **[CRM-20540](https://issues.civicrm.org/jira/browse/CRM-20540) entityRef
field: create option to set wildcard preference
([10330](https://github.com/civicrm/civicrm-core/pull/10330))**
Entity reference fields can now be configured to automatically include a
wildcard.
- **APIExplorer - Add cv and hyperlinks
([10309](https://github.com/civicrm/civicrm-core/pull/10309))**
Examples for an API call using the `cv` command-line tool are now provided
alongside Drush or WP-CLI.
### CiviCampaign
- **[CRM-15984](https://issues.civicrm.org/jira/browse/CRM-15984) Add campaign
field on Email activity form
([10317](https://github.com/civicrm/civicrm-core/pull/10317))**
When sending an email to a contact, you can now set the campaign that the
email belongs to.
- **[CRM-20510](https://issues.civicrm.org/jira/browse/CRM-20510) Petition
signature doesn't show as an activity type for scheduled reminder
([10301](https://github.com/civicrm/civicrm-core/pull/10301))**
Petition signature activities are now available as the basis for scheduled
reminders.
### CiviContribute
- **[CRM-20591](https://issues.civicrm.org/jira/browse/CRM-20591) Disabling a
payment processor via UI (other than Payment_PayPalImpl) will break live mode
([10402](https://github.com/civicrm/civicrm-core/pull/10402))**
- **[CRM-20037](https://issues.civicrm.org/jira/browse/CRM-20037) Change
Contribution tab to show balance due
([10334]([10204](https://github.com/civicrm/civicrm-core/pull/10204),
https://github.com/civicrm/civicrm-core/pull/10334) and
[10295](https://github.com/civicrm/civicrm-core/pull/10295))**
Partially paid and pending refund contributions now display the positive or
negative amount due on a contact's contributions tab.
- **[CRM-15067](https://issues.civicrm.org/jira/browse/CRM-15067) Email should
appear in the profile in which it is included, rather than always at the top
of contribution page
([10349](https://github.com/civicrm/civicrm-core/pull/10349))**
Contribution pages automatically contain the email address field. In the
past, the email address would appear ahead of any profiles, removing a site
administrator's control over the field's placement. Now, if the field is in
one of the profiles included on the page, it appears there. Otherwise, it
appears before the profiles.
### CiviMail
- **[CRM-9683](https://issues.civicrm.org/jira/browse/CRM-9683) Implement
timezone support for CiviMail
([10154](https://github.com/civicrm/civicrm-core/pull/10154))**
The database schema *for new installations only* is altered to record the Unix
timestamp for the times when CiviMail messages are created, scheduled, sent,
and canceled. This sidesteps problems that can arise from users with
different local times creating mailings to send immediately.
### Drupal Integration
- **[CRM-20462](https://issues.civicrm.org/jira/browse/CRM-20462) Add filter for
current employer in views
([440](https://github.com/civicrm/civicrm-drupal/pull/440))**
Views can now filter contacts by the name of an individual's current employer.
## <a name="bugs"></a>Bugs resolved
### Core CiviCRM
- **[CRM-20498](https://issues.civicrm.org/jira/browse/CRM-20498) buildform hook
invoked twice ([10278](https://github.com/civicrm/civicrm-core/pull/10278))**
This fixes some of the cases where `hook_civicrm_buildForm` is invoked twice
on CiviCRM forms.
- **[CRM-20539](https://issues.civicrm.org/jira/browse/CRM-20539) Do not heed
dao default for field when setting defaults on reports
([10319](https://github.com/civicrm/civicrm-core/pull/10319))**
The default value of a field as defined in the database schema should not
automatically be the default for report settings.
- **[CRM-20541](https://issues.civicrm.org/jira/browse/CRM-20541) Edge case
where DB connection is not available
([10320](https://github.com/civicrm/civicrm-core/pull/10320))**
This resolves a bug in test cases where the database connection is not
available from the cache.
- **[CRM-20418](https://issues.civicrm.org/jira/browse/CRM-20418) Not able to
select Tokens from dropdown on Message Template
([10336](https://github.com/civicrm/civicrm-core/pull/10336))**
- **[CRM-20508](https://issues.civicrm.org/jira/browse/CRM-20508) Unable to use
non-roman characters in Custom fields
([10335](https://github.com/civicrm/civicrm-core/pull/10335) and
[10328](https://github.com/civicrm/civicrm-core/pull/10328))**
This fixes a bug where a field named entirely with non-ASCII characters caused
CiviCRM to assert that it already exists.
- **[CRM-20662](https://issues.civicrm.org/jira/browse/CRM-20662) SMS Domain ID
upgrade step breaks on multisite
([10444](https://github.com/civicrm/civicrm-core/pull/10444))**
This fixes an upgrade step to add `domain_id` on `civicrm_sms_provider` that
breaks in 4.7.19 when running on multisite. There was a problem with the
check to ensure that it only runs a part of the script when a site has a
single domain.
- **[CRM-20550](https://issues.civicrm.org/jira/browse/CRM-20550) navigation
menu added by extension never appears
([10326](https://github.com/civicrm/civicrm-core/pull/10326))**
When adding a navigation menu item via an extension that omits the navID and
parentID, the menu item would never show up.
- **[CRM-20517](https://issues.civicrm.org/jira/browse/CRM-20517) Submitting a
Profile results in a "Contact Sub Type does not match" error when the contact
subtype of an existing contact does not match the Profile subtype
([10302](https://github.com/civicrm/civicrm-core/pull/10302))**
- **[CRM-20494](https://issues.civicrm.org/jira/browse/CRM-20494) Import contact
with two similar external ids results into fatal error, should be skipped.
([10276](https://github.com/civicrm/civicrm-core/pull/10276))**
If an import file has two rows with the same value for External Identifier,
the affected rows are now skipped. This fixes the previous behavior which
would present a fatal error interrupting the whole import process.
- **NFC Add in function to check if Foreign key is there to make upgrade …
([10312](https://github.com/civicrm/civicrm-core/pull/10312))**
Upgrades now have the ability to check if a foreign key exists before
attempting to alter it. Some upgrade steps now check this first.
- **[CRM-20452](https://issues.civicrm.org/jira/browse/CRM-20452) Fatal Error on
saving Organisation Info when geocoding is enabled
([10192](https://github.com/civicrm/civicrm-core/pull/10192))**
This resolves a bug where contacts without a State/Province have the value
"null" passed to the geocoder, resulting in an error.
- **[CRM-20308](https://issues.civicrm.org/jira/browse/CRM-20308) Activity copy
is always sent FROM logged in user's email ID
([10257](https://github.com/civicrm/civicrm-core/pull/10257) and
[10213](https://github.com/civicrm/civicrm-core/pull/10213))**
When sending an activity assignee notification, the From email address will be
determined with the following priority order:
1. the email address of the source contact of the activity
2. the default from email address for the domain
3. the email address of the logged-in user
Previously, the email address of the logged-in user was always used.
- **[CRM-20441](https://issues.civicrm.org/jira/browse/CRM-20441) Fatal error on
contact summary for ACL'd user (from activity tab count)
([10251](https://github.com/civicrm/civicrm-core/pull/10251))**
This resolves a fatal error that would occur for users lacking the "View all
contacts" permission when they would view the contact summary of a contact
they had permission to view.
- **[CRM-19986](https://issues.civicrm.org/jira/browse/CRM-19986) Schema has
differences when upgraded to when install in civicrm_action_schedule
([9809](https://github.com/civicrm/civicrm-core/pull/9809))**
- **[CRM-20450](https://issues.civicrm.org/jira/browse/CRM-20450) Fix invoice
math for partial payments
([10224](https://github.com/civicrm/civicrm-core/pull/10224)) (adds test for
previously completed work)**
- **Fixed minor template errors.
([10221](https://github.com/civicrm/civicrm-core/pull/10221))**
Two templates had invalid HTML.
- **Address fatal errors on PHP7.1 - only vars can be passed by reference.
([10217](https://github.com/civicrm/civicrm-core/pull/10217))**
- **[CRM-20463](https://issues.civicrm.org/jira/browse/CRM-20463) Documentation
links with "current" in them are broken
([10209](https://github.com/civicrm/civicrm-core/pull/10209))**
- **[CRM-20532](https://issues.civicrm.org/jira/browse/CRM-20532) Extension.Get
API action filtering is broken
([10322](https://github.com/civicrm/civicrm-core/pull/10322))**
The Extension.get API no longer ignores filters and result limits.
- **[CRM-19876](https://issues.civicrm.org/jira/browse/CRM-19876) Civi won't
send simple mails to all email recpients if some hold multiple addresses
([10321](https://github.com/civicrm/civicrm-core/pull/10321)) (preliminary
work)**
- **[CRM-19821](https://issues.civicrm.org/jira/browse/CRM-19821) Remove
performance degrading joins from activity search (& api calls)
([10273](https://github.com/civicrm/civicrm-core/pull/10273)) (preliminary
work)**
- **[CRM-20623](https://issues.civicrm.org/jira/browse/CRM-20623) Add Column
function in Upgrade Base does not properly rebuild multilingual views
([10399](https://github.com/civicrm/civicrm-core/pull/10399))**
### CiviCase
- **[CRM-20478](Case Type "Reference" Field Not Working) Case Type "Reference"
Field Not Working
([10281](https://github.com/civicrm/civicrm-core/pull/10281))**
This resolves a bug where the reference activity drop-downs were empty when
editing a timeline for a case type. It also fixes the screen to use localized
activity type labels rather than the fixed-value names.
- **[CRM-20171](https://issues.civicrm.org/jira/browse/CRM-20171) Problem with
xml file not loaded
([10264](https://github.com/civicrm/civicrm-core/pull/10264))**
This resolves PHP warnings that would display if CiviCase failed to load an
XML file.
### CiviContribute
- **[CRM-20576](https://issues.civicrm.org/jira/browse/CRM-20576) Increase
length of civicrm_batch.title
([10359](https://github.com/civicrm/civicrm-core/pull/10359))**
The `title` field on the `civicrm_batch` table now supports 255 characters,
resolving a bug where the system throws a fatal error when the batch name is
more than 64 characters.
- **[CRM-20560](https://issues.civicrm.org/jira/browse/CRM-20560) Deferred
Revenue report bug
([10338](https://github.com/civicrm/civicrm-core/pull/10338))**
The deferred revenue report would behave inconsistently when line items'
financial types differed from the contribution's financial type.
- **[CRM-20555](https://issues.civicrm.org/jira/browse/CRM-20555) Incorrect
balance amount is shown on participant view page if 'Deferred Revenue' is
enabled ([10204](https://github.com/civicrm/civicrm-core/pull/10204))**
Fixes this bug and implements CRM-20037 above.
- **[CRM-20260](https://issues.civicrm.org/jira/browse/CRM-20260) Incorrect
information is stored in civicrm_financial_item table
([9984](https://github.com/civicrm/civicrm-core/pull/9984))**
This fixes an error in line item data caused when sales tax is enabled.
- **[CRM-20276](https://issues.civicrm.org/jira/browse/CRM-20276) When editing a
contribution the value in civicrm_financial_item_amount is not updated
([10235](https://github.com/civicrm/civicrm-core/pull/10235))**
- **[CRM-20564](https://issues.civicrm.org/jira/browse/CRM-20564) custom date
fields in on-behalf-of forms broken
([10372](https://github.com/civicrm/civicrm-core/pull/10372))**
- **[CRM-20566](https://issues.civicrm.org/jira/browse/CRM-20566) Fatal error on
submit of 'Edit Contribution'
([10343](https://github.com/civicrm/civicrm-core/pull/10343))**
- **[CRM-20392](https://issues.civicrm.org/jira/browse/CRM-20392) Credit card
payment not recorded when contribution is partially paid
([10285](https://github.com/civicrm/civicrm-core/pull/10285) and
[10271](https://github.com/civicrm/civicrm-core/pull/10271))**
- **[CRM-20558](https://issues.civicrm.org/jira/browse/CRM-20558) CiviReport:
Contribution Summary - groupBy split personality issue
([10339](https://github.com/civicrm/civicrm-core/pull/10339))**
This resolves inconsistent treatment of the variable listing the `GROUP BY`
columns on the Contribution Summary report.
- **[CRM-20036](https://issues.civicrm.org/jira/browse/CRM-20036) Memory problem
when updating a contribution without soft contributions
([10260](https://github.com/civicrm/civicrm-core/pull/10260))**
Sites with many soft credits would run out of memory after a user edited a
contribution without any soft credits.
- **[CRM-20526](https://issues.civicrm.org/jira/browse/CRM-20526) recent item
generated from contribution view doesn't include currency
([10307](https://github.com/civicrm/civicrm-core/pull/10307))**
Contribution amounts displayed in the recent items now display the appropriate
currency rather than the site's default.
- **[CRM-20527](https://issues.civicrm.org/jira/browse/CRM-20527) batch data
entry does not retain currency
([10310](https://github.com/civicrm/civicrm-core/pull/10310))**
When batch editing contributions with a profile including the currency field,
the currency value now displays the existing value for the contribution's
currency rather than the site's default currency.
- **[CRM-20513](https://issues.civicrm.org/jira/browse/CRM-20513) Fix bugs on
updating recurring contribution from CRM-17655
([10294](https://github.com/civicrm/civicrm-core/pull/10294))**
When updating a recurring contribution, the next scheduled contribution date
is now updated according to the contribution's receive date rather than the
current date. This also resolves a bug in selecting the Completed status on
the recurring contribution record if all payments are received.
- **[CRM-20297](https://issues.civicrm.org/jira/browse/CRM-20297) Fatal error
viewing a contribution having a line item with no price field
([10012](https://github.com/civicrm/civicrm-core/pull/10012))**
- **[CRM-20472](https://issues.civicrm.org/jira/browse/CRM-20472) Soft credit
"contact" field validation errors do not display
([10233](https://github.com/civicrm/civicrm-core/pull/10233))**
This fixes a bug where validation errors on soft credit fields would not
highlight the offending field or display the validation problem message.
- **[CRM-19697](https://issues.civicrm.org/jira/browse/CRM-19697) Incorrect
update billing details link
([9471](https://github.com/civicrm/civicrm-core/pull/9471))**
This resolves a problem in listings of recurring contributions where some
recurring contributions would display a link to edit the billing details if
another recurring contribution's payment processor allowed it, even if the
contributions' processors did not allow it.
### CiviEvent
- **[CRM-20604](https://issues.civicrm.org/jira/browse/CRM-20604) Registering
additional event participants causes fatal error
([10468](https://github.com/civicrm/civicrm-core/pull/10468))**
- **[CRM-20581](https://issues.civicrm.org/jira/browse/CRM-20581) Civi event
users do not have access to StateProvince entity via the API
([10459](https://github.com/civicrm/civicrm-core/pull/10459))**
- **[CRM-20559](https://issues.civicrm.org/jira/browse/CRM-20559) Revenue
account is Deferred revenue rather than Revenue.
([10337](https://github.com/civicrm/civicrm-core/pull/10337))**
This resolves a bug where event registrations recorded after the event would
have deferred revenue recorded nonetheless.
- **[CRM-20518](https://issues.civicrm.org/jira/browse/CRM-20518) Default
participant status not set when status name not matches localized string
'Registered' ([10297](https://github.com/civicrm/civicrm-core/pull/10297))**
If using CiviCRM in a language other than English, the participant status
would fail to find the default value, looking a status with the translated
value of "Registered" rather than "Registered" itself.
- **[CRM-20549](https://issues.civicrm.org/jira/browse/CRM-20549) manage events
does not list all events
([10325](https://github.com/civicrm/civicrm-core/pull/10325))**
The default API limit of 25 results was artificially limiting the number of
visible events on the Manage Events page.
- **[CRM-20461](https://issues.civicrm.org/jira/browse/CRM-20461) post hook not
invoked after updating status for additional participants
([10208](https://github.com/civicrm/civicrm-core/pull/10208))**
- **[CRM-20419](https://issues.civicrm.org/jira/browse/CRM-20419) Profile
selector broken on event registration (some version/CMS/browser combos)
([10331](https://github.com/civicrm/civicrm-core/pull/10331) and
[10152](https://github.com/civicrm/civicrm-core/pull/10152))**
This avoids the use of the `jQuery.isEmptyObject()` method on anything but a
plain Javascript object. Inconsistent behavior among CMSes led many Joomla
users to be unable to select profiles to include in event registration forms.
- **[CRM-20469](https://issues.civicrm.org/jira/browse/CRM-20469) Currency not
set correctly in ajax call from event form
([10230](https://github.com/civicrm/civicrm-core/pull/10230))**
- **[CRM-20396](https://issues.civicrm.org/jira/browse/CRM-20396) Event
participation payments not correctly recorded in financial_trxn table
(frontend) ([10124](https://github.com/civicrm/civicrm-core/pull/10124))**
This corrects an error in recording the payment processor for event
participant contributions.
### CiviMail
- **[CRM-20431](https://issues.civicrm.org/jira/browse/CRM-20431) Unsubscribe
Page shows wrong group names
([10165](https://github.com/civicrm/civicrm-core/pull/10165))**
When using a past mailing's recipients, the recipient group(s) displayed
should match those of the past mailing.
- **[CRM-17754](https://issues.civicrm.org/jira/browse/CRM-17754) Include resent
headers into civi bulk mail reply function
([7499](https://github.com/civicrm/civicrm-core/pull/7499))**
Forwarded reply messages now have the appropriate headers to indicate that the
server is resending a message from another sender.
### CiviMember
- **[CRM-20546](https://issues.civicrm.org/jira/browse/CRM-20546) Purchasing a
Membership online results in 5 Activities, 2 x Contribution ones, plus Renewal
and Signup and Status change
([10324](https://github.com/civicrm/civicrm-core/pull/10324))**
- **[CRM-18177](https://issues.civicrm.org/jira/browse/CRM-18177) When Renewing
an existing membership, if CC details are incorrect, Membership is set to
Cancelled preventing contact from trying again
([10173](https://github.com/civicrm/civicrm-core/pull/10173))**
- **[CRM-20172](https://issues.civicrm.org/jira/browse/CRM-20172) "Separate
Membership Payment" with Memberships enabled and additional contribution
causes incorrect authorize.net transactions
([10167](https://github.com/civicrm/civicrm-core/pull/10167))**
- **[CRM-20530](https://issues.civicrm.org/jira/browse/CRM-20530) Bookkeeping
transaction report fails at acct credit filter
([10313](https://github.com/civicrm/civicrm-core/pull/10313) and
[10311](https://github.com/civicrm/civicrm-core/pull/10311))**
### WordPress Integration
- **[CRM-18799](https://issues.civicrm.org/jira/browse/CRM-18799) WordPress
requires exec() command not be disabled
([108](https://github.com/civicrm/civicrm-wordpress/pull/108))**
Code to find the present working directory used the `exec()` command, which is
sometimes blocked for security reasons.
## <a name="misc"></a>Miscellany
- **[CRM-20238](https://issues.civicrm.org/jira/browse/CRM-20238) Hook for
inbound SMS messages
([10353](https://github.com/civicrm/civicrm-core/pull/10353)) (preliminary
work)**
Inbound SMS processing now has unit test coverage.
- **[CRM-20570](https://issues.civicrm.org/jira/browse/CRM-20570) Add unit test
for disabling of PCP
([10350](https://github.com/civicrm/civicrm-core/pull/10350))**
Disabling personal campaign pages now has unit test coverage.
- **[CRM-20474](https://issues.civicrm.org/jira/browse/CRM-20474) Refactor
UFField api to follow standard api / BAO format
([10269](https://github.com/civicrm/civicrm-core/pull/10269),
[10236](https://github.com/civicrm/civicrm-core/pull/10236), and
[10244](https://github.com/civicrm/civicrm-core/pull/10244))**
The formerly non-standard API for connecting fields to CiviCRM profiles now
works in a more standard way.
- **[CRM-20424](https://issues.civicrm.org/jira/browse/CRM-20424) Set up method
for marking code as deprecated
([10259](https://github.com/civicrm/civicrm-core/pull/10259) and
[10202](https://github.com/civicrm/civicrm-core/pull/10202))**
Tests will now fail if a deprecated functions are called.
- **[CRM-20312](https://issues.civicrm.org/jira/browse/CRM-20312) Identify and
fix missing indexes
([10241](https://github.com/civicrm/civicrm-core/pull/10241)) (follow-up)**
A typographic error is fixed.
- **[CRM-20428](https://issues.civicrm.org/jira/browse/CRM-20428) Refactor
CRM_Utils_File sourceSQLFile
([10216](https://github.com/civicrm/civicrm-core/pull/10216))**
- **[CRM-20435](https://issues.civicrm.org/jira/browse/CRM-20435) Don't use SQL
in CRM_Activity_BAO_Activity::create() where DAO will suffice
([10168](https://github.com/civicrm/civicrm-core/pull/10168))**
- **[CRM-20459](https://issues.civicrm.org/jira/browse/CRM-20459) Actively
deprecate CRM_Core_OptionGroup::getValue
([10200](https://github.com/civicrm/civicrm-core/pull/10200),
[10201](https://github.com/civicrm/civicrm-core/pull/10201), and
[10203](https://github.com/civicrm/civicrm-core/pull/10203))**
- **[CRM-20537](https://issues.civicrm.org/jira/browse/CRM-20537) Case Contact
Index should be unique
([10318](https://github.com/civicrm/civicrm-core/pull/10318))**
- **[CRM-19246](https://issues.civicrm.org/jira/browse/CRM-19246) Add testing
for use of ACLs in group
([10284](https://github.com/civicrm/civicrm-core/pull/10284))**
- **[CRM-20573](https://issues.civicrm.org/jira/browse/CRM-20573) User
deprecated function: Deprecated function on View Participant form
([10356](https://github.com/civicrm/civicrm-core/pull/10356))**
Removes use of deprecated `CRM_Core_OptionGroup::getValue()` method on View
Participant form.
- **Add me to contributor-key.yml
([10342](https://github.com/civicrm/civicrm-core/pull/10342))**
- **Add Karen Stevenson to contributor-key.yml
([10345](https://github.com/civicrm/civicrm-core/pull/10345))**
- **NFC remove some unused variables.
([10314](https://github.com/civicrm/civicrm-core/pull/10314))**
- **[CRM-20515](https://issues.civicrm.org/jira/browse/CRM-20515) notice errors
on dmaster for add petition
([10296](https://github.com/civicrm/civicrm-core/pull/10296))**
Removes use of deprecated `CRM_Core_OptionGroup::getValue()` method on the
Petition creation and editing form.
- **Up the deprecation on old hook
([10292](https://github.com/civicrm/civicrm-core/pull/10292))**
If extensions invoke the deprecated `CRM_Utils_Hook::alterMail()` hook, a log
entry is created explaining that it is deprecated.
- **Fix test cleanup to turn tax & invoicing off after the test.
([10286](https://github.com/civicrm/civicrm-core/pull/10286))**
- **Fix merge conflict
([10268](https://github.com/civicrm/civicrm-core/pull/10268))**
- **Remove unused var. emailActivityTypeIDs is retrieved twice, statusTitle
never used ([10263](https://github.com/civicrm/civicrm-core/pull/10263))**
- **Minor code tidy ups.
([10226](https://github.com/civicrm/civicrm-core/pull/10226))**
- **[CRM-20453](https://issues.civicrm.org/jira/browse/CRM-20453) Fix
inconsistencies in XML schema definitions
([10195](https://github.com/civicrm/civicrm-core/pull/10195))**
- **typo in error message
([181](https://github.com/civicrm/civicrm-packages/pull/181))**
- **[CRM-19643](https://issues.civicrm.org/jira/browse/CRM-19643) Remove unused
reference to "selectedSearchContactIds"
([10272](https://github.com/civicrm/civicrm-core/pull/10272))**
- **[CRM-16460](https://issues.civicrm.org/jira/browse/CRM-16460) PayPal
Standard needs two digits of cents
([10287](https://github.com/civicrm/civicrm-core/pull/10287)) (non-functional
comments only)**
## <a name="credits"></a>Credits
This release was developed by the following code authors:
AGH Strategies - Andrew Hunt; Australian Greens - Seamus Lee; Blackfly Solutions -
Alan Dixon; British Humanist Association - Andrew West; CiviCRM - Coleman Watts,
Tim Otten; CiviDesk - Yashodha Chaku; CiviFirst - John Kirk; Coop SymbioTIC -
Mathieu Lutfy; Francesc Bassas i Bullich; Fuzion - Chris Burgess, Eileen
McNaughton, Jitendra Purohit; Ginkgo Street Labs - Frank Gómez; Greenleaf
Advancement - Karen Stevenson; JMA Consulting - Monish Deb, Pradeep Nayak;
Joinery - Allen Shaw; Jon Goldberg; Lemniscus - Noah Miller; Lighthouse Design
and Consulting - Brian Shaughnessy; Michael Hurwicz; Neuwald Tecnologia da
Informação - Arthur Almeida; Progressive Technology Project - Jamie McClelland;
Saurabh Batra; Sean Madsen; Squiffle Consulting - Aidan Saunders; Tadpole
Collective - Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
Agileware - Agileware Team; Alcohol Justice - Bruce Wolfe; Andrew
Cormick-Dockery; Anthony Borrow; BackOffice Thinking - Dave Schafer; Botanical
Society of America - Rob Brandt; Cath O'Connell; Circle Interactive - Dave
Jenkins; CivicActions - Fen Labalme; CiviCoop - Erik Hommel; CompuCorp -
Guanhuan Chen; Coop SymbioTIC - Samuel Vanhove; Dave Greenberg; Debre-Genet Holy
Trinity Ethiopian Orthodox Tewahedo Church - Milli Aje; DevMate - Adam
Kwiatkowski; DignityUSA - Logan Bear; Effy Elden; Electronic Frontier Foundation -
Mark Burdett; Ergon Logic Enterprises - Christopher Gervais; Emanuele Santanchè;
Fuzion - Peter Davis; JMA Consulting - Edsel Lopez, Joe Murray; Joanne Chester;
Johan Vervloet; John Kingsnorth; Kevin Reynen; Kompetenzzentrum
Technik-Diversity-Chancengleichheit - Niels Heinemann; Korlon - Stuart Gaston;
Marc Brazeau; Mathieu; MC3 - Graham Mitchell; MJW Consulting - Matthew Wire;
Nathan Brettell; Rareș Pamfil; Redfin Solutions - Chris Wells, Patrick Corbett;
Registered Nurses' Association of Ontario - Thomas Mannell; Richard van
Oosterhout; Semper IT - Karin Gerritsen; Serge Lachapelle; Third Sector Design -
Michael McAndrew; Third Sun - Troy Mumm; Thomas Bacon; Web Access - Kurund Jalmi

View file

@ -0,0 +1,519 @@
# CiviCRM 4.7.21
Released July 5, 2017
- **[Security advisories](#security)**
- **[Features](#features)**
- **[Bugs resolved](#bugs)**
- **[Miscellany](#misc)**
- **[Credits](#credits)**
## <a name="security"></a>Security advisories
- **[CIVI-SA-2017-01](https://civicrm.org/advisory/civi-sa-2017-01-pingback-url-not-encrypted)** Pingback URL not encrypted
- **[CIVI-SA-2017-02](https://civicrm.org/advisory/civi-sa-2017-02-privilage-escalation-via-leaked-key)** Privilage escalation via leaked key
- **[CIVI-SA-2017-03](https://civicrm.org/advisory/civi-sa-2017-03-cross-site-scritping-in-the-recently-viewed-block)** Cross-site scripting in "Recently Viewed" block
- **[CIVI-SA-2017-04](https://civicrm.org/advisory/civi-sa-2017-04-incorrect-escaping-for-on-behalf-of-block)** Incorrect escaping for "On Behalf Of" block
- **[CIVI-SA-2017-05](https://civicrm.org/advisory/civi-sa-2017-05-incorrect-escaping-for-search-results-column)** Incorrect escaping for "Search Results" column
- **[CIVI-SA-2017-06](https://civicrm.org/advisory/civi-sa-2017-06-incorrect-escaping-in-drupal-views-integration)** Incorrect escaping in Drupal Views integration
- **[CIVI-SA-2017-07](https://civicrm.org/advisory/civi-sa-2017-07-insuffient-permission-check-in-mailing-report)** Insuffient permission-check in mailing report
- **[CIVI-SA-2017-08](https://civicrm.org/advisory/civi-sa-2017-08-upgrade-multiple-js-libraries)** Upgrade multiple JS libraries
## <a name="features"></a>Features
### Core CiviCRM
- **[CRM-18081](https://issues.civicrm.org/jira/browse/CRM-18081) Allow search
of active relationships during a custom range of dates
([10333](https://github.com/civicrm/civicrm-core/pull/10333))**
It is now possible to filter on the active dates of a relationship in Advanced
Search and the Relationship Report. If relationship start and end dates are
filled accurately, this allows finding active relationships at a specified
point in time.
- **[CRM-20692](https://issues.civicrm.org/jira/browse/CRM-20692) Support jQuery
options in AngularJS `crm-ui-tab-set`
([10477](https://github.com/civicrm/civicrm-core/pull/10477))**
jQuery UI supports various tab set options. This change allows for the
options to be passed through from `crm-ui-tab-set` `<div>` elements in
AngularJS.
- **[CRM-20680](https://issues.civicrm.org/jira/browse/CRM-20680) Make the
CiviCRM logo spin while waiting for next page to load
([10465](https://github.com/civicrm/civicrm-core/pull/10465))**
The spinning logo in the navigation menu provides visual indication that a new
page is loading.
- **[CRM-20679](https://issues.civicrm.org/jira/browse/CRM-20679) Make the
CiviCRM logo spin while quicksearch is running
([10464](https://github.com/civicrm/civicrm-core/pull/10464))**
This provides confirmation that the search is running.
- **[CRM-20715](https://issues.civicrm.org/jira/browse/CRM-20715) Add index on
`is_deceased` column in `civicrm_contact`
([10489](https://github.com/civicrm/civicrm-core/pull/10489))**
Queries filtering deceased contacts will have improved performance now that the `is_deceased` field is indexed.
- **[CRM-20552](https://issues.civicrm.org/jira/browse/CRM-20552) Task for "Add
Relationship - to individual" is missing
([10360](https://github.com/civicrm/civicrm-core/pull/10360)) (completes prior
work)**
The various search result actions for adding relationships based on different
contact types are now abstracted to a single class.
- **[CRM-20684](https://issues.civicrm.org/jira/browse/CRM-20684) Standalone
form for contact bulk actions
([10471](https://github.com/civicrm/civicrm-core/pull/10471))**
A number of search result actions for contacts can now be accessed directly
from their own URLs rather than solely from search results.
- **[CRM-20594](https://issues.civicrm.org/jira/browse/CRM-20594) Optimze
Relationship Count on Contact Summary View
([10371](https://github.com/civicrm/civicrm-core/pull/10371))**
The relationship count for a contact is now calculated by using the `COUNT()`
SQL function rather than counting the number of rows in the query result.
- **[CRM-20238](https://issues.civicrm.org/jira/browse/CRM-20238) Hook for
inbound SMS messages
([10347](https://github.com/civicrm/civicrm-core/pull/10347))**
See
[hook_civicrm_inboundSMS](https://docs.civicrm.org/dev/en/latest/hooks/hook_civicrm_inboundSMS/)
- **[CRM-20575](https://issues.civicrm.org/jira/browse/CRM-20575) Allow user to
set created_id field for batch
([10358](https://github.com/civicrm/civicrm-core/pull/10358))**
If custom code modifies the batch creation form, it can specify the contact ID
creating the batch.
- **[CRM-20091](https://issues.civicrm.org/jira/browse/CRM-20091) Case custom
fields blocks ([10540](https://github.com/civicrm/civicrm-core/pull/10540),
[10482](https://github.com/civicrm/civicrm-core/pull/10482), and
[10460](https://github.com/civicrm/civicrm-core/pull/10460)) (tangential work)**
A new CustomValue.getTree API action retrieves the labels and values for all
of an entity's custom fields, given the entity's type and ID.y54
- **[CRM-20600](https://issues.civicrm.org/jira/browse/CRM-20600) Expose
AngularJS screens to hooks
([10085](https://github.com/civicrm/civicrm-core/pull/10085) and
[10381](https://github.com/civicrm/civicrm-core/pull/10381))**
HTML partials in AngularJS can now be modified using
`hook_civicrm_alterAngular`. In addition, manipulated and compiled HTML is
now cached in the files directory.
- **Surface errors from API calls to user on status page.
([10380](https://github.com/civicrm/civicrm-core/pull/10380))**
API debug information in status checks now appear with the resulting message.
### CiviCase
- **[CRM-20475](https://issues.civicrm.org/jira/browse/CRM-20475) People
involved tab ([10438](https://github.com/civicrm/civicrm-core/pull/10438))**
The phone number for related contacts is now avaiable in the API.
- **[CRM-20097](https://issues.civicrm.org/jira/browse/CRM-20097) Case action
menu ([10288](https://github.com/civicrm/civicrm-core/pull/10288)) (unrelated
fixes)**
The Case API now has better handling for activities with multiple related
cases.
### CiviMail
- **[CRM-20309](https://issues.civicrm.org/jira/browse/CRM-20309) Ensure A/B
tests can be sent in parallel
([10227](https://github.com/civicrm/civicrm-core/pull/10227))**
This change improves A/B testing where the test group is larger than the
mailer job size. In these cases, each mailer job is scheduled one second
after the prior one, ensuring that the first *A* job is followed by the first
*B* job, then the next *A* job, and so on.
- **[CRM-20370](https://issues.civicrm.org/jira/browse/CRM-20370) include
additional stats in mailing opened/click reports
([10089](https://github.com/civicrm/civicrm-core/pull/10089))**
Open date and click date are now available as CiviMail reports.
### Drupal Integration
- **[CRM-20462](https://issues.civicrm.org/jira/browse/CRM-20462) Add filter for
current employer in views
([443](https://github.com/civicrm/civicrm-drupal/pull/443))**
This feature is now available in Drupal 6.x for CiviCRM 4.7.x. It was
previously added for other Drupal-CiviCRM version combinations.
- **[CRM-20205](https://issues.civicrm.org/jira/browse/CRM-20205) Expose current
employer id to views
([434](https://github.com/civicrm/civicrm-drupal/pull/434) and
[433](https://github.com/civicrm/civicrm-drupal/pull/433))**
The current employer ID is now available as a display, contextual filter,
filter, and sort field in Views.
### Joomla Integration
- **[CRM-12059](https://issues.civicrm.org/jira/browse/CRM-12059) Support
hook_civicrm_permissions on Joomla
([10344](https://github.com/civicrm/civicrm-core/pull/10344) and
[43](https://github.com/civicrm/civicrm-joomla/pull/43))**
CiviCRM permissions in Joomla can now be defined dynamically, allowing
extensions using `hook_civicrm_permissions` to work properly
## <a name="bugs"></a>Bugs resolved
### Core CiviCRM
- **[CRM-20642](https://issues.civicrm.org/jira/browse/CRM-20642) Show/Hide Case
activity toggle
([10451](https://github.com/civicrm/civicrm-core/pull/10451)) (preliminary
work)**
This fixes a bug in the Activity.get API where filtering on null case, tag, or
file ID would yield inconsistent results.
- **[CRM-20590](https://issues.civicrm.org/jira/browse/CRM-20590) Add pre and
post hook for EntityBatch
([10366](https://github.com/civicrm/civicrm-core/pull/10366))**
- **[CRM-20588](https://issues.civicrm.org/jira/browse/CRM-20588) Pre and Post
hook for Batch ([10364](https://github.com/civicrm/civicrm-core/pull/10364))**
- **[CRM-20585](https://issues.civicrm.org/jira/browse/CRM-20585) Correct the
from and to accounts for deferred revenue transactions
([10367](https://github.com/civicrm/civicrm-core/pull/10367))**
The from and to accounts for deferred revenue transactions were reversed. This
change corrects them moving forward, but it does not affect previously-created
transactions.
- **[CRM-20768](https://issues.civicrm.org/jira/browse/CRM-20768) Web-based
installation should accept non-standard MySQL port
([10555](https://github.com/civicrm/civicrm-core/pull/10555))**
- **[CRM-20644](https://issues.civicrm.org/jira/browse/CRM-20644) Column names
on Advanced search results displayed on contacts are out of order.
([10556](https://github.com/civicrm/civicrm-core/pull/10556))**
- **[CRM-18408](https://issues.civicrm.org/jira/browse/CRM-18408) SMTP
connection via SSL and TLS in PHP 5.6
([10329](https://github.com/civicrm/civicrm-core/pull/10329)) (preliminary
work)**
This loads a more recent build of `cacert.pem` for use on hosts which lack one.
- **[CRM-20556](https://issues.civicrm.org/jira/browse/CRM-20556) DataTables
warning on merge screen
([10503](https://github.com/civicrm/civicrm-core/pull/10503))**
This resolves a warning appearing on the duplicate contact merge listing
indicating that it could not reinitialize DataTable.
- **[CRM-20672](https://issues.civicrm.org/jira/browse/CRM-20672) Related Fields
don't populate for relationships with contact type "All Contacts" when mapping
an export ([10456](https://github.com/civicrm/civicrm-core/pull/10456))**
- **[CRM-20226](https://issues.civicrm.org/jira/browse/CRM-20226) Parent Group
do not inherit child group contacts
([10428](https://github.com/civicrm/civicrm-core/pull/10428))**
A bug was fixed where members of smart groups would not appear as members of
parent groups of the smart group.
- **[CRM-20381](https://issues.civicrm.org/jira/browse/CRM-20381) Can't stop
geocoding on import
([10181](https://github.com/civicrm/civicrm-core/pull/10181))**
This fixes a regression where imported contacts' addresses were geocoded
despite bypassing geocoding in the import settings.
- **[CRM-20655](https://issues.civicrm.org/jira/browse/CRM-20655) Notice error
on batch listing
([10436](https://github.com/civicrm/civicrm-core/pull/10436))**
- **Add help text to civicrm.settings.php re: DSNs containing quotes/backslashes
([10437](https://github.com/civicrm/civicrm-core/pull/10437))**
- **[CRM-20618](https://issues.civicrm.org/jira/browse/CRM-20618) Generate
contact image if contact id is present
([10396](https://github.com/civicrm/civicrm-core/pull/10396))**
This prevents a contact image from being generated for a transaction unless
the transaction is actually related to a contact.
- **[CRM-20606](https://issues.civicrm.org/jira/browse/CRM-20606) Incorrect
state/province names for Austria
([10391](https://github.com/civicrm/civicrm-core/pull/10391))**
Two states of Austria were missing umlauts.
- **[CRM-20589](https://issues.civicrm.org/jira/browse/CRM-20589) Warning on
Batch listing page
([10365](https://github.com/civicrm/civicrm-core/pull/10365))**
- **Remove call to nonexistent method
([10382](https://github.com/civicrm/civicrm-core/pull/10382))**
A failure in Redis caching would call a nonexistent cache method.
- **[CRM-20578](https://issues.civicrm.org/jira/browse/CRM-20578) Empty update
of Activity assignee/target results into DB error
([10361](https://github.com/civicrm/civicrm-core/pull/10361))**
- **[CRM-19896](https://issues.civicrm.org/jira/browse/CRM-19896)
customTranslateFunction not mapped in MagicMerge
([9790](https://github.com/civicrm/civicrm-core/pull/9790))**
- **[CRM-20740](https://issues.civicrm.org/jira/browse/CRM-20740) Api fails to
check on custom field is null in some cases
([10512](https://github.com/civicrm/civicrm-core/pull/10512))**
- **[CRM-19610](https://issues.civicrm.org/jira/browse/CRM-19610) Fatal when
creating InnoDB fts indexes
([10453](https://github.com/civicrm/civicrm-core/pull/10453) and
[10491](https://github.com/civicrm/civicrm-core/pull/10491))**
- **[CRM-20581](https://issues.civicrm.org/jira/browse/CRM-20581) Civi event
users do not have access to StateProvince entity via the API
([10363](https://github.com/civicrm/civicrm-core/pull/10363))**
All contacts with "Access CiviCRM" permission now can access all states and
provinces.
### CiviContribute
- **[CRM-20253](https://issues.civicrm.org/jira/browse/CRM-20253) backend
contribution receipt sent when option not selected
([10502](https://github.com/civicrm/civicrm-core/pull/10502),
[10509](https://github.com/civicrm/civicrm-core/pull/10509),
[10508](https://github.com/civicrm/civicrm-core/pull/10508), and
[10506](https://github.com/civicrm/civicrm-core/pull/10506))**
- **[CRM-20718](https://issues.civicrm.org/jira/browse/CRM-20718) CiviCRM,
Contribution page, when using the "On behalf of" Organisation Profile,
fieldset title uses hardcoded "Organization Details"
([10499](https://github.com/civicrm/civicrm-core/pull/10499))**
The on-behalf profile now uses the profile's name rather than "Organization
Details".
- **[CRM-20690](https://issues.civicrm.org/jira/browse/CRM-20690) No more than
25 Price Options listed
([10476](https://github.com/civicrm/civicrm-core/pull/10476))**
This displays all options on a price field rather than the first 25.
- **[CRM-20706](https://issues.civicrm.org/jira/browse/CRM-20706) Notice error
on using Contribution.getfield API
([10484](https://github.com/civicrm/civicrm-core/pull/10484))**
- **[CRM-20574](https://issues.civicrm.org/jira/browse/CRM-20574) Deprecated:
Group=''. Name='cvv_backoffice_required'.
([10357](https://github.com/civicrm/civicrm-core/pull/10357))**
- **[CRM-20516](https://issues.civicrm.org/jira/browse/CRM-20516) Card type
widget appears on front end when a different processor selected
([10375](https://github.com/civicrm/civicrm-core/pull/10375))**
- **[CRM-20564](https://issues.civicrm.org/jira/browse/CRM-20564) custom date
fields in on-behalf-of forms broken
([10354](https://github.com/civicrm/civicrm-core/pull/10354))**
- **[CRM-20747](https://issues.civicrm.org/jira/browse/CRM-20747)
`{contribution.campaign}` token not working on Contribution ThankYou letter
([10575](https://github.com/civicrm/civicrm-core/pull/10575))**
- **[CRM-20678](https://issues.civicrm.org/jira/browse/CRM-20678)
Repeattransaction produces contribution in default currency - instead of the
series' currency
([10490](https://github.com/civicrm/civicrm-core/pull/10490))**
- **[CRM-19963](https://issues.civicrm.org/jira/browse/CRM-19963) Paypal Express
not working in German
([9779](https://github.com/civicrm/civicrm-core/pull/9779))**
Various conditions were conditional upon the locally-translated label of
PayPal rather than the fixed name.
### CiviEvent
- **[CRM-20611](https://issues.civicrm.org/jira/browse/CRM-20611) Cancelling a
line-item by changing fee selection of event, leads to incorrect financial
records ([10390](https://github.com/civicrm/civicrm-core/pull/10390))**
- **method cannot be a protected static
([10404](https://github.com/civicrm/civicrm-core/pull/10404))**
The method CRM_Event_Form_Registration_Register::getRegistrationContactID was
marked as protected, even though it was called from
CRM_Event_Form_Registration_AdditionalParticipant.
- **[CRM-20613](https://issues.civicrm.org/jira/browse/CRM-20613) User
deprecated function: Deprecated function for New Participant
([10392](https://github.com/civicrm/civicrm-core/pull/10392))**
This avoids notices when creating new participants from the backend.
- **[CRM-20562](https://issues.civicrm.org/jira/browse/CRM-20562) Wrong
Activities created during participant registration via completetransaction.
([10362](https://github.com/civicrm/civicrm-core/pull/10362))**
### CiviMail
- **[CRM-20694](https://issues.civicrm.org/jira/browse/CRM-20694) CiviMail
Report is missing Resubscribe Message
([10479](https://github.com/civicrm/civicrm-core/pull/10479))**
- **[CRM-20660](https://issues.civicrm.org/jira/browse/CRM-20660) Mail Summary
Report showing same number for Total Opens and Unique Opens
([10443](https://github.com/civicrm/civicrm-core/pull/10443))**
This resolves a problem where the Total Opens count was only querying
`DISTINCT` open results.
- **[CRM-20789](https://issues.civicrm.org/jira/browse/CRM-20789) Unsubscribing
from an AB test does not work in 4.7.21
([10583](https://github.com/civicrm/civicrm-core/pull/10583))**
### CiviMember
- **[CRM-20675](https://issues.civicrm.org/jira/browse/CRM-20675) Membership
status update creates renewal activity
([10598](https://github.com/civicrm/civicrm-core/pull/10598))**
### Backdrop Integration
- **[CRM-20612](https://issues.civicrm.org/jira/browse/CRM-20612) Error:
undefined function config() when installing on Backdrop
([10389](https://github.com/civicrm/civicrm-core/pull/10389))**
### Drupal Integration
- **[CRM-20698](https://issues.civicrm.org/jira/browse/CRM-20698) Make
"disabled" table rows appear greyed-out
([10481](https://github.com/civicrm/civicrm-core/pull/10481))**
CSS in the Seven theme conflicts with CiviCRM's CSS, preventing rows of
disabled records from having grey text.
- **Improve Views checkbox value handling
([448](https://github.com/civicrm/civicrm-drupal/pull/448) and
[449](https://github.com/civicrm/civicrm-drupal/pull/449))**
- **[CRM-19303](https://issues.civicrm.org/jira/browse/CRM-19303) CKEditor
configuration can't be edited on a Drupal multisite installation
([10577](https://github.com/civicrm/civicrm-core/pull/10577) and
[10511](https://github.com/civicrm/civicrm-core/pull/10511))**
## <a name="misc"></a>Miscellany
- **[CRM-20744](https://issues.civicrm.org/jira/browse/CRM-20744) Use
bower_compoents images for datatable rather than packages
([10520](https://github.com/civicrm/civicrm-core/pull/10520))**
- **[CRM-20561](https://issues.civicrm.org/jira/browse/CRM-20561) Load
Net_SMTP, Auth_SASL, Net_Socket via Composer
([10384](https://github.com/civicrm/civicrm-core/pull/10384),
[3](https://github.com/seamuslee001/civicrm-core/pull/3),
[4](https://github.com/seamuslee001/civicrm-core/pull/4),
[10385](https://github.com/civicrm/civicrm-core/pull/10385),
[185](https://github.com/civicrm/civicrm-packages/pull/185), and
[186](https://github.com/civicrm/civicrm-packages/pull/186))**
- **[CRM-20687](https://issues.civicrm.org/jira/browse/CRM-20687) Issue numbers
used as variables
([10473](https://github.com/civicrm/civicrm-core/pull/10473))**
- **(NFC) re add in animated-overlay.gif is no longer provided by jquery-ui
([10523](https://github.com/civicrm/civicrm-core/pull/10523))**
- **(NFC) Fix clearing messages to ensure test accuracy
([10525](https://github.com/civicrm/civicrm-core/pull/10525))**
- **(NFC) Attribution Chirojeugd Vlaanderen
([10519](https://github.com/civicrm/civicrm-core/pull/10519))**
- **[CRM-20620](https://issues.civicrm.org/jira/browse/CRM-20620) Use batch api
to retrieve all the batches
([10397](https://github.com/civicrm/civicrm-core/pull/10397))**
When retrieving the list of transaction batches, the BAO now uses the API
rather than a direct SQL query.
- **API allows creating multiple addresses same location type
([10510](https://github.com/civicrm/civicrm-core/pull/10510))**
This adds a test to confirm that two addresses with the same location type
*can* be added in APIv3, even though it is not the desired behavior in the
form layer or APIv4.
- **There's a better way to say it than "poor man's".
([10500](https://github.com/civicrm/civicrm-core/pull/10500))**
Various comments referring to a "poor man's" version of something have been
modified to be more specific. Many contain implicit references to the Drupal
module [poormanscron](https://www.drupal.org/project/poormanscron), which has
less to do with poverty or masculinity than checking periodically for the
duration since the previous run of a task.
- **[CRM-20651](https://issues.civicrm.org/jira/browse/CRM-20651) Change
partial_amount_pay to partial_amount_to_pay for Partial Payment workflow
([10433](https://github.com/civicrm/civicrm-core/pull/10433))**
- **(NFC) Civi\API\Kernel - Add more docblocks
([10416](https://github.com/civicrm/civicrm-core/pull/10416))**
- **Fix passing null object
([452](https://github.com/civicrm/civicrm-drupal/pull/452))**
- **Legacy function param cleanup
([30](https://github.com/civicrm/civicrm-backdrop/pull/30))**
## <a name="credits"></a>Credits
This release was developed by the following code authors:
Agileware - Agileware Team; Arkadiusz Rzadkowolski; Arun Singh; Australian
Greens - Seamus Lee; Blackfly Solutions - Alan Dixon; British Humanist
Association - Andrew West; Circle Interactive - Dave Jenkins; CiviCRM - Coleman
Watts, Tim Otten; CiviDesk - Yashodha Chaku; CompuCorp - Camilo Rodriguez,
Michael Devery; Coop SymbioTIC - Mathieu Lutfy; Effy Elden; Eli Lisseck;
Francesc Bassas i Bullich; Freeform Solutions - Herb van den Dool; Fuzion -
Chris Burgess, Eileen McNaughton, Jitendra Purohit; Ginkgo Street Labs - Frank
Gómez; JMA Consulting - Monish Deb, Pradeep Nayak; Joinery - Allen Shaw; Jon
Goldberg; Lemniscus - Noah Miller; Lighthouse Design and Consulting - Brian
Shaughnessy; Oxfam Germany - Thomas Schüttler; Progressive Technology Project -
Jamie McClelland; Redfin Solutions - Chris Wells; Romain Thouvenin; Sean Madsen;
Systopia - Björn Endres; Web Access - Kurund Jalmi; Wikimedia Foundation -
Eileen McNaughton
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
Alcohol Justice - Bruce Wolfe; Alex Block; Andy Clarke; Blackfly Solutions -
Alan Dixon; Bob Silvern; Bob Vincent; Business & Code - Alain Benbassat; Circle
Interactive - Martin Castle; CiviDesk - Nicolas Ganivet; CiviHosting - Hershel
Robinson; CompuCorp - Guanhuan Chen, Mirela Stanila; Donald Hirst; Fuzion -
Peter Davis; Ginkgo Street Labs - Dan O'Brien; James van der Hoven; JMA
Consulting - Joe Murray; Joanne Chester; Johan Vervloet; Korlon - Stuart Gaston;
MC3 - Graham Mitchell; Michal Mach; Milton Zurita; MJW Consulting - Matthew
Wire; Nubay Services - David Tarrant; Registered Nurses' Association of Ontario -
Thomas Mannell; Richard van Oosterhout; Semper IT - Karin Gerritsen; Skvare -
Mark Hanna; Systopia - Fabian Schuttenberg; Tech To The People - Xavier Dutoit;
Web Access - Rohan Chavan; Wim De Craene

View file

@ -0,0 +1,62 @@
# CiviCRM 4.7.22
Released July 12, 2017
- **[Bugs resolved](#bugs)**
- **[Credits](#credits)**
## <a name="bugs"></a>Bugs resolved
### Core CiviCRM
- **[CRM-20561](https://issues.civicrm.org/jira/browse/CRM-20561) Load Net_SMTP, Auth_SASL, Net_Socket via Composer
([10622](https://github.com/civicrm/civicrm-core/pull/10622))**
This resolves an SMTP authentication issue by updating a patch for
compatibility with the a newer release of `Net_SMTP`.
- **[CRM-20829](https://issues.civicrm.org/jira/browse/CRM-20829) Install requirements fail because of port string
([10626](https://github.com/civicrm/civicrm-core/pull/10626))**
This fixes a bug where new, GUI-based installations failed in Drupal and
WordPress if the MySQL credentials relied on the default (implicit) port.
- **[CRM-20600](https://issues.civicrm.org/jira/browse/CRM-20600) Display warning if asset-caching is likely to fail
([10644](https://github.com/civicrm/civicrm-core/pull/10644))**
This mitigates an issue where pages based on AngularJS do
not load because the site has a configuration problem.
- **[CRM-20834](https://issues.civicrm.org/jira/browse/CRM-20834) Drupal user not created via Profile due to missing email field
([10636](https://github.com/civicrm/civicrm-core/pull/10636))**
### Backdrop Integration
- **Improve Views checkbox value handling
([37](https://github.com/civicrm/civicrm-backdrop/pull/37))**
- **When creating a new Backdrop user, two corresponding CiviCRM contacts are created.
([22](https://github.com/civicrm/civicrm-backdrop/issues/22))**
- **Access denied on Civi profile forms on user page
([31](https://github.com/civicrm/civicrm-backdrop/issues/31))**
- **CiviCRM-related warning when saving Backdrop permissions page
([23](https://github.com/civicrm/civicrm-backdrop/issues/23))**
## <a name="credits"></a>Credits
This release was developed by the following code authors:
Australian Greens - Seamus Lee; Circle Interactive - Dave Jenkins; CiviCRM - Tim
Otten; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit;
Wikimedia Foundation - Maggie Epps
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
Coop SymbioTIC - Mathieu Lutfy; dotPro - Diego Viegas; Fuzion - Chris Burgess,
Peter Davis; JMA Consulting - Joe Murray, Monish Deb; Lueck Data Systems -
Michael Lueck; Tadpole Collective - Kevin Cristiano; Wikimedia Foundation -
Eileen McNaughton

View file

@ -0,0 +1,679 @@
# CiviCRM 4.7.23
Released August 2, 2017
- **[Synopsis](#synopsis)**
- **[Features](#features)**
- **[Bugs resolved](#bugs)**
- **[Miscellany](#misc)**
- **[Credits](#credits)**
- **[Feedback](#feedback)**
## <a name="synopsis"></a>Synopsis
| *Does this version...?* | |
|:--------------------------------------------------------------- |:-------:|
| Fix security vulnerabilities? | no |
| **Change the database schema?** | **yes** |
| **Alter the API?** | **yes** |
| **Require attention to configuration options?** | **yes** |
| **Fix problems installing or upgrading to a previous version?** | **yes** |
| **Introduce features?** | **yes** |
| **Fix bugs?** | **yes** |
## <a name="features"></a>Features
### Core CiviCRM
- **[CRM-20830](https://issues.civicrm.org/jira/browse/CRM-20830) Improve
handling of overdue activities
([10618](https://github.com/civicrm/civicrm-core/pull/10618))**
Activity statuses can now be edited to denote whether activities with a given
status should be considered "complete" or not. This attribute is now the
basis for determining whether an activity is overdue. In addition to UI
indications of being overdue, the API can return this value for each activity.
- **[CRM-20803](https://issues.civicrm.org/jira/browse/CRM-20803) Enable Farsi
(fa_IR), Serbian (sr_RS), Ukrainian (uk_UA) in the languages option group so
that we can install in those languages
([10667](https://github.com/civicrm/civicrm-core/pull/10667))**
These languages can now be used for installation of CiviCRM.
- **[CRM-20759](https://issues.civicrm.org/jira/browse/CRM-20759) Import, add
'Primary' as an address location
([10738](https://github.com/civicrm/civicrm-core/pull/10738),
[10565](https://github.com/civicrm/civicrm-core/pull/10565),
[10594](https://github.com/civicrm/civicrm-core/pull/10594),
[10554](https://github.com/civicrm/civicrm-core/pull/10554), and
[10547](https://github.com/civicrm/civicrm-core/pull/10547))**
Columns in imports can now import to fields in the matching contact's primary
address, regardless of location type.
- **[CRM-20793](https://issues.civicrm.org/jira/browse/CRM-20793) Add filter -
activity date and status on search criteria of activity listing
([10588](https://github.com/civicrm/civicrm-core/pull/10588))**
The activity tab on a contact record now allows filtering by date and status
besides just activity type. In addition, a site-wide option toggles whether a
user's filters on one contact's activities persist as they visit other
contacts.
- **[CRM-20847](https://issues.civicrm.org/jira/browse/CRM-20847) Support custom
api with composite primary keys
([10599](https://github.com/civicrm/civicrm-core/pull/10599))**
This change adds testing for custom APIs using the basic get function and
avoids automatically selecting the `id` field if there is no such field in the
spec.
- **[CRM-20842](https://issues.civicrm.org/jira/browse/CRM-20842) Change api
explorer page title
([10633](https://github.com/civicrm/civicrm-core/pull/10633))**
The API Explorer now explicitly states it is demonstrating API v3.
- **[CRM-20780](https://issues.civicrm.org/jira/browse/CRM-20780) Add settings
file option to define CMS_ROOT
([10574](https://github.com/civicrm/civicrm-core/pull/10574))**
The CiviCRM settings file can now explicitly set the path to the CMS root.
- **[CRM-20169](https://issues.civicrm.org/jira/browse/CRM-20169) Add support
for alterReportVar hook in Activity Report
([9886](https://github.com/civicrm/civicrm-core/pull/9886))**
Extensions can now modify the SQL of the Activity Report.
- **[CRM-20721](https://issues.civicrm.org/jira/browse/CRM-20721) Add parameter
to dateQueryBuilder fn to change date value to desired format
([10497](https://github.com/civicrm/civicrm-core/pull/10497))**
Queries on fields formatted in ways other than the typical MySQL date format
can now use the standard date query builder method in the contact BAO.
- **[CRM-20600](https://issues.civicrm.org/jira/browse/CRM-20600) Expose
AngularJS screens to hooks
([10644](https://github.com/civicrm/civicrm-core/pull/10644)) (follow-up
work)**
A message now displays both before and after upgrade if a site's configuration
is likely to prevent successful asset-caching.
- **[CRM-20673](https://issues.civicrm.org/jira/browse/CRM-20673) Tag and group
edit form: implement Select2 for tags
([10634](https://github.com/civicrm/civicrm-core/pull/10634)) (completes
previous work)**
Tags are now listed in the widget in the same order as they are displayed for
management.
- **[CRM-20622](https://issues.civicrm.org/jira/browse/CRM-20622) contact edit:
tags and groups panel layout/styling
([10429](https://github.com/civicrm/civicrm-core/pull/10429))**
The tag and group editing interface now uses standard markup rather than
unique, outdated approaches.
### CiviCase
- **[CRM-19778](https://issues.civicrm.org/jira/browse/CRM-19778) Allowed
statuses per case-type
([10552](https://github.com/civicrm/civicrm-core/pull/10552))**
The available options in the API for case status can now be filtered to those
appropriate for a given case type.
- **[CRM-20794](https://issues.civicrm.org/jira/browse/CRM-20794) Colors for
case status ([10586](https://github.com/civicrm/civicrm-core/pull/10586))
(preliminary work)**
When editing case statuses, you may now select a color. However, case display
does not yet show the status colors.
- **[CRM-20756](https://issues.civicrm.org/jira/browse/CRM-20756) Multi tab
structure ([10545](https://github.com/civicrm/civicrm-core/pull/10545))
(preliminary work)**
The AngularJS `ui.bootstrap` library is now included in CiviCRM.
- **[CRM-20816](https://issues.civicrm.org/jira/browse/CRM-20816) Case
multi/single client settings
([10609](https://github.com/civicrm/civicrm-core/pull/10609))**
Settings for redacting activity emails, allowing multiple clients per case,
and the sort order of activity types can now be modified in an administrative
form rather than exclusively in XML files defining case types.
### CiviContribute
- **[CRM-20778](https://issues.civicrm.org/jira/browse/CRM-20778) Use
civicontribute permission for contribution recur.cancel
([10569](https://github.com/civicrm/civicrm-core/pull/10569))**
The permissions to view, modify, cancel, and delete recurring contributions
now mirror the corresponding permissions needed for working with payments.
- **[CRM-20682](https://issues.civicrm.org/jira/browse/CRM-20682) Include human
readable contribution's custom field label in token widget for Thankyou letter
([10467](https://github.com/civicrm/civicrm-core/pull/10467))**
Contribution custom field tokens are now listed among the available tokens in
the Thank-you Letter form. They had been processed, but there was no
indication that they were available.
- **[CRM-20860](https://issues.civicrm.org/jira/browse/CRM-20860) Add in
password type field availability and apply to payment processor fields
([10649](https://github.com/civicrm/civicrm-core/pull/10649))**
Field metadata can now specify the HTML field type of `Password` which adds a
`HTML_QuickForm_password` field element. This is implemented on payment
processor settings fields.
### CiviMember
- **[CRM-20901](https://issues.civicrm.org/jira/browse/CRM-20901) Add submit
credit card membership link on membership form
([10689](https://github.com/civicrm/civicrm-core/pull/10689))**
The backend add membership form now has a link to the backend credit card
membership form.
### Backdrop Integration
- **Port of civicrm_engage to Backdrop
([28](https://github.com/civicrm/civicrm-backdrop/pull/28))**
### Drupal Integration
- **[CRM-20751](https://issues.civicrm.org/jira/browse/CRM-20751) Support Drupal
aliases for event links in Views
([456](https://github.com/civicrm/civicrm-drupal/pull/456) and
[455](https://github.com/civicrm/civicrm-drupal/pull/455))**
If a CiviCRM event has a Drupal alias set for it, views linking to the event
will now link to the alias rather than the CiviCRM URL.
## <a name="bugs"></a>Bugs resolved
### Core CiviCRM
- **[CRM-20873](https://issues.civicrm.org/jira/browse/CRM-20873) CIVICRM-118 DB
Error: no such field / Unknown column 'civicrm_custom_group.is_public' breaks
CiviCRM database update process
([10662](https://github.com/civicrm/civicrm-core/pull/10662))**
This fixes a bug in upgrading from 4.7.18 or earlier to 4.7.19 or later. Code
used by the upgrade to load the available custom data for an entity relies
upon a field that is not made available until after the upgrade.
- **[CRM-20849](https://issues.civicrm.org/jira/browse/CRM-20849) Multiple
extensions using the same autoloader prefix will overwrite previous
([10637](https://github.com/civicrm/civicrm-core/pull/10637))**
- **[CRM-20739](https://issues.civicrm.org/jira/browse/CRM-20739) contact import
doesn't add to group on fill if matching without ID
([10507](https://github.com/civicrm/civicrm-core/pull/10507))**
- **[CRM-20666](https://issues.civicrm.org/jira/browse/CRM-20666) enable
uploading of files to activities that are up to 255 characters in length
([10449](https://github.com/civicrm/civicrm-core/pull/10449))**
File names of activity uploads had previously been capped at 60 characters.
- **[CRM-20776](https://issues.civicrm.org/jira/browse/CRM-20776) Menu structure
([10573](https://github.com/civicrm/civicrm-core/pull/10573))**
This fixes incorrect handling of URL paths, queries and fragments in the
navigation menu. This was a particular problem for AngularJS pages.
- **[CRM-20640](https://issues.civicrm.org/jira/browse/CRM-20640) contribution
summary report: duplicates values with group filter
([10603](https://github.com/civicrm/civicrm-core/pull/10603) and
[10596](https://github.com/civicrm/civicrm-core/pull/10596))**
Reports with group filters would display rows twice if multiple groups were
selected in the filter and contacts were in more than one of those groups.
- **[CRM-20953](https://issues.civicrm.org/jira/browse/CRM-20953) Importing
contacts with deceased_date not setting is_deceased
([10742](https://github.com/civicrm/civicrm-core/pull/10742))**
- **[CRM-20871](https://issues.civicrm.org/jira/browse/CRM-20871) crmUiSelect
fails to update when model changes
([10659](https://github.com/civicrm/civicrm-core/pull/10659))**
- **[CRM-20809](https://issues.civicrm.org/jira/browse/CRM-20809) Move
extensions cache from $extensionsDir to $uploadDir
([10604](https://github.com/civicrm/civicrm-core/pull/10604))**
Cached data about extensions was stored in the extensions directory, which may
not be an appropriate place and may not be writable. It is now stored in the
upload directory.
- **[CRM-20828](https://issues.civicrm.org/jira/browse/CRM-20828) Saved field
mappings drop down is limited to 1
([10615](https://github.com/civicrm/civicrm-core/pull/10615))**
- **[CRM-20509](https://issues.civicrm.org/jira/browse/CRM-20509) Checking
Contribution Note field in reports results in no rows
([10631](https://github.com/civicrm/civicrm-core/pull/10631))**
When displaying note fields in reports, the query would limit the results to
rows that had notes.
- **[CRM-20351](https://issues.civicrm.org/jira/browse/CRM-20351)
hook_civicrm_buildForm invoked twice on a bunch of forms
([10068](https://github.com/civicrm/civicrm-core/pull/10068))**
- **[CRM-20774](https://issues.civicrm.org/jira/browse/CRM-20774) Add check for
existing index keys(different values) while creating missing indices.
([10572](https://github.com/civicrm/civicrm-core/pull/10572) and
[10566](https://github.com/civicrm/civicrm-core/pull/10566))**
The check and resolution for missing indexes would previously be unaware of
variations in the keys for equivalent indexes.
- **[CRM-20722](https://issues.civicrm.org/jira/browse/CRM-20722) 'Lock wait
timeout exceeded' error triggered on smart group cache rebuild
([10498](https://github.com/civicrm/civicrm-core/pull/10498))**
This avoids an error when rebuilding the smart group cache on sites that have
a very large number of smart groups.
- **[CRM-20443](https://issues.civicrm.org/jira/browse/CRM-20443) SQL syntax
error creating logging triggers if column name is reserved word
([10530](https://github.com/civicrm/civicrm-core/pull/10530))**
- **[CRM-20950](https://issues.civicrm.org/jira/browse/CRM-20950) Contact import
mapping to wrong location type (unreleased regression)
([10736](https://github.com/civicrm/civicrm-core/pull/10736) and
[10735](https://github.com/civicrm/civicrm-core/pull/10735))**
- **[CRM-20754](https://issues.civicrm.org/jira/browse/CRM-20754) memory leak in
CLI CSV import ([10537](https://github.com/civicrm/civicrm-core/pull/10537))**
This resolves a problem of accumulating too much data in the
`PEAR_DB_DATAOBJECT` cache on large imports.
- **[CRM-19702](https://issues.civicrm.org/jira/browse/CRM-19702) Fatal error
when merging contact records with custom file fields
([9784](https://github.com/civicrm/civicrm-core/pull/9784))**
- **[CRM-19653](https://issues.civicrm.org/jira/browse/CRM-19653) Custom field
checkboxes migrated incorrectly on merge (part deux)
([10407](https://github.com/civicrm/civicrm-core/pull/10407))**
- **[CRM-19821](https://issues.civicrm.org/jira/browse/CRM-19821) Remove
performance degrading joins from activity search (& api calls)
([10274](https://github.com/civicrm/civicrm-core/pull/10274))**
- **[CRM-20743](https://issues.civicrm.org/jira/browse/CRM-20743) users without
reserved tag permission may still modify the tag
([10522](https://github.com/civicrm/civicrm-core/pull/10522))**
While users lacking the "Administer reserved tags" permission were barred from
deleting or moving reserved tags, this prevents them from editing the tag name
and description.
- **[CRM-20621](https://issues.civicrm.org/jira/browse/CRM-20621) manage tags:
the tag usage count is not accurate
([10441](https://github.com/civicrm/civicrm-core/pull/10441))**
### CiviCase
- **[CRM-20802](https://issues.civicrm.org/jira/browse/CRM-20802)
CaseType.create - Stale definition retained in memory
([10591](https://github.com/civicrm/civicrm-core/pull/10591))**
Cached case type information was retained even after modifying the case type.
### CiviContribute
- **[CRM-20765](https://issues.civicrm.org/jira/browse/CRM-20765) Missing id for
'onBehalfOfOrg' section
([10550](https://github.com/civicrm/civicrm-core/pull/10550))**
The `<div>` containing on-behalf section on contribution pages lacks the
`onBehalfOfOrg` ID attribute that it had in 4.6.
- **[CRM-20753](https://issues.civicrm.org/jira/browse/CRM-20753) Net amount
doesn't respect localization
([10536](https://github.com/civicrm/civicrm-core/pull/10536))**
- **[CRM-20891](https://issues.civicrm.org/jira/browse/CRM-20891) Pay later
option incorrectly shows as completed when combining membership and donation
([10683](https://github.com/civicrm/civicrm-core/pull/10683))**
Using a contribution page with "separate membership payment" set, a pay-later
contribution would incorrectly mark the membership contribution completed.
- **[CRM-20848](https://issues.civicrm.org/jira/browse/CRM-20848) Upgrade to
4.7.19 sets price_field to inactive if default Financial Types are disabled
([10675](https://github.com/civicrm/civicrm-core/pull/10675))**
- **[CRM-20857](https://issues.civicrm.org/jira/browse/CRM-20857) Deferred
Revenue report - DB Error: unknown error
([10646](https://github.com/civicrm/civicrm-core/pull/10646))**
The Deferred Revenue report would have an error on if a database server's
`sql_mode` was set to `only_full_group_by`.
- **[CRM-20867](https://issues.civicrm.org/jira/browse/CRM-20867) Class not
found ([10656](https://github.com/civicrm/civicrm-core/pull/10656))**
This fixes a fatal error in the additional payment form due to a typo in the
name of the `CRM_Contribute_BAO_Contribution` class.
- **[CRM-20649](https://issues.civicrm.org/jira/browse/CRM-20649) Notice error
when creating Price set
([10431](https://github.com/civicrm/civicrm-core/pull/10431))**
Validation of a price set name would generate a PHP notice if the name was
blank.
- **[CRM-20823](https://issues.civicrm.org/jira/browse/CRM-20823) Price Set
field with an Expiry Date still being 'required' after being expired.
([10613](https://github.com/civicrm/civicrm-core/pull/10613))**
- **[CRM-20752](https://issues.civicrm.org/jira/browse/CRM-20752) Editing a
Cancelled Pledge updates the status of it to Pending/Inprogress
([10535](https://github.com/civicrm/civicrm-core/pull/10535))**
- **[CRM-20812](https://issues.civicrm.org/jira/browse/CRM-20812) Notice on live
contribution when only pay later is selected
([10606](https://github.com/civicrm/civicrm-core/pull/10606))**
- **[CRM-20761](https://issues.civicrm.org/jira/browse/CRM-20761) Formrule error
when priceset is selected on contribution page
([10549](https://github.com/civicrm/civicrm-core/pull/10549))**
When enabling a contribution amounts section and selecting a price set on a
contribution page's settings form, validation would fail, looking for a
contribution amount label.
- **[CRM-20401](https://issues.civicrm.org/jira/browse/CRM-20401) Cancel/modify
URL receipt links not correct for Paypal Website Payments Pro
([10424](https://github.com/civicrm/civicrm-core/pull/10424))**
- **[CRM-20745](https://issues.civicrm.org/jira/browse/CRM-20745) Post date of
recur not respected in credit card pledge payment
([10524](https://github.com/civicrm/civicrm-core/pull/10524))**
- **[CRM-20773](https://issues.civicrm.org/jira/browse/CRM-20773) Contribution
tab shows Receive Date twice instead of Thank You date
([10607](https://github.com/civicrm/civicrm-core/pull/10607))**
- **[CRM-20387](https://issues.civicrm.org/jira/browse/CRM-20387) Sales Tax and
Invoicing code overwrites existing CiviCRM invoice ID
([10298](https://github.com/civicrm/civicrm-core/pull/10298))**
A new `invoice_number` field is added to the `civicrm_contribution` table to
record the ID of the manually-generated invoice.
- **[CRM-20488](https://issues.civicrm.org/jira/browse/CRM-20488) Lift
restrictions for contact type soft credit
([10532](https://github.com/civicrm/civicrm-core/pull/10532) and
[10419](https://github.com/civicrm/civicrm-core/pull/10419))**
Users could not soft-credit an organization if the contribution originated
from a contribution page where honor/memory is enabled.
- **[CRM-19478](https://issues.civicrm.org/jira/browse/CRM-19478) API not
handling Paypal recurring IPN where p=null for Contribution Page
([10447](https://github.com/civicrm/civicrm-core/pull/10447))**
- **[CRM-20495](https://issues.civicrm.org/jira/browse/CRM-20495) "Contribution
amounts section" checkbox setting on contribution pages always shows as
checked. ([10521](https://github.com/civicrm/civicrm-core/pull/10521))**
- **[CRM-20747](https://issues.civicrm.org/jira/browse/CRM-20747)
{contribution.campaign} token not working on Contribution ThankYou letter
([10533](https://github.com/civicrm/civicrm-core/pull/10533))**
### CiviMember
- **[CRM-19017](https://issues.civicrm.org/jira/browse/CRM-19017) Scheduled
membership reminders have stopped working
([10652](https://github.com/civicrm/civicrm-core/pull/10652))**
- **[CRM-20716](https://issues.civicrm.org/jira/browse/CRM-20716) Array to
string issue on php7 when creating membership activity
([10492](https://github.com/civicrm/civicrm-core/pull/10492))**
- **[CRM-20650](https://issues.civicrm.org/jira/browse/CRM-20650) Translate
strings (ts) in CiviMember dashboard and Contribute manage
([10432](https://github.com/civicrm/civicrm-core/pull/10432))**
- **[CRM-18177](https://issues.civicrm.org/jira/browse/CRM-18177) When Renewing
an existing membership, if CC details are incorrect, Membership is set to
Cancelled preventing contact from trying again
([10770](https://github.com/civicrm/civicrm-core/pull/10770)) (fix to problem
introduced in original bug fix)**
- **[CRM-20850](https://issues.civicrm.org/jira/browse/CRM-20850) Replace fatal
with statusBounce in membership form
([10638](https://github.com/civicrm/civicrm-core/pull/10638))**
When a user links to edit a linked contribution from a membership and they
don't have permission to edit the contribution, they should be redirected with
an error notice rather than being shown a fatal error.
- **[CRM-20667](https://issues.civicrm.org/jira/browse/CRM-20667) Additonal Line
item created from Membership backoffice form
([10450](https://github.com/civicrm/civicrm-core/pull/10450))**
- **[CRM-20805](https://issues.civicrm.org/jira/browse/CRM-20805) Fatal Error
when adding new membership type on a contribution page.
([10597](https://github.com/civicrm/civicrm-core/pull/10597))**
- **[CRM-20668](https://issues.civicrm.org/jira/browse/CRM-20668) Notice error
([10452](https://github.com/civicrm/civicrm-core/pull/10452))**
This fixes a PHP notice when creating a membership using a price set on the
backend.
- **[CRM-20675](https://issues.civicrm.org/jira/browse/CRM-20675) Membership
status update creates renewal activity
([10457](https://github.com/civicrm/civicrm-core/pull/10457))**
- **[CRM-20567](https://issues.civicrm.org/jira/browse/CRM-20567) backoffice
membership via price set errors with non-aggregated column
([10346](https://github.com/civicrm/civicrm-core/pull/10346))**
This is one of several errors that appear when `sql_mode` was set to
`only_full_group_by`.
- **[CRM-20720](https://issues.civicrm.org/jira/browse/CRM-20720) CIVICRM-128
Unable to sort Price Options for Price Fieldset. Weight values are not being
set at all in database.
([10542](https://github.com/civicrm/civicrm-core/pull/10542))**
- **[CRM-20670](https://issues.civicrm.org/jira/browse/CRM-20670) Cannot edit
membership type if lots of members already exist
([10534](https://github.com/civicrm/civicrm-core/pull/10534) and
[10455](https://github.com/civicrm/civicrm-core/pull/10455))**
### CiviEvent
- **[CRM-20741](https://issues.civicrm.org/jira/browse/CRM-20741) Cancellation
message shown as error
([10515](https://github.com/civicrm/civicrm-core/pull/10515))**
- **[CRM-20633](https://issues.civicrm.org/jira/browse/CRM-20633) custom field
set displayed twice on register event Participant
([10551](https://github.com/civicrm/civicrm-core/pull/10551))**
When switching event types on the backend form to add an event participant,
custom fields common to all event types would be added repeatedly.
- **[CRM-20775](https://issues.civicrm.org/jira/browse/CRM-20775) Wrong is full
results for API event get
([10568](https://github.com/civicrm/civicrm-core/pull/10568))**
When Max Number of Participants event field is left empty, the API would
return `1` for the `is_full`property instead of `0`.
- **[CRM-19745](https://issues.civicrm.org/jira/browse/CRM-19745) Image URL
field doesn't show up on CiviEvent Additional Participants Profile
([9777](https://github.com/civicrm/civicrm-core/pull/9777))**
### CiviMail
- **[CRM-20781](https://issues.civicrm.org/jira/browse/CRM-20781) Truncate long
text in mail listing
([10576](https://github.com/civicrm/civicrm-core/pull/10576))**
Long values in columns would crowd other columns off the screen or into
illegibility.
- **[CRM-20902](https://issues.civicrm.org/jira/browse/CRM-20902) DB Syntax
error on Mailing Opened Report
([10690](https://github.com/civicrm/civicrm-core/pull/10690))**
- **[CRM-20746](https://issues.civicrm.org/jira/browse/CRM-20746) CiviMail -
text part of resubscribe confirmation mail contains html
([10528](https://github.com/civicrm/civicrm-core/pull/10528))**
- **[CRM-20412](https://issues.civicrm.org/jira/browse/CRM-20412) mailing
report: unique opens detail view inaccurate
([10558](https://github.com/civicrm/civicrm-core/pull/10558))**
- **[CRM-20411](https://issues.civicrm.org/jira/browse/CRM-20411) mailing tab
listing: MySQL 5.7 group by error
([10562](https://github.com/civicrm/civicrm-core/pull/10562) and
[10541](https://github.com/civicrm/civicrm-core/pull/10541))**
- **[CRM-20713](https://issues.civicrm.org/jira/browse/CRM-20713) db error when
populating mailing recipients because sms_provider_id is 'null'
([10487](https://github.com/civicrm/civicrm-core/pull/10487))**
### Backdrop Integration
- **Fix spelling to canvass for civicrm_engage
([40](https://github.com/civicrm/civicrm-backdrop/pull/40))**
- **Bug fixes - issues #22, #31, #33
([39](https://github.com/civicrm/civicrm-backdrop/pull/39))**
- **Improve Views checkbox value handling
([37](https://github.com/civicrm/civicrm-backdrop/pull/37))**
- **add new views handlers to hook_autoload_info
([38](https://github.com/civicrm/civicrm-backdrop/pull/38))**
- **Merge in civicrm/drupal from Dec 15, 2015 to June 21, 2017
([36](https://github.com/civicrm/civicrm-backdrop/pull/36))**
### Drupal Integration
- **[CRM-20525](https://issues.civicrm.org/jira/browse/CRM-20525) Webform Pay
later sends Receipt email rather than Invoice email
([10306](https://github.com/civicrm/civicrm-core/pull/10306))**
- **[CRM-19976](https://issues.civicrm.org/jira/browse/CRM-19976) Drush: cannot
disable civicrm debug
([457](https://github.com/civicrm/civicrm-drupal/pull/457))**
While `drush civicrm-enable-debug` was defined, this adds the
`civicrm-disable-debug` command.
### Joomla Integration
- **[CRM-19914](https://issues.civicrm.org/jira/browse/CRM-19914)
civicrmHooks.php issues on windows
([10571](https://github.com/civicrm/civicrm-core/pull/10571))**
This resolves problems locating the `civicrmHooks.php` file on Joomla sites in
Windows.
## <a name="misc"></a>Miscellany
- **[CRM-20837](https://issues.civicrm.org/jira/browse/CRM-20837) Make setting
bug more explicit
([10627](https://github.com/civicrm/civicrm-core/pull/10627))**
- **[CRM-20677](https://issues.civicrm.org/jira/browse/CRM-20677) Use
generalised function to retrieve financial account
([10463](https://github.com/civicrm/civicrm-core/pull/10463))**
- **[CRM-20786](https://issues.civicrm.org/jira/browse/CRM-20786) Move
deprecated utils functions to the import classes
([10578](https://github.com/civicrm/civicrm-core/pull/10578),
[10580](https://github.com/civicrm/civicrm-core/pull/10580),
[10579](https://github.com/civicrm/civicrm-core/pull/10579), and
[10581](https://github.com/civicrm/civicrm-core/pull/10581))**
- **[CRM-20771](https://issues.civicrm.org/jira/browse/CRM-20771) Ensure that
AddColumn in CRM_Upgrade_Incremental_Base can support translatable columns
([10561](https://github.com/civicrm/civicrm-core/pull/10561))**
- **[CRM-20833](https://issues.civicrm.org/jira/browse/CRM-20833) Change
namespace for APIv4 entities
([10632](https://github.com/civicrm/civicrm-core/pull/10632) and
[10625](https://github.com/civicrm/civicrm-core/pull/10625))**
The namespace is now `Civi\Api4\Entity` rather than `Civi\Api4`.
- **[CRM-19726](https://issues.civicrm.org/jira/browse/CRM-19726)
`CiviMailUtils::clearMessages()` should clear all messages by default
([10669](https://github.com/civicrm/civicrm-core/pull/10669))**
- **Misspelling ([10619](https://github.com/civicrm/civicrm-core/pull/10619))**
- **[CRM-20797](https://issues.civicrm.org/jira/browse/CRM-20797) Use is_payment
to retrieve payments
([10587](https://github.com/civicrm/civicrm-core/pull/10587))**
- **Replace a couple of calls to deprecated function
([10527](https://github.com/civicrm/civicrm-core/pull/10527))**
- **[CRM-20758](https://issues.civicrm.org/jira/browse/CRM-20758) Fix deprecated
fn call on import screen
([10544](https://github.com/civicrm/civicrm-core/pull/10544))**
- **[CRM-20541](https://issues.civicrm.org/jira/browse/CRM-20541) Edge case
where DB connection is not available
([447](https://github.com/civicrm/civicrm-drupal/pull/447))**
Certain static variables now use Drupal's built-in system.
## <a name="credits"></a>Credits
This release was developed by the following code authors:
AGH Strategies - Andrew Hunt; Arun Singh; Australian Greens - Seamus Lee; Brooks
Digital - Spencer Brooks; CEDC - Laryn Kragt Bakker; Circle Interactive - Dave
Jenkins; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku;
CompuCorp - Michael Devery; Coop SymbioTIC - Mathieu Lutfy; Dave Greenberg;
Electronic Frontier Foundation - Mark Burdett; Francesc Bassas i Bullich;
Freeform Solutions - Herb van den Dool; Fuzion - Chris Burgess, Eileen
McNaughton, Jitendra Purohit; Gizra - Aron Novak; JMA Consulting - Edsel Lopez,
Monish Deb, Pradeep Nayak; John Kingsnorth; Joinery - Allen Shaw; Joost Fock;
Klaas Eikelboom; Lighthouse Design and Consulting - Brian Shaughnessy; Mattias
Michaux; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting -
Matthew Wire; Oxfam Germany - Thomas Schüttler; Progressive Technology Project -
Jamie McClelland; Squiffle Consulting - Aidan Saunders; Wikimedia Foundation -
Eileen McNaughton, Maggie Epps
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
Agileware - Agileware Team; Arkadiusz Rzadkowolski; Blackfly Solutions - Alan
Dixon; CiviDesk - Nicolas Ganivet; CompuCorp - Davi Alexandre, Guanhuan Chen,
Jamie Novick, Mirela Stanila; DevMate - Adam Kwiatkowski; Donald Hirst; DotPro -
Diego Viegas; F. M. Andrimont; Fuzion - Peter Davis, Torrance Hodgson; JMA
Consulting - Joe Murray, Pradeep Nayak; Johan Vervloet; Jvillage Network - Dina
London; Korlon - Stuart Gaston; Lueck Data Systems - Michael Lueck; MC3 - Graham
Mitchell; Nathan Brettell; Oxfam Germany - Thomas Schüttler; Peter Bull; Phil
McKerracher; Semper IT - Karin Gerritsen; Skvare - Mark Hanna; Stephen
Palmstrom; Tadpole Collective - Kevin Cristiano; Upleaf - Osvaldo Gomez;
Wikimedia Foundation - Elliott Eggleston
## <a name="feedback"></a>Feedback
These release notes have been made possible by the diligent curation of Andrew Hunt.
If you'd like to provide feedback on them, please login to https://chat.civicrm.org/civicrm
and contact `@agh1`.

View file

@ -0,0 +1,431 @@
# CiviCRM 4.7.24
Released September 6, 2017
- **[Synopsis](#synopsis)**
- **[Features](#features)**
- **[Bugs resolved](#bugs)**
- **[Miscellany](#misc)**
- **[Credits](#credits)**
- **[Feedback](#feedback)**
## <a name="synopsis"></a>Synopsis
| *Does this version...?* | |
|:----------------------------------------------------------- |:-------:|
| Fix security vulnerabilities? | No |
| **Change the database schema?** | **Yes** |
| **Alter the API?** | **Yes** |
| Require attention to configuration options? | No |
| Fix problems installing or upgrading to a previous version? | No |
| **Introduce features?** | **Yes** |
| **Fix bugs?** | **Yes** |
## <a name="features"></a>Features
### Core CiviCRM
- **[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))**
Updated upgrade message text regarding support for PHP5.3 and PHP5.4
- **[CRM-20960](https://issues.civicrm.org/jira/browse/CRM-20960) Upgrade Dompdf
to 0.8 ([10751](https://github.com/civicrm/civicrm-core/pull/10751))**
Civicrm now uses dompdf to 0.8 which is compatible with PHP 7.1.
- **[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))**
The "Sorry but we are not able to provide this at the moment." error message
is improved to be more descriptive. It now says "Sorry, due to an error,
CiviCRM is unable to fulfill your request at the moment. You may want to
contact your administrator or service provider with more details about when
this occurred."
- **[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))**
This change conveys CSS classes from Angular `crm-page-title` elements to the
main page title for styling purposes.
- **[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.
- **[CRM-20863](https://issues.civicrm.org/jira/browse/CRM-20863) Improve
ordering of report lists
([10653](https://github.com/civicrm/civicrm-core/pull/10653))**
If reports have the same weight they will now 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 Current Employer Report to get Employee Relationship type from the API
instead of a hardcoded value of the ID `4`.
- **[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))**
The version number in the footer now links to the release notes for that
version.
### 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)) (Initial Work)**
Updates the user experience for partial payments for events, memberships and
contributions on entry, editing and display.
- **[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))**
This change moves the placement of fields on the backend 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))**
This change moves the payment processor selection field on the backend credit
card contribution form. It is now closer to the billing block.
- **[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))**
QuickForm now allows for a `password` type field to be added to forms. This
new field type is also applied to the Payment Processor Password fields for
security purposes.
- **[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))**
Now, When making a contribution in honor of someone, the person who is being
honored shows up on the receipt.
- **[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.
- **[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))**
On the Financial batch listing page, the "Received" column is now labeled
"Transaction Date", and a new "Received" column, derived from
`civicrm_contribution.receive_date`, is displayed.
- **[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))**
Creates a new option group for pledge status for pledges to use. Previously,
pledges were using contribution statuses.
### 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))**
This change converts list of groups and mailings in CiviMail to be loaded
dynamically to improve performance.
### CiviMember
- **[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))**
A new option ties the financial type of a membership payment contribution to the
membership type of its related membership. When that membership type gets
changed and the option is set, the contribution's financial type changes.
## <a name="bugs"></a>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-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))**
Removes use of CRM_Core_OptionGroup::getKey function which is deprecated
- **[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-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))**
Entering a long postal code into the database was preventing searching by
postal code 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))**
- **[CRM-20884](https://issues.civicrm.org/jira/browse/CRM-20884) broken symlink
in net_smtp packages
([10676](https://github.com/civicrm/civicrm-core/pull/10676))**
- **[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.
- **[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 PHP 7.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 PHP 7.1 compatibility
- **[CRM-19941](https://issues.civicrm.org/jira/browse/CRM-19941) PHP 7.1
Compatability ([10724](https://github.com/civicrm/civicrm-core/pull/10724))**
- **[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".
### 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 was populated by the current
list of recipients, if any. It now lists 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-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-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))**
An error message is now displayed instead of an endless spinning wheel when
someone tries to make a credit card contribution on a contribution page with
no processor configured.
- **[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))**
Fixes a bug where the wrong entries were being added to the financial table
when the contribution was canceled, now uses line total of line item to store
in financial item table
- **[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-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 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)) (Initial Work)**
- **[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),
([10762](https://github.com/civicrm/civicrm-core/pull/10762), and
[10720](https://github.com/civicrm/civicrm-core/pull/10720))**
### CiviMember
- **[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-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))**
- **[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))**
### 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))**
### CiviEvent
- **[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-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))**
Fixes a bug where the Participants List was showing "Total paid" and "balance"
incorrect when Deferred revenue was enabled.
- **[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))**
### Joomla Integration
- **[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))**
## <a name="misc"></a>Miscellany
- **[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))**
This change sets up a PR template in github to help contributers standardize
their pull request documentation.
- **(NFC) Fix permissions on CRM/Contribute/BAO/Contribution.php
([10766](https://github.com/civicrm/civicrm-core/pull/10766))**
- **CRM_Utils_SQL_Select - Allow fluent query execution
([10686](https://github.com/civicrm/civicrm-core/pull/10686))**
- **(NFC) gitignore - Remove obsolete entries
([10714](https://github.com/civicrm/civicrm-core/pull/10714))**
- **regen.sh - Fix stale function call in sql/GenerateData.php
([10706](https://github.com/civicrm/civicrm-core/pull/10706))**
## <a name="credits"></a>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;
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;
myDropWizard - David Snopek; 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:
Alcohol Justice - Bruce Wolfe; Apple Street Market - Sean Prónay; British
Humanist Association - William Gordon; CiviCoop - Jaap Jansma; CiviDesk -
Nicolas Ganivet; CompuCorp - Guanhuan Chen, Jamie Novick; Coop SymbioTIC -
Mathieu Lutfy, Stéphane Lussier; Dave Greenberg; DevMate - Adam Kwiatkowski;
DreamSpace - Anthony Colombo; Francesc Bassas i Bullich; Fuzion - Peter Davis;
Greenleaf Advancement - Karen Stevenson; JMA Consulting - Joe Murray; Lighthouse
Design and Consulting - Brian Shaughnessy; Lionel Smith-Gordon; Nathan Brettell;
National Democratic Institute - Dean Valentine; Responsive Development
Technologies - Thomas Nilefalk; Semper IT - Karin Gerritsen; SEN Magazine -
Jeremy Nicholls; Skvare - Mark Hanna; Stephen Palmstrom; Tadpole Collective -
Kevin Cristiano; Team Expansion - Greg Harris; Thomas Bacon; Torrance Hodgson
## <a name="feedback"></a>Feedback
These release notes are edited by Alice Frumin and Andrew Hunt. If you'd like
to provide feedback on them, please login to https://chat.civicrm.org/civicrm
and contact `@agh1`.

View file

@ -0,0 +1,839 @@
# CiviCRM 4.7.25
Released October 4, 2017
- **[Synopsis](#synopsis)**
- **[Features](#features)**
- **[Bugs resolved](#bugs)**
- **[Miscellany](#misc)**
- **[Credits](#credits)**
- **[Feedback](#feedback)**
## <a name="synopsis"></a>Synopsis
| *Does this version...?* | |
|:----------------------------------------------------------- |:-------:|
| Fix security vulnerabilities? | no |
| **Change the database schema?** | **yes** |
| **Alter the API?** | **yes** |
| Require attention to configuration options? | no |
| Fix problems installing or upgrading to a previous version? | no |
| **Introduce features?** | **yes** |
| **Fix bugs?** | **yes** |
## <a name="features"></a>Features
### Core CiviCRM
- **[CRM-20769](https://issues.civicrm.org/jira/browse/CRM-20769) Allow for
Button Text on profiles to be overriden in settings
([10940](https://github.com/civicrm/civicrm-core/pull/10940) and
[11051](https://github.com/civicrm/civicrm-core/pull/11051))**
This adds columns to the `civicrm_uf_group` table to support customizing
profile buttons.
- **[CRM-20964](https://issues.civicrm.org/jira/browse/CRM-20964) Include queue
id while retrieving rows from Event Queue.
([10757](https://github.com/civicrm/civicrm-core/pull/10757))**
`CRM_Mailing_Event_BAO_Queue::getRows()` returned rows for each intended
recipients, but didn't include any info which differentiates each row.
This adds a `queue_id` in the key column of the $result array which enables
hooks to know which row is getting displayed.
- **[CRM-21118](https://issues.civicrm.org/jira/browse/CRM-21118) Add action
links for message templates overview at top of page
([10917](https://github.com/civicrm/civicrm-core/pull/10917))**
Previously action links (add message template) were only shown at the bottom
of the page. If you have lots of message templates it is not visible until
scrolling down. This adds the links at the top of the page as well (like many
other pages in CiviCRM).
- **[CRM-20979](https://issues.civicrm.org/jira/browse/CRM-20979) pre help for
price fields not exposed to UI.
([10780](https://github.com/civicrm/civicrm-core/pull/10780))**
Adds a field to the Add/Edit Price Field Form to enter pre help for price
fields.
- **[CRM-20680](https://issues.civicrm.org/jira/browse/CRM-20680) Make the
CiviCRM logo spin while waiting for next page to load
([10903](https://github.com/civicrm/civicrm-core/pull/10903)) (fix to previous
work)**
This fixes a side effect of the new feature that caused all CiviCRM logos on
the page to spin.
- **[CRM-21078](https://issues.civicrm.org/jira/browse/CRM-21078) Allow user to
save and continue editing message template
([10871](https://github.com/civicrm/civicrm-core/pull/10871))**
The message template editing screen now matches similar forms in CiviCRM by
offering separate "Save" and "Save and Done" buttons.
- **[CRM-20941](https://issues.civicrm.org/jira/browse/CRM-20941) Determine &
notify date to end support for PHP5.3 and PHP5.4
([10851](https://github.com/civicrm/civicrm-core/pull/10851))**
A pre-upgrade message and system check now warn administrators of sites using
PHP versions prior to 5.6.
- **[CRM-17157](https://issues.civicrm.org/jira/browse/CRM-17157) CiviCRM money
validation should allow more decimal places
([10827](https://github.com/civicrm/civicrm-core/pull/10827))**
Previously, validation of money fields limited values to two decimal places.
This allows for currencies that may have more decimal places.
- **[CRM-20926](https://issues.civicrm.org/jira/browse/CRM-20926) Allow
extensions to flag PHPIDS html/json fields
([10709](https://github.com/civicrm/civicrm-core/pull/10709))**
Extensions can now denote fields that should be be evaluated as HTML, JSON, or
exceptions for the intrusion detection system (IDS).
- **[CRM-20155](https://issues.civicrm.org/jira/browse/CRM-20155) The dedupe
code passes has serious maintainability issues, locked in by hooks
([10890](https://github.com/civicrm/civicrm-core/pull/10890)) (preliminary
work)**
This is initial cleanup work toward separating the dedupe process from the
form layer, allowing for extensions to do custom dedupe logic. This initial
work merely cleans up the existing processing.
- **[CRM-17748](https://issues.civicrm.org/jira/browse/CRM-17748) Expose
options['result_buffering'] to CRM_Core_DAO
([10585](https://github.com/civicrm/civicrm-core/pull/10585))**
Queries sent to the DAO can now pass options for `DB_mysql`. Specifically,
a `result_buffering` option can reduce PHP memory needs by calling for an
unbuffered query.
- **[CRM-20733](https://issues.civicrm.org/jira/browse/CRM-20733) Relationship
report improvements
([10679](https://github.com/civicrm/civicrm-core/pull/10679))**
The Relationship Report can now filter results by permissions (contact A over
contact B and vice-versa) and order results by start date.
- **[CRM-21108](https://issues.civicrm.org/jira/browse/CRM-21108) Creating
contacts is slow, part 1 of 2: Calculating Greetings
([10906](https://github.com/civicrm/civicrm-core/pull/10906))**
This optimizes the population of greetings for newly-created contacts, the
slowest part of generating contacts.
- **[CRM-18231](https://issues.civicrm.org/jira/browse/CRM-18231) Support safe
migration from production to non-production instances
([10972](https://github.com/civicrm/civicrm-core/pull/10972),
[10936](https://github.com/civicrm/civicrm-core/pull/10936), and
[8724](https://github.com/civicrm/civicrm-core/pull/8724))**
This introduces a feature of environment labels that can be set in
`civicrm.settings.php` and be extended in specially-named settings files. If
the label is anything other than `Production`, outbound email and scheduled
jobs are disabled. See further explanation in the [Sysadmin
Guide](https://docs.civicrm.org/sysadmin/en/master/misc/staging-production/)
### CiviCase
- **[CRM-20958](https://issues.civicrm.org/jira/browse/CRM-20958) Data model:
Track creation+modification times for activities+cases
([10754](https://github.com/civicrm/civicrm-core/pull/10754))**
Adds timestamp columns created_date and modified_date to the tables
`civicrm_activity` and `civicrm_case`
- **[CRM-21052](https://issues.civicrm.org/jira/browse/CRM-21052) Allow opt-out
of embedded case-activity tracking
([10842](https://github.com/civicrm/civicrm-core/pull/10842))**
A new setting, "Enable Embedded Activity Revisions", determines whether each
revision to a case records the change as an activity. This has been the
behavior in the past and will continue to be the default for CiviCase until
the redesign is complete. However, many CiviCase users may prefer to leave
change logging to the log tables that are created when overall CiviCRM logging
is enabled.
### CiviContribute
- **[CRM-21058](https://issues.civicrm.org/jira/browse/CRM-21058) Add Event
filter to PCP contribution report
([10862](https://github.com/civicrm/civicrm-core/pull/10862))**
The Personal Campaign Page report now allows filtering by the title of a PCP's
associated event.
- **[CRM-20990](https://issues.civicrm.org/jira/browse/CRM-20990) Assign
`$contributionStatus` to the Contribution Online message template
([10793](https://github.com/civicrm/civicrm-core/pull/10793))**
The contribution status is now available as a Smarty variable on the receipt
message template for online contributions.
- **[CRM-21019](https://issues.civicrm.org/jira/browse/CRM-21019) Change column
labels ([10813](https://github.com/civicrm/civicrm-core/pull/10813))**
The column headers on accounting batch screens are now clearer.
### CiviEvent
- **[CRM-20507](https://issues.civicrm.org/jira/browse/CRM-20507) Prevent
disclosure of `is_public=0` Custom Groups in email templates
([10661](https://github.com/civicrm/civicrm-core/pull/10661))**
Custom data groups can be public or backend-only as of 4.7.19. This
suppresses non-public fields from email receipts for event registrations.
### CiviMail
- **[CRM-20905](https://issues.civicrm.org/jira/browse/CRM-20905) Simple mail :
Make max emails a hidden config instead of hardcoded value set to 50
([10705](https://github.com/civicrm/civicrm-core/pull/10705))**
The maximum number of emails sent through the quick "send an email" feature is
set to 50. This change allows that number to be overridden through the
setting API or settings file.
### CiviMember
- **[CRM-21152](https://issues.civicrm.org/jira/browse/CRM-21152) Add spec for
MembershipStatus.calc API function
([10944](https://github.com/civicrm/civicrm-core/pull/10944))**
Adds a function to adjust metadata for `Calc` action. The metadata is used for
setting defaults, documentation & validation.
### Drupal Integration
- **[CRM-21016](https://issues.civicrm.org/jira/browse/CRM-21016) Allow Drupal
views to be used for Notes related to contributions
([468](https://github.com/civicrm/civicrm-drupal/pull/468))**
Drupal Views will now join to the `civicrm_note` table for any related entity,
not just contacts.
- **Add Contributions relevant to the Participant record.
([469](https://github.com/civicrm/civicrm-drupal/pull/469))**
Drupal Views will now join to the `civicrm_participant_payment` table,
allowing related contributions to be displayed alongside event registrations.
## <a name="bugs"></a>Bugs resolved
### Core CiviCRM
- **[CRM-21068](https://issues.civicrm.org/jira/browse/CRM-21068)
&lastModified() fails more gracefully.
([10863](https://github.com/civicrm/civicrm-core/pull/10863))**
This change avoids displaying an error if something is missing from the log
entry for a contact when shown in the summary view.
- **[CRM-21099](https://issues.civicrm.org/jira/browse/CRM-21099) Contribution
search: "Total Cancelled Amount" surprisingly includes "refunded" status
([10893](https://github.com/civicrm/civicrm-core/pull/10893))**
In the results of a Find Contributions search, summary numbers are displayed
at the top. One of these is "Total Cancelled Amount" this total included
contributions with a "Refunded" or "Cancelled" status. This total now only
includes contributions with a status of "Cancelled".
- **[CRM-21075](https://issues.civicrm.org/jira/browse/CRM-21075) Notice errors
on contact edit
([10878](https://github.com/civicrm/civicrm-core/pull/10878))**
When a user would edit their record, a series of notices would be generated
because of use of a deprecated function. This change removes those errors.
- **[CRM-21057](https://issues.civicrm.org/jira/browse/CRM-21057) export field
mapping limited to 25 records
([10848](https://github.com/civicrm/civicrm-core/pull/10848))**
This resolves a bug where only 25 saved export mappings were available to
select.
- **[CRM-21124](https://issues.civicrm.org/jira/browse/CRM-21124) Fix DB error
on deduping by criteria when criteria string is too long
([10921](https://github.com/civicrm/civicrm-core/pull/10921))**
- **[CRM-21061](https://issues.civicrm.org/jira/browse/CRM-21061) Fix rare
CiviReport error relating to long report names
([10854](https://github.com/civicrm/civicrm-core/pull/10854))**
The relatively short length of the `report_id` field in the `civicrm_report`
table meant that reports with long names would produce obtuse errors. The
field is now 512 characters long.
- **[CRM-21004](https://issues.civicrm.org/jira/browse/CRM-21004) profile:
unable to copy profiles used for events/contribs/etc.
([10802](https://github.com/civicrm/civicrm-core/pull/10802))**
- **[CRM-21230](https://issues.civicrm.org/jira/browse/CRM-21230) Multi-value
custom field import fail with error message: Call to undefined method
`CRM_Custom_Import_Parser_Api::formatContactParameters`
([11039](https://github.com/civicrm/civicrm-core/pull/11039))**
- **[CRM-21174](https://issues.civicrm.org/jira/browse/CRM-21174) Circular
dependency during upgrade: civicrm_menu.module_data
([10974](https://github.com/civicrm/civicrm-core/pull/10974))**
A field to be created during the upgrade was accidentally loaded as part of
the upgrade.
- **[CRM-21175](https://issues.civicrm.org/jira/browse/CRM-21175) Fatal error on
multiple custom field import
([10975](https://github.com/civicrm/civicrm-core/pull/10975))**
Import mappings now must have a mapping type. This resolves an error that
would appear when a mapping type was missing; now, the mapping type is created
on the fly.
- **[CRM-20533](https://issues.civicrm.org/jira/browse/CRM-20533) 'Update
Indices' System Status action can get tied up (index name already exists,
localised dbs?)
([10908](https://github.com/civicrm/civicrm-core/pull/10908)) (continues
previous work)**
A system check offers to update old or missing table indices when it detects
they are missing. In practice, many sites have equivalent indices to the ones
that are supposedly missing, but the index names differ or the index fields
are listed in a different order. This script has had persistent problems with
attempting to create indices that already exist or incorrectly dropping
indices.
This most recent change deletes false indices automatically when the Update
Indices process is started rather than asking the site administrator. Any
false-looking index that is actually good will simply be replaced when the
missing indices are populated.
- **[CRM-21110](https://issues.civicrm.org/jira/browse/CRM-21110) Relationships
tab on contact summary runs query twice
([10907](https://github.com/civicrm/civicrm-core/pull/10907))**
This streamlines the processing of the contact relationship listing to reduce
the number of queries to run.
- **[CRM-21142](https://issues.civicrm.org/jira/browse/CRM-21142) Installation
fails if PHP XML module isn't installed
([10939](https://github.com/civicrm/civicrm-core/pull/10939))**
The installer now checks that PHP SimpleXML support is present.
- **[CRM-21139](https://issues.civicrm.org/jira/browse/CRM-21139) Font-Awesome
icons not showing on fatal error screen
([10937](https://github.com/civicrm/civicrm-core/pull/10937))**
Now `crm-i.css` is specifically loaded on the fatal error template.
- **[CRM-19933](https://issues.civicrm.org/jira/browse/CRM-19933) Importing
contacts clears out preferred communication method
([10731](https://github.com/civicrm/civicrm-core/pull/10731))**
- **[CRM-21079](https://issues.civicrm.org/jira/browse/CRM-21079) Datetime logs
don't supports timezones
([10874](https://github.com/civicrm/civicrm-core/pull/10874)) (continues
previous work)**
A system check appears if certain database fields are `DATETIME` rather than
`TIMESTAMP`. Due to the complexity of assigning timezones and the possibility
of customizations depending upon those fields, the check merely explains the
situation and recommends using [Doctor
When](https://github.com/civicrm/org.civicrm.doctorwhen), a time lord
extension, to straighten out the situation.
- **[CRM-20970](https://issues.civicrm.org/jira/browse/CRM-20970) long postal
code in db prevents searching by zipcode range
([10781](https://github.com/civicrm/civicrm-core/pull/10781)) (completes
previous work)**
This adds test coverage for the fix which appeared in 4.7.24.
- **[CRM-20790](https://issues.civicrm.org/jira/browse/CRM-20790) CIVICRM-159 -
Import Contacts, Current Employer (Employee of field) is not being imported at
all ([10808](https://github.com/civicrm/civicrm-core/pull/10808))**
Import would fail to record relationships if data for one or both contacts in
the relationship matched existing contacts.
- **[CRM-21049](https://issues.civicrm.org/jira/browse/CRM-21049) Can't create a
RelationshipType record via API with "All Contacts" as a value
([10839](https://github.com/civicrm/civicrm-core/pull/10839))**
This prevented relationship types created in the API where one or both
contacts could be any contact type.
- **[CRM-20993](https://issues.civicrm.org/jira/browse/CRM-20993) API -
Extension get - Cannot filter by ID anymore
([10794](https://github.com/civicrm/civicrm-core/pull/10794))**
- **[CRM-21029](https://issues.civicrm.org/jira/browse/CRM-21029) Activity
report SQL syntax error
([10819](https://github.com/civicrm/civicrm-core/pull/10819))**
A SQL error would appear in the Activity Report, including the Scheduled
Activities dashlet, when no ACL `WHERE` clauses are applicable.
- **[CRM-20858](https://issues.civicrm.org/jira/browse/CRM-20858) Custom fields
migrated even when not asked during merge
([10831](https://github.com/civicrm/civicrm-core/pull/10831))**
- **[CRM-21129](https://issues.civicrm.org/jira/browse/CRM-21129) CLI import
doesn't allow single-column CSVs
([10924](https://github.com/civicrm/civicrm-core/pull/10924))**
- **[CRM-19612](https://issues.civicrm.org/jira/browse/CRM-19612) DB error
deduping a group when rule has more than one field
([10405](https://github.com/civicrm/civicrm-core/pull/10405))**
- **[CRM-19664](https://issues.civicrm.org/jira/browse/CRM-19664) Skip row and
keep importing if matching this contact based on the de-dupe rule would cause
an external ID conflict
([9410](https://github.com/civicrm/civicrm-core/pull/9410))**
### CiviMail
- **[CRM-21077](https://issues.civicrm.org/jira/browse/CRM-21077) Warn the user
when testing outbound mail configuration if CIVICRM_MAIL_LOG is set
([10870](https://github.com/civicrm/civicrm-core/pull/10870))**
When sending a test email from the Outbound Email form, a user would not be
notified if the CiviCRM settings file was set to send all outbound email to a
log file.
- **[CRM-20643](https://issues.civicrm.org/jira/browse/CRM-20643) Fix invalid
bounce type filter for bounce report
([10427](https://github.com/civicrm/civicrm-core/pull/10427))**
A dummy option of `-- please select --` for bounce type was hard-coded as a
filter option. This caused the report to default to this value and not load
any data.
- **[CRM-21000](https://issues.civicrm.org/jira/browse/CRM-21000) Display result
as Mailing on Advance Search produces DB Error
([10798](https://github.com/civicrm/civicrm-core/pull/10798))**
This resolves an error in Advanced Search when the form is set to display
mailings rather than contacts.
- **[CRM-20855](https://issues.civicrm.org/jira/browse/CRM-20855) Disabling
"Search Primary Details Only" causes partial CiviMail delivery failure
([10915](https://github.com/civicrm/civicrm-core/pull/10915))**
- **[CRM-20982](https://issues.civicrm.org/jira/browse/CRM-20982) Fix: Mails
sent via command line fail due to EHLO/HELO being "localhost"
([10785](https://github.com/civicrm/civicrm-core/pull/10785))**
SMTP connections from the command line now attempt to identify themselves with
`EHLO` and the base URL rather than just `EHLO localhost`.
### Backdrop Integration
- **[CRM-21088](https://issues.civicrm.org/jira/browse/CRM-21088) Backdrop class
contains `drupal_` calls that should be changed
([10884](https://github.com/civicrm/civicrm-core/pull/10884))**
This would cause problems if Backdrop compatibility mode was disabled.
- **[CRM-21098](https://issues.civicrm.org/jira/browse/CRM-21098) Prevent
Backdrop admin drop-down menus from appearing beneath CiviCRM admin menu
([10892](https://github.com/civicrm/civicrm-core/pull/10892))**
- **[CRM-21095](https://issues.civicrm.org/jira/browse/CRM-21095) CSS conflicts
between CiviCRM and Backdrop
([10891](https://github.com/civicrm/civicrm-core/pull/10891),
[42](https://github.com/civicrm/civicrm-backdrop/pull/42), and
[41](https://github.com/civicrm/civicrm-backdrop/pull/41))**
### CiviCampaign
- **[CRM-21094](https://issues.civicrm.org/jira/browse/CRM-21094) Minor
improvement to display of columns in Survey Details report
([10889](https://github.com/civicrm/civicrm-core/pull/10889))**
This arranges the columns so that contact-related fields are together and
preceding activity fields.
- **[CRM-21089](https://issues.civicrm.org/jira/browse/CRM-21089) Fatal error on
"Interview Respondents"
([10885](https://github.com/civicrm/civicrm-core/pull/10885))**
### Drupal Integration
- **[CRM-17652](https://issues.civicrm.org/jira/browse/CRM-17652) Symfony
conflict between Civi and Drupal 8
([10694](https://github.com/civicrm/civicrm-core/pull/10694) and
[465](https://github.com/civicrm/civicrm-drupal/pull/465)) (in progress)**
This uses Composer to install dependencies (such as Symfony) in a way that
does not conflict with Drupal 8. It resolves a bug where Drupal 8 sites with
CiviCRM could not install any more modules.
- **[CRM-20838](https://issues.civicrm.org/jira/browse/CRM-20838) Provide alert &
fix method for tables in the CiviCRM Db with no log table
([10628](https://github.com/civicrm/civicrm-core/pull/10628))**
If Drupal and CiviCRM are installed with the same database and logging is
enabled, the logging triggers get confused by the existence of tables created
by the role sync modules. A system check now suggests that corresponding log
tables be created when it notices this.
### CiviMember
- **[CRM-21126](https://issues.civicrm.org/jira/browse/CRM-21126)
member_is_primary not set by default on passing owner in the url
([10923](https://github.com/civicrm/civicrm-core/pull/10923))**
The membership search now allows `owner=1` to be specified as a URL parameter
that populates the "Primary member?" field.
- **[CRM-20571](https://issues.civicrm.org/jira/browse/CRM-20571) Offline / Back
Office Renewal fatal error when "renewal_date" set to far back.
([10822](https://github.com/civicrm/civicrm-core/pull/10822))**
A helpful warning appears when attempting to set a membership renewal date
prior to the join date.
- **[CRM-20966](https://issues.civicrm.org/jira/browse/CRM-20966) Contribution
deleted when relationship deleted, incorrect line items & membership_payments
for second inherited membership created in back end via price set
([10759](https://github.com/civicrm/civicrm-core/pull/10759))**
This resolves a problem where membership contributions would be applied
incorrectly when one contact inherits memberships of separate types from
separate related contacts. This could result in data loss if the relationship
is deleted.
- **[CRM-20955](https://issues.civicrm.org/jira/browse/CRM-20955) Contact's
second membership fails to inherit when created in back end using price set
([10745](https://github.com/civicrm/civicrm-core/pull/10745))**
### CiviContribute
- **[CRM-21055](https://issues.civicrm.org/jira/browse/CRM-21055) Change label
of cancel button
([10845](https://github.com/civicrm/civicrm-core/pull/10845))**
The button to exit the backend contribution form without saving is now labeled
"Close" rather than "Cancel". This now differs from all other forms.
- **[CRM-17040](https://issues.civicrm.org/jira/browse/CRM-17040) Import
Contributions using External Id's causes soft credit to be wrongly associated
([10797](https://github.com/civicrm/civicrm-core/pull/10797))**
This resolves a problem that occurred when importing contributions that have
both soft credit and donor contacts identified by external ID. The
contribution would record the soft credit contact as the actual donor.
- **[CRM-20949](https://issues.civicrm.org/jira/browse/CRM-20949)
BillingBlock.tpl contains wrong paymentProcessor object on initial load of
backend Contribution page.
([10734](https://github.com/civicrm/civicrm-core/pull/10734))**
- **[CRM-21087](https://issues.civicrm.org/jira/browse/CRM-21087) Payment popup
goes weird if you click 'adjust payment amount'.
([10882](https://github.com/civicrm/civicrm-core/pull/10882))**
The pledge payment pop-up caused problems with page focus and covering the
Save button.
- **[CRM-20936](https://issues.civicrm.org/jira/browse/CRM-20936) Hide statuses
on backoffice contribution form
([10718](https://github.com/civicrm/civicrm-core/pull/10718))**
Non-applicable contribution statuses are now suppressed when creating
contributions, event registrations, and memberships on the backend.
- **[CRM-21045](https://issues.civicrm.org/jira/browse/CRM-21045) Multiple email
field shown on Contribution Page.
([10832](https://github.com/civicrm/civicrm-core/pull/10832))**
If a contribution page included a profile with a billing email, the email
field at the top of the contribution page would fail to disappear, resulting
in two HTML fields for the same data. This resolves that bug.
- **[CRM-21047](https://issues.civicrm.org/jira/browse/CRM-21047) TypeError:
financialtypeIds is undefined, on contribution form
([10836](https://github.com/civicrm/civicrm-core/pull/10836))**
This resolves a Javascript error on the backend contribution form.
- **[CRM-20615](https://issues.civicrm.org/jira/browse/CRM-20615) Export only
those batches having status Exported
([10394](https://github.com/civicrm/civicrm-core/pull/10394))**
This prevents batches from bein exported if the status isn't yet set to
"exported".
- **[CRM-21026](https://issues.civicrm.org/jira/browse/CRM-21026) Contribution
count on contact tabs excludes contributions with disabled financial types
([10824](https://github.com/civicrm/civicrm-core/pull/10824))**
- **[CRM-19469](https://issues.civicrm.org/jira/browse/CRM-19469) EWay
transaction receipt not sent when member signs up using front-end form but
works in the CiviCRM back-end
([9973](https://github.com/civicrm/civicrm-core/pull/9973))**
- **[CRM-21043](https://issues.civicrm.org/jira/browse/CRM-21043) Fix Dupe check
of on behalf organisation
([10830](https://github.com/civicrm/civicrm-core/pull/10830))**
When contributing on behalf of an organization, the organization would not be
checked against duplicates and a new contact would be created each time.
- **[CRM-19739](https://issues.civicrm.org/jira/browse/CRM-19739) "New Account
Relationship Option Screen" does not show exception
([10651](https://github.com/civicrm/civicrm-core/pull/10651))**
Creating an invalid account relationship would result in an endless spinning
logo rather than displaying an error.
- **[CRM-21015](https://issues.civicrm.org/jira/browse/CRM-21015) Contribution
page creates recurring contribution even though recurring is not selected
([10835](https://github.com/civicrm/civicrm-core/pull/10835))**
Recurring contributions would be created if a contribution page had the option
for recurring contributions and a membership price set, even if the recurring
contribution checkbox was empty.
- **[CRM-21005](https://issues.civicrm.org/jira/browse/CRM-21005) "Record
Payment" dialogue lacks required field and is clunky
([10817](https://github.com/civicrm/civicrm-core/pull/10817))**
The form for recording a payment did not require a payment method even though
that is necessary. Omitting it would result in a system error rather than a
validation error. Also, the payment amount now defaults to the amount due.
- **[CRM-21031](https://issues.civicrm.org/jira/browse/CRM-21031) Financial type
ID display instead of label in "View Price Options"
([10823](https://github.com/civicrm/civicrm-core/pull/10823))**
- **[CRM-19186](https://issues.civicrm.org/jira/browse/CRM-19186) Subsequent
Installments of Recurring Credit Card Contributions Indicate a Payment
Instrument of Check
([10749](https://github.com/civicrm/civicrm-core/pull/10749))**
- **[CRM-17281](https://issues.civicrm.org/jira/browse/CRM-17281) Pledges
miscalculate when total amount is not an integer and a payment is received
that covers three installments
([10861](https://github.com/civicrm/civicrm-core/pull/10861))**
- **[CRM-21039](https://issues.civicrm.org/jira/browse/CRM-21039) Trying to add
Asset account relationship throws validation error
([10828](https://github.com/civicrm/civicrm-core/pull/10828))**
- **[CRM-20988](https://issues.civicrm.org/jira/browse/CRM-20988) Don't display
option of Export, Delete etc to users who lack that permission
([10791](https://github.com/civicrm/civicrm-core/pull/10791))**
### CiviCase
- **[CRM-20930](https://issues.civicrm.org/jira/browse/CRM-20930) Case Detail
Report cannot filter by "Last Action Date"
([10712](https://github.com/civicrm/civicrm-core/pull/10712))**
- **[CRM-18082](https://issues.civicrm.org/jira/browse/CRM-18082) CiviCase API
Create ignores custom data
([10728](https://github.com/civicrm/civicrm-core/pull/10728))**
### CiviEvent
- **[CRM-20935](https://issues.civicrm.org/jira/browse/CRM-20935) Deleting an
event does not delete links to profiles it used
([10719](https://github.com/civicrm/civicrm-core/pull/10719))**
Rows in `civicrm_uf_join` were not deleted when events were deleted. This
resolves the bug and performs a cleanup of orphaned rows upon upgrade.
- **[CRM-20237](https://issues.civicrm.org/jira/browse/CRM-20237) Event
pricesets copied with long suffix cause DB error
([10929](https://github.com/civicrm/civicrm-core/pull/10929))**
When copied, a price set has a copy ID tacked onto the end of its title. This
change prevents copies of copies from accumulating many copy ID add-ons.
- **[CRM-21069](https://issues.civicrm.org/jira/browse/CRM-21069) Fail more
gracefully on event display with invalid data in the DB
([10865](https://github.com/civicrm/civicrm-core/pull/10865))**
This avoids a database error by suppressing display of participant records
where the event has been deleted in the database.
- **[CRM-20914](https://issues.civicrm.org/jira/browse/CRM-20914) participant
note field breaking export when populated with data over 32 characters
([10700](https://github.com/civicrm/civicrm-core/pull/10700))**
- **[CRM-20933](https://issues.civicrm.org/jira/browse/CRM-20933) Updating Pay
later event registration from backend produces formRule error
([10716](https://github.com/civicrm/civicrm-core/pull/10716))**
- **[CRM-21121](https://issues.civicrm.org/jira/browse/CRM-21121) Event Income
(Summary) report backtrace with 'only_full_group_by'
([10926](https://github.com/civicrm/civicrm-core/pull/10926))**
- **[CRM-20027](https://issues.civicrm.org/jira/browse/CRM-20027) Need 'access
deleted contacts' permission to retrieve loc block addresses using API
([10916](https://github.com/civicrm/civicrm-core/pull/10916))**
Addresses lacking contact IDs because they're used for event locations were
treated like addresses belonging to deleted contacts.
- **[CRM-13309](https://issues.civicrm.org/jira/browse/CRM-13309) Participant
Role on Event's Schedule Reminder form does not populate
([10801](https://github.com/civicrm/civicrm-core/pull/10801))**
The field to restrict scheduled reminders to specific participant roles would
not appear.
- **[CRM-20942](https://issues.civicrm.org/jira/browse/CRM-20942) Email location
type must be 'primary' in profile or user creation won't work for event
([10744](https://github.com/civicrm/civicrm-core/pull/10744))**
### WordPress Integration
- **Fix parameter parsing in wp-cli civicrm api.
([114](https://github.com/civicrm/civicrm-wordpress/pull/114))**
- **[CRM-21166](https://issues.civicrm.org/jira/browse/CRM-21166) WP-CLI
commands fail due to whitespace in regex
([115](https://github.com/civicrm/civicrm-wordpress/pull/115))**
### Internationalization
- **[CRM-19968](https://issues.civicrm.org/jira/browse/CRM-19968) Disable
multiple languages fixes
([9783](https://github.com/civicrm/civicrm-core/pull/9783))**
This patch makes the following tweaks to the SQL queries that run when
disabling multiple languages so that it is more likely to succeed.
1. Column is renamed instead of created and copied, as the copy often leads to
a row size constraint (eg. in civicrm_event when you have some text in
intro_text_lang).
2. Use DROP VIEW IF EXISTS instead of DROP VIEW (supported
in mysql 5.1+). There is more support for IF EXISTS on other SQL functions in
new versions of mysql but we can't use them if we're maintaining
compatibility.
## <a name="misc"></a>Miscellany
- **[CRM-21153](https://issues.civicrm.org/jira/browse/CRM-21153) Fix mispelled
variable ([10945](https://github.com/civicrm/civicrm-core/pull/10945))**
Fixes a misspelled variable
- **[CRM-21065](https://issues.civicrm.org/jira/browse/CRM-21065) Replace some
deprecated slow function calls: some CRM_Core_OptionGroup::values with
CRM_Activity_BAO_ActivityContact::buildOptions
([10860](https://github.com/civicrm/civicrm-core/pull/10860))**
Replace (some not all) CRM_Core_OptionGroup::values with
CRM_Activity_BAO_ActivityContact::buildOptions where it is safe to do so (ie.
parameters map directly).
- **[CRM-20927](https://issues.civicrm.org/jira/browse/CRM-20927) Allow
`civicrm_menu` to store new data in generic column
([10858](https://github.com/civicrm/civicrm-core/pull/10858)) (completes
previous work)**
The schema change is moved to a PHP-based upgrade task rather than a SQL
incremental upgrade query template.
- **[CRM-21036](https://issues.civicrm.org/jira/browse/CRM-21036) Change
deprecated comments to tags so phpstorm marks functions as deprecated
([10825](https://github.com/civicrm/civicrm-core/pull/10825))**
- **[CRM-21023](https://issues.civicrm.org/jira/browse/CRM-21023) Replace
deprecated code and hardcoded IDs with pseudoconstants in Activity BAO
([10816](https://github.com/civicrm/civicrm-core/pull/10816))**
- **(NFC) SettingsStack - Finish incomplete docblock
([10950](https://github.com/civicrm/civicrm-core/pull/10950))**
- **Reinstate accidentally deleted test.
([10938](https://github.com/civicrm/civicrm-core/pull/10938))**
- **NFC remove some unused vars, fix comment
([10886](https://github.com/civicrm/civicrm-core/pull/10886))**
- **Renamed test class.
([10730](https://github.com/civicrm/civicrm-core/pull/10730))**
- **Fix PHP Warnings. Replace fatal with statusBounce. Mark breadcrumbs
parameter as array instead of string so editors don't give a warning
([10888](https://github.com/civicrm/civicrm-core/pull/10888))**
- **(NFC) Update contributor-key.yml
([10894](https://github.com/civicrm/civicrm-core/pull/10894))**
- **(NFC) Improve docs in CONTRIBUTING.md
([10853](https://github.com/civicrm/civicrm-core/pull/10853))**
- **(NFC) SettingsStack - Add test coverage for new helper class
([10867](https://github.com/civicrm/civicrm-core/pull/10867))**
- **[NFC] Simplify method of getting logged in contact ID
([10855](https://github.com/civicrm/civicrm-core/pull/10855))**
- **Update CONTRIBUTORS.txt
([10843](https://github.com/civicrm/civicrm-core/pull/10843))**
- **Update Jon Goldberg in CONTRIBUTORS.txt
([10840](https://github.com/civicrm/civicrm-core/pull/10840))**
- **Klaas Eikelboom (Kainuk Empowerment) is member of CiviCooP
([10812](https://github.com/civicrm/civicrm-core/pull/10812))**
- **(NFC) Lint civicrm.drush.inc
([473](https://github.com/civicrm/civicrm-drupal/pull/473))**
## <a name="credits"></a>Credits
This release was developed by the following code authors:
Aaron Jones; Abhikalak Consultants - Amal Sharma; AGH Strategies - Alice Frumin,
Andrew Hunt; Agileware - Agileware Team, Justin Freeman; Australian Greens -
Seamus Lee; CEDC - Laryn Kragt Bakker; Circle Interactive - Dave Jenkins;
CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; CiviFirst - John
Kirk; CompuCorp - Camilo Rodriguez; Coop SymbioTIC - Mathieu Lutfy; Eaiman
Shoshi; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; JMA
Consulting - Edsel Lopez, Monish Deb, Pradeep Nayak; John Kingsnorth; Joinery -
Allen Shaw; Ken West; Left Join Labs - Sean Madsen; Lemniscus - Noah Miller;
Lighthouse Design and Consulting - Brian Shaughnessy; Megaphone Technology
Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; myDropWizard - David
Snopek; Oxfam Germany - Thomas Schüttler; Progressive Technology Project - Jamie
McClelland; Randy Tobias; Tadpole Collective - Kevin Cristiano; Wikimedia
Foundation - Eileen McNaughton
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
Artful Robot - Rich Lott; Barbara Miller; Black Brick Software - David Hayes;
Blackfly Solutions - Alan Dixon; Brian Hay; Brian McFee; British Humanist
Association - Andrew West, William Gordon; Christian Wach; Circle Interactive -
Andrew Walker, Martin Castle; CiviCoop - Jaap Jansma, Klaas Eikelboom; CiviDesk -
Nicolas Ganivet; Community Builders - Andrew Perry; CompuCorp - Guanhuan Chen,
Omar Abu Hussein; Dave D; Dave Greenberg; Dave Rolsky; David Hepper; Davis Media
Access - Darrick Servis; Deepak Srivastava; Donald Hirst; Donald Lobo; Effy
Elden; Electronic Frontier Foundation - Mark Burdett; eQuality Technology - Greg
Rundlett; Forest CRM Consulting - Tamar Meir; Fuzion - Chris Burgess, Peter
Davis; Greenleaf Advancement - Guy Iaccarino; Hemophilia of North Carolina -
Charles Register; JMA Consulting - Joe Murray; Joel Stevens; Johan Vervloet;
Klangsoft - David Reedy Jr; Korlon - Stuart Gaston; Lullabot - Nate Lampton;
Manish Zope; Marc Brazeau; Mathias Consulting - Cheryl Chase; Michal Mach;
National Democratic Institute - Evan Summers; Nubay Services - David Tarrant;
Openflows - Eric Goldhagen; Palante Technology Cooperative - Joseph Lacey; Phil
McKerracher; Rareș Pamfil; Responsive Development Technologies - Thomas
Nilefalk; Rex Keal; Richard van Oosterhout; Saurabh Batra; Semper IT - Karin
Gerritsen; SEN Magazine - Jeremy Nicholls; Shailesh Lende; Skvare - Mark Hanna;
Squiffle Consulting - Aidan Saunders; Steve Binkowski; Team Expansion - Greg
Harris; Tobias Lounsbury; Wikimedia Foundation - Elliott Eggleston
## <a name="feedback"></a>Feedback
These release notes are edited by Alice Frumin and Andrew Hunt. If you'd like
to provide feedback on them, please login to https://chat.civicrm.org/civicrm
and contact `@agh1`.

View file

@ -0,0 +1,31 @@
# CiviCRM 4.7.26
Released Nov 1, 2017
- **[Security advisories](#security)**
- **[Credits](#credits)**
## <a name="security"></a>Security advisories
- **[CIVI-SA-2017-08](https://civicrm.org/advisory/civi-sa-2017-08-xss-in-html-link-attributes)** XSS in HTML link attributes
- **[CIVI-SA-2017-09](https://civicrm.org/advisory/civi-sa-2017-09-shell-injection-vulerabilty-in-smarty)** Shell injection vulerabilty in Smarty
- **[CIVI-SA-2017-10](https://civicrm.org/advisory/civi-sa-2017-10-xss-scripting-in-preimum-product-name)** XSS scripting in preimum product name
- **[CIVI-SA-2017-11](https://civicrm.org/advisory/civi-sa-2017-11-xss-in-dedupe-rules)** XSS in dedupe rules
- **[CIVI-SA-2017-12](https://civicrm.org/advisory/civi-sa-2017-12-xss-in-tag-description)** XSS in tag description
- **[CIVI-SA-2017-13](https://civicrm.org/advisory/civi-sa-2017-13-selectedchild-url-paramater-not-properly-validated-for-civicrm-message)** SelectedChild URL parameter not properly validated
- **[CIVI-SA-2017-14](https://civicrm.org/advisory/civi-sa-2017-14-xss-in-search-critiera-description)** XSS in Search Critiera Description
- **[CIVI-SA-2017-15](https://civicrm.org/advisory/civi-sa-2017-15-extension-key-not-properly-validated-when-adding-or-disabling-or)** Extension key not properly validated
- **[CIVI-SA-2017-16](https://civicrm.org/advisory/civi-sa-2017-16-sql-injection-risk-in-civireports-listing)** SQL injection risk in CiviReports
## <a name="credits"></a>Credits
This release was developed by the following code authors:
Australian Greens - Seamus Lee; Left Join Labs - Sean Madsen
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
CiviCRM - Coleman Watts; JMA Consulting - Monish Deb; Wikimedia Foundation -
Eileen McNaughton

View file

@ -0,0 +1,615 @@
# CiviCRM 4.7.27
Released November 1, 2017
- **[Synopsis](#synopsis)**
- **[Features](#features)**
- **[Bugs resolved](#bugs)**
- **[Miscellany](#misc)**
- **[Credits](#credits)**
- **[Feedback](#feedback)**
## <a name="synopsis"></a>Synopsis
| *Does this version...?* | |
|:----------------------------------------------------------- |:-------:|
| Fix security vulnerabilities? | no |
| **Change the database schema?** | **yes** |
| **Alter the API?** | **yes** |
| **Require attention to configuration options?** | **yes** |
| Fix problems installing or upgrading to a previous version? | no |
| **Introduce features?** | **yes** |
| **Fix bugs?** | **yes** |
## <a name="features"></a>Features
### Core CiviCRM
- **[CRM-21234](https://issues.civicrm.org/jira/browse/CRM-21234) Missing
subdivisions of Tajikistan
([11041](https://github.com/civicrm/civicrm-core/pull/11041))**
The list of states and provinces now contains the capital territory and
districts under republic administration of Tajikistan, which were added to ISO
3166-2 recently.
- **[CRM-21195](https://issues.civicrm.org/jira/browse/CRM-21195) Adding the
ability to add icons to menu items
([11028](https://github.com/civicrm/civicrm-core/pull/11028),
[11025](https://github.com/civicrm/civicrm-core/pull/11025), and
[10996](https://github.com/civicrm/civicrm-core/pull/10996))**
When editing navigation menu items, you may now choose to display an icon from
the Font Awesome library.
- **[CRM-21157](https://issues.civicrm.org/jira/browse/CRM-21157) Convert
civicrm_subscription_history.date to timestamp from datetime for new installs
([10954](https://github.com/civicrm/civicrm-core/pull/10954))**
The group subscription date field will now be created as a timestamp field
when installing CiviCRM. Upgrading sites will be left as-is but may use the
Doctor When utility to convert dates.
- **[CRM-20630](https://issues.civicrm.org/jira/browse/CRM-20630) Find
Activities: search criteria passing with URL parameters
([10957](https://github.com/civicrm/civicrm-core/pull/10957))**
Query parameters in the Activity Search may now be populated using URL
parameters along with `force=1`. This allows a direct link to a listing of a
subset of activities.
- **[CRM-21086](https://issues.civicrm.org/jira/browse/CRM-21086) Allow Inline
View of Files Instead of Download
([10883](https://github.com/civicrm/civicrm-core/pull/10883))**
Adding the URL parameter `download=0` to a file link will now display the file
within the browser rather than downloading it. This allows for files to be
rendered inline.
- **[CRM-21170](https://issues.civicrm.org/jira/browse/CRM-21170) Provide option
to filter by contact id & external id
([10966](https://github.com/civicrm/civicrm-core/pull/10966))**
Contact selection boxes on other entities (such as backend contribution or
membership forms) now offer the ability to filter by contact ID or external
identifier.
- **[CRM-21125](https://issues.civicrm.org/jira/browse/CRM-21125) permit class
assignment on links in reports
([10922](https://github.com/civicrm/civicrm-core/pull/10922))**
Report developers can now set a variable class name for linked fields in
reports.
- **[CRM-21109](https://issues.civicrm.org/jira/browse/CRM-21109) Creating
contacts is slow, part 2 of 2: Smart group caching
([10943](https://github.com/civicrm/civicrm-core/pull/10943))**
CSV imports through the command line now clear the smart group cache once per
import rather than once per line.
### CiviCampaign
- **[CRM-21063](https://issues.civicrm.org/jira/browse/CRM-21063) Survey detail
report lacks date options
([10857](https://github.com/civicrm/civicrm-core/pull/10857)) (partially
complete)**
The interview date is now available as a column, filter, and ordering option
on the Survey Detail report. However, the date display localization is still
forthcoming.
### CiviCase
- **[CRM-21182](https://issues.civicrm.org/jira/browse/CRM-21182) Activity API -
fetch case details
([10979](https://github.com/civicrm/civicrm-core/pull/10979))**
Results of an `Activity.get` API request can now return data about a case that
the activity is filed to.
- **[CRM-21113](https://issues.civicrm.org/jira/browse/CRM-21113) find cases:
search by case ID and subject
([10911](https://github.com/civicrm/civicrm-core/pull/10911))**
You can now search by case ID or case subject in the Find Cases and Advanced
Search forms. The layout of the case search fields is also modified.
### CiviContribute
- **[CRM-21189](https://issues.civicrm.org/jira/browse/CRM-21189) Add permission
for Close and reopen Batch
([10983](https://github.com/civicrm/civicrm-core/pull/10983))**
Four new permissions are added to control access to accounting batches:
- close own manual batches
- close all manual batches
- reopen own manual batches
- reopen own manual batches
Administrators should consider whether to grant these permissions to users who
have the "edit all manual batches" or "edit own manual batches" permissions,
which handled access to close and reopen batches.
- **[CRM-12167](https://issues.civicrm.org/jira/browse/CRM-12167) Add support
for admin-only fee / price field value options
([10902](https://github.com/civicrm/civicrm-core/pull/10902))**
Individual options within a price field can now be restricted so that they can
only be chosen by administrators.
- **[CRM-20852](https://issues.civicrm.org/jira/browse/CRM-20852) Show tax term
in UI (eg. VAT)
([10640](https://github.com/civicrm/civicrm-core/pull/10640))**
The term describing the tax (e.g. "VAT", "HST") is now displayed in
contribution details when tax is applied.
- **[CRM-20889](https://issues.civicrm.org/jira/browse/CRM-20889) Toggle
check_number field on backoffice form as payment form fields
([10680](https://github.com/civicrm/civicrm-core/pull/10680))**
Check number now appears as a detail of the payment when paying by check rather than an attribute
of the contribution as a whole.
- **[CRM-21106](https://issues.civicrm.org/jira/browse/CRM-21106) Move financial
type ACL clause for reports into extension
([10904](https://github.com/civicrm/civicrm-core/pull/10904)) (preliminary
work)**
A system check and upgrade message now alert users who use financial type ACLs
but have not yet installed the "Access Control by Financial Type for Reports"
extension. These features will soon be removed from core CiviCRM.
### CiviEvent
- **[CRM-21160](https://issues.civicrm.org/jira/browse/CRM-21160) Make
event_type_id available in event message templates.
([10977](https://github.com/civicrm/civicrm-core/pull/10977))**
Event message templates now can include `{$event_type_id}` to display the ID
of the event type.
### CiviMember
- **[CRM-21236](https://issues.civicrm.org/jira/browse/CRM-21236) Make contact
custom fields available in Membership Detail report
([11042](https://github.com/civicrm/civicrm-core/pull/11042))**
Custom fields about contacts can now be included as columns and filters on the
Membership Detail report.
### Backdrop Integration
- **[CRM-21217](https://issues.civicrm.org/jira/browse/CRM-21217) Enable E2E
tests for Backdrop CMS
([11021](https://github.com/civicrm/civicrm-core/pull/11021))**
End-to-end tests now include Backdrop.
### WordPress Integration
- **[CRM-17633](https://issues.civicrm.org/jira/browse/CRM-17633) WordPress in
own directory breaks CiviCRM
([11031](https://github.com/civicrm/civicrm-core/pull/11031) and
[105](https://github.com/civicrm/civicrm-wordpress/pull/105))**
CiviCRM now supports a non-default but acceptable WordPress configuration
where WordPress files are in a subdirectory of the site root.
- **[CRM-21243](https://issues.civicrm.org/jira/browse/CRM-21243) Logo in WP
menu doesn't follow standard
([118](https://github.com/civicrm/civicrm-wordpress/pull/118))**
The CiviCRM icon in the WordPress left-side menu now is a SVG that adopts the
appropriate colors as the menu item is highlighted or selected.
## <a name="bugs"></a>Bugs resolved
### Core CiviCRM
- **[CRM-21229](https://issues.civicrm.org/jira/browse/CRM-21229) Manage Group
page is slow if you have smart groups
([11033](https://github.com/civicrm/civicrm-core/pull/11033)) (partially
resolved)**
The Manage Groups page now will display "Unknown" for the count of smart group
members where the smart group cache is out of date. You can click the button
to regenerate the smart group cache if you want to see the up-to-date counts.
- **[CRM-21247](https://issues.civicrm.org/jira/browse/CRM-21247) User Record
link (in the Actions section of a contact record summary) is broken
([11057](https://github.com/civicrm/civicrm-core/pull/11057))**
This removes an extraneous `cid=` appended to the user record link.
- **[CRM-21241](https://issues.civicrm.org/jira/browse/CRM-21241) Spinning logo
is too jumpy ([11046](https://github.com/civicrm/civicrm-core/pull/11046))**
The CiviCRM logo in the navigation menu has been modified so that it is
centered on its axis of rotation and spins smoothly. The spinning logo that
appears while pop-up windows load now is the actual CiviCRM logo and spins
more slowly and smoothly.
- **[CRM-21110](https://issues.civicrm.org/jira/browse/CRM-21110) Relationships
tab on contact summary runs query twice
([11009](https://github.com/civicrm/civicrm-core/pull/11009)) (improvement on
previous resolution)**
This further simplifies the query to get a contact's total number of
relationships.
- **[CRM-21223](https://issues.civicrm.org/jira/browse/CRM-21223) Number and
Money fields are not set to NULL in the database
([11037](https://github.com/civicrm/civicrm-core/pull/11037)) (preliminary
work)**
This adds tests to diagnose the handling of null default values for certain
fields in the database.
- **[CRM-21227](https://issues.civicrm.org/jira/browse/CRM-21227) Fix issues in
CRM_Core_Page_run test suite following merge of PR #10435
([11032](https://github.com/civicrm/civicrm-core/pull/11032))**
This fixes some places where PHP notices would appear because keys had been
presumed to be set in certain arrays of default values.
- **[CRM-21202](https://issues.civicrm.org/jira/browse/CRM-21202) DataTables
warning: table id=dupePairs
([11004](https://github.com/civicrm/civicrm-core/pull/11004))**
This prevents a warning that would pop up after batch merge of duplicates has
run.
- **[CRM-16836](https://issues.civicrm.org/jira/browse/CRM-16836) Basic Search
form group select does not respect ACLs
([11013](https://github.com/civicrm/civicrm-core/pull/11013))**
- **[CRM-21178](https://issues.civicrm.org/jira/browse/CRM-21178) Custom fields
of type "Link" are no longer clickable
([10985](https://github.com/civicrm/civicrm-core/pull/10985))**
- **[CRM-21169](https://issues.civicrm.org/jira/browse/CRM-21169) Fix broken
inline edit for profiles
([10964](https://github.com/civicrm/civicrm-core/pull/10964))**
A Javascript error due to a function removed from jQuery UI caused the whole
inline profile edit interface to break.
- **[CRM-21172](https://issues.civicrm.org/jira/browse/CRM-21172) Fix 'Edit
Contact Information' link on contact dashboard
([10969](https://github.com/civicrm/civicrm-core/pull/10969))**
A fatal exception would occur when clicking "Edit Contact Information" on a
related contact in the user dashboard.
- **[CRM-20217](https://issues.civicrm.org/jira/browse/CRM-20217) phone based
dedupe rule fails to match when importing
([9925](https://github.com/civicrm/civicrm-core/pull/9925))**
- **[CRM-16964](https://issues.civicrm.org/jira/browse/CRM-16964) Importing
contact custom data doesn't respect the Fill option
([10838](https://github.com/civicrm/civicrm-core/pull/10838))**
Custom fields with values would be overwritten by imported values even when
the import is using the Fill mode for matched contacts.
- **[CRM-21330](https://issues.civicrm.org/jira/browse/CRM-21330) Create
Activity gives fatal error on dmaster
([11157](https://github.com/civicrm/civicrm-core/pull/11157))**
- **[CRM-21267](https://issues.civicrm.org/jira/browse/CRM-21267) Error 500 -
Call to undefined method CRM_Contact_Import_Parser::formatCustomDate
([11143](https://github.com/civicrm/civicrm-core/pull/11143))**
### CiviCase
- **[CRM-21114](https://issues.civicrm.org/jira/browse/CRM-21114) file to case
doesn't transfer activity assignees
([10912](https://github.com/civicrm/civicrm-core/pull/10912))**
### CiviContribute
- **[CRM-21201](https://issues.civicrm.org/jira/browse/CRM-21201) Tax
recalculated when pay later contribution is completed using Pay Now
([11026](https://github.com/civicrm/civicrm-core/pull/11026))**
This resolves a problem when tax would be recalculated and tacked onto the
amount due during the course of completing pay-later contributions.
- **[CRM-21205](https://issues.civicrm.org/jira/browse/CRM-21205) batch list
does not display accurate currency
([11008](https://github.com/civicrm/civicrm-core/pull/11008))**
Transactions listed in financial batches now display the specific
transaction's currency rather than the default system currency.
- **[CRM-20276](https://issues.civicrm.org/jira/browse/CRM-20276) When editing a
contribution the value in civicrm_financial_item_amount is not updated
([10970](https://github.com/civicrm/civicrm-core/pull/10970))**
- **[CRM-21220](https://issues.civicrm.org/jira/browse/CRM-21220) Invoice due
date format spacing correction
([11024](https://github.com/civicrm/civicrm-core/pull/11024))**
- **[CRM-21199](https://issues.civicrm.org/jira/browse/CRM-21199) Remove
dependancy for 'Default invoice payment page'
([11003](https://github.com/civicrm/civicrm-core/pull/11003))**
The option to choose a default invoice payment page is no longer obscured if
deferred revenue is disabled.
- **[CRM-21038](https://issues.civicrm.org/jira/browse/CRM-21038) Billing and CC
fields shown when payment processor not selected.
([10826](https://github.com/civicrm/civicrm-core/pull/10826))**
Contribution pages may have price sets where no option is selected by default.
In this case, when the total contribution is zero, no payment processor is
selected. However, a bug would display credit card and billing address fields
incorrectly. This change resolves this bug.
- **[CRM-18367](https://issues.civicrm.org/jira/browse/CRM-18367) Fatal error on
Contribution logging summary report (possibly remove - see comment)
([10987](https://github.com/civicrm/civicrm-core/pull/10987))**
The Contribute Logging Report--both summary and detail--have been removed
because they have not worked properly for years.
- **[CRM-20999](https://issues.civicrm.org/jira/browse/CRM-20999) Multiple
elements share same id `auto_renew` value on live contribution page.
([10834](https://github.com/civicrm/civicrm-core/pull/10834))**
- **[CRM-21134](https://issues.civicrm.org/jira/browse/CRM-21134) e-notice
errors when using a processor extension
([10935](https://github.com/civicrm/civicrm-core/pull/10935))**
In some circumstances, PHP notices for undefined indexes would appear due to
parameter names that were presumed to exist.
- **[CRM-21221](https://issues.civicrm.org/jira/browse/CRM-21221) Precedence
order logic bug in Contribution.completetransaction
([11027](https://github.com/civicrm/civicrm-core/pull/11027))**
This resolves a bug that was unlikely to cause real-life problems but could
theoretically cause false failures of the `Contribution.completetransaction`
API.
- **[CRM-20750](https://issues.civicrm.org/jira/browse/CRM-20750) Incorrect
financial trxn entries when payment instrument is changed on backoffice
Contribution edit form
([10980](https://github.com/civicrm/civicrm-core/pull/10980) and
[10920](https://github.com/civicrm/civicrm-core/pull/10920))**
- **[CRM-21187](https://issues.civicrm.org/jira/browse/CRM-21187) Fix:
Completing an existing contribution using completetransaction does not respect
currency on financial_trxn record
([10982](https://github.com/civicrm/civicrm-core/pull/10982))**
This resolves a bug where payments made against pending contributions would
arrive as the default currency rather than the currency specified by the
transaction.
### CiviEvent
- **[CRM-21196](https://issues.civicrm.org/jira/browse/CRM-21196) Event reports
localization ([10997](https://github.com/civicrm/civicrm-core/pull/10997))**
A number of previously unhandled strings are now sent through translation.
- **[CRM-20657](https://issues.civicrm.org/jira/browse/CRM-20657) Multiple
events purchased from webform lists only single participant details in mail
received ([10439](https://github.com/civicrm/civicrm-core/pull/10439))**
The Participant BAO didn't accurately handle event registrations with multiple
top-level participants.
- **[CRM-21127](https://issues.civicrm.org/jira/browse/CRM-21127) Event API
return request params format is partially outdated
([10984](https://github.com/civicrm/civicrm-core/pull/10984))**
The Event API would expect an old format for specifying the fields to return.
- **[CRM-21133](https://issues.civicrm.org/jira/browse/CRM-21133) Price set
error with NULL financial types
([10947](https://github.com/civicrm/civicrm-core/pull/10947))**
This resolves a bug where the newly-created price set's financial type would
be set to `NULL` when converting an event's registration options to a price
set. This would cause the price set to be missing when managing the event.
### CiviGrant
- **[CRM-20460](https://issues.civicrm.org/jira/browse/CRM-20460) Grant Report
incorrect where clause
([11036](https://github.com/civicrm/civicrm-core/pull/11036))**
### CiviMail
- **[CRM-20892](https://issues.civicrm.org/jira/browse/CRM-20892) Same mailing
open in two windows can overwrite data on scheduled mailings
([11211](https://github.com/civicrm/civicrm-core/pull/11211) and
[10953](https://github.com/civicrm/civicrm-core/pull/10953))**
A new `modified_date` prevents a CiviMail window from saving mailing data if
the mailing has been saved (in another tab or by another user) since the
window loaded the mailing information.
### CiviMember
- **[CRM-20636](https://issues.civicrm.org/jira/browse/CRM-20636) Notice fix
while updating membership without payment
([10412](https://github.com/civicrm/civicrm-core/pull/10412))**
This prevents a PHP notice from appearing when updating a membership with no
payments.
- **[CRM-15861](https://issues.civicrm.org/jira/browse/CRM-15861) Offline
membership renewal doesn't display priceset choices
([10887](https://github.com/civicrm/civicrm-core/pull/10887)) (preliminary
work)**
This consolidates some code for choosing the default membership type.
- **[CRM-21198](https://issues.civicrm.org/jira/browse/CRM-21198) Completing
payment for partially paid membership doesn't change membership status
([11006](https://github.com/civicrm/civicrm-core/pull/11006))**
- **[CRM-21183](https://issues.civicrm.org/jira/browse/CRM-21183) Updating
Partially paid contribution to Completed doesn't update membership
([10981](https://github.com/civicrm/civicrm-core/pull/10981))**
- **[CRM-21117](https://issues.civicrm.org/jira/browse/CRM-21117) Line item not
shown in mails when paying later for membership priceset
([10978](https://github.com/civicrm/civicrm-core/pull/10978))**
- **[CRM-20881](https://issues.civicrm.org/jira/browse/CRM-20881) Backend
Membership status set to pending if contribution status label 'Completed' is
renamed ([10670](https://github.com/civicrm/civicrm-core/pull/10670))**
- **[CRM-21314](https://issues.civicrm.org/jira/browse/CRM-21314) Credit card
block missing from membership payment form
([11140](https://github.com/civicrm/civicrm-core/pull/11140))**
### Drupal Integration
- **[CRM-21156](https://issues.civicrm.org/jira/browse/CRM-21156) CiviCRM Rules
does not show all available Groups
([478](https://github.com/civicrm/civicrm-drupal/pull/478))**
The list of CiviCRM groups available in the Rules module was limited to 25.
- **[CRM-20937](https://issues.civicrm.org/jira/browse/CRM-20937) civicrm engage
breaks birth date field
([464](https://github.com/civicrm/civicrm-drupal/pull/464))**
The CiviEngage module ships with template overrides, and outdated templates
broke the birth date field.
### Joomla Integration
- **[CRM-21300](https://issues.civicrm.org/jira/browse/CRM-21300) Joomla: Trying
to get property of non-object in CRM/Core/Permission/Joomla.php
([11135](https://github.com/civicrm/civicrm-core/pull/11135))**
This resolves an error that would appear due to the database object bing
`null` in some cases.
### WordPress Integration
- **[CRM-21168](https://issues.civicrm.org/jira/browse/CRM-21168) WordPress
plugin wiki/support links are incorrect
([116](https://github.com/civicrm/civicrm-wordpress/pull/116))**
- **[CRM-21166](https://issues.civicrm.org/jira/browse/CRM-21166) WP-CLI
commands fail due to whitespace in regex
([115](https://github.com/civicrm/civicrm-wordpress/pull/115))**
## <a name="misc"></a>Miscellany
- **[CRM-21216](https://issues.civicrm.org/jira/browse/CRM-21216) Replace
member_BAO_membershiptype_getMembershipTypesByOrg with API equivalent
([11029](https://github.com/civicrm/civicrm-core/pull/11029) and
[11020](https://github.com/civicrm/civicrm-core/pull/11020))**
- **[CRM-20226](https://issues.civicrm.org/jira/browse/CRM-20226) Parent Group
do not inherit child group contacts
([11011](https://github.com/civicrm/civicrm-core/pull/11011)) (follow-up
work)**
Comments were added to the code.
- **Fixing type (missing function call) in example for hook_civicrm_alterAngular
([10952](https://github.com/civicrm/civicrm-core/pull/10952))**
- **[NFC] comments clean up in test classes.
([10963](https://github.com/civicrm/civicrm-core/pull/10963))**
- **templates/CRM/PCP/Form/Campaign.tpl: remove comment (not relevant).
([10959](https://github.com/civicrm/civicrm-core/pull/10959))**
- **Correct spelling.
([10955](https://github.com/civicrm/civicrm-core/pull/10955))**
- **Civilint civicrm_og_sync module
([489](https://github.com/civicrm/civicrm-drupal/pull/489))**
- **Civilint civicrm_user.inc
([490](https://github.com/civicrm/civicrm-drupal/pull/490))**
- **Lint CiviCRM Rules module
([477](https://github.com/civicrm/civicrm-drupal/pull/477))**
- **Remove CiviTest.module.sample as been replaced with the CiviCRM Dev Docs
([492](https://github.com/civicrm/civicrm-drupal/pull/492))**
- **NFC Civilint civicrm_group_roles module
([479](https://github.com/civicrm/civicrm-drupal/pull/479))**
- **Run Civilint against first half of civicrm_handler_field files
([485](https://github.com/civicrm/civicrm-drupal/pull/485))**
- **Civilint views plugins files
([483](https://github.com/civicrm/civicrm-drupal/pull/483))**
- **Lint Civitheme module
([475](https://github.com/civicrm/civicrm-drupal/pull/475))**
- **Civilint civicrm_handler_field_website.inc
([484](https://github.com/civicrm/civicrm-drupal/pull/484))**
- **(NFC) Lint civicrm.config.php.drupal
([474](https://github.com/civicrm/civicrm-drupal/pull/474))**
- **Civilint Some views files and HookTest file
([476](https://github.com/civicrm/civicrm-drupal/pull/476))**
- **NFC Civilint civicrm_member_roles
([480](https://github.com/civicrm/civicrm-drupal/pull/480))**
- **NFC Civilint civicrm_contact_ref module
([481](https://github.com/civicrm/civicrm-drupal/pull/481))**
- **[CRM-21315](https://issues.civicrm.org/jira/browse/CRM-21315) (intra-rc
regression) pay_later processor showing up in list of available processors
([11141](https://github.com/civicrm/civicrm-core/pull/11141))**
- **[CRM-21285](https://issues.civicrm.org/jira/browse/CRM-21285) Buildkit
Installs failing for WordPress
([11112](https://github.com/civicrm/civicrm-core/pull/11112) and
[11105](https://github.com/civicrm/civicrm-core/pull/11105))**
## <a name="credits"></a>Credits
This release was developed by the following code authors:
AGH Strategies - Alice Frumin, Andrew Hunt; Agileware - Alok Patel; Australian
Greens - Seamus Lee; Blackfly Solutions - Alan Dixon; Chris Burgess; Circle
Interactive - Dave Jenkins; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Sunil
Pawar, Yashodha Chaku; CompuCorp - Camilo Rodriguez, Kacper Warda, Michael
Devery, Omar Abu Hussein; Coop SymbioTIC - Mathieu Lutfy; Eli Lisseck; Francesc
Bassas i Bullich; Fuzion - Jitendra Purohit; Ginkgo Street Labs - Frank Gómez;
JMA Consulting - Monish Deb, Pradeep Nayak; Left Join Labs - Sean Madsen;
Lighthouse Design and Consulting - Brian Shaughnessy; MJW Consulting - Matthew
Wire; Pawel Nowak; Progressive Technology Project - Jamie McClelland; Skvare -
Mark Hanna; Tadpole Collective - Kevin Cristiano; Third Sector Design - Michael
McAndrew; Wikimedia Foundation - Eileen McNaughton
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
Adam Zilkie; Agileware - Agileware Team; Artful Robot - Rich Lott; Christian
Wach; Circle Interactive - Martin Castle; CiviDesk - Nicolas Ganivet; Coop
SymbioTIC - Guillaume Boudrias, Samuel Vanhove; Custom Websites to Go - Julie
Hall; CYIM - Matthias de Mauroy; Dave Greenberg; Freeform Solutions - Herb van
den Dool; JMA Consulting - Joe Murray; John Kingsnorth; Joinery - Allen Shaw;
Joseph Lacey; Korlon - Stuart Gaston; Marc Brazeau; MC3 - Graham Mitchell;
Megaphone Technology Consulting - Jon Goldberg; Mohamed Ziada; Olivier Tétard;
Openflows - Eric Goldhagen; Semper IT - Karin Gerritsen; Web Access - Kurund
Jalmi; XIMA - Philipp Michael
## <a name="feedback"></a>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`.

View file

@ -0,0 +1,662 @@
# CiviCRM 4.7.28
Released December 6, 2017
- **[Synopsis](#synopsis)**
- **[Features](#features)**
- **[Bugs resolved](#bugs)**
- **[Miscellany](#misc)**
- **[Credits](#credits)**
- **[Feedback](#feedback)**
## <a name="synopsis"></a>Synopsis
| *Does this version...?* | |
|:----------------------------------------------------------- |:-------:|
| Fix security vulnerabilities? | no |
| **Change the database schema?** | **yes** |
| **Alter the API?** | **yes** |
| Require attention to configuration options? | no |
| Fix problems installing or upgrading to a previous version? | no |
| **Introduce features?** | **yes** |
| **Fix bugs?** | **yes** |
## <a name="features"></a>Features
### Core CiviCRM
- **[CRM-16243](https://issues.civicrm.org/jira/browse/CRM-16243) Dependency
management for extensions
([11173](https://github.com/civicrm/civicrm-core/pull/11173) and
[11101](https://github.com/civicrm/civicrm-core/pull/11101))**
Extensions can now specify other extensions they depend on. When enabling an
extension, the requisite extensions will be automatically enabled first.
However, for now at least, this does not automatically download those
extensions.
- **[CRM-20769](https://issues.civicrm.org/jira/browse/CRM-20769) Allow for
Button Text on profiles to be overriden in settings
([10557](https://github.com/civicrm/civicrm-core/pull/10557))**
You can now enter custom labels for the Save and Cancel buttons on profiles in
Create or Edit modes.
- **[CRM-21322](https://issues.civicrm.org/jira/browse/CRM-21322) create hook to
modify entityRef fields
([11192](https://github.com/civicrm/civicrm-core/pull/11192))**
A [new
hook](https://docs.civicrm.org/dev/en/latest/hooks/hook_civicrm_alterEntityRefParams/)
allows extension developers to modify the parameters for entity reference
fields that appear in a form.
- **[CRM-21195](https://issues.civicrm.org/jira/browse/CRM-21195) Adding the
ability to add icons to menu items
([11054](https://github.com/civicrm/civicrm-core/pull/11054)) (follow-up work)**
This offers a slight adjustment to the markup for menu item icons.
- **[CRM-21262](https://issues.civicrm.org/jira/browse/CRM-21262) Add a check
for incorrect Resource URL
([11067](https://github.com/civicrm/civicrm-core/pull/11067))**
A message will now appear on the Status Report if a site's CiviCRM Resource
URL is set incorrectly.
- **[CRM-20903](https://issues.civicrm.org/jira/browse/CRM-20903) Improve
ordering of dedupe rules
([11109](https://github.com/civicrm/civicrm-core/pull/11109) and
[11098](https://github.com/civicrm/civicrm-core/pull/11098))**
Duplicate matching rules are now displayed in a consistent order: first the
supervised and unsupervised rules, and then the general use rules in
alphabetical order by title.
- **[CRM-20304](https://issues.civicrm.org/jira/browse/CRM-20304) Add option to
alphabetize option values
([11045](https://github.com/civicrm/civicrm-core/pull/11045))**
Custom field options can now be alphabetized in one click.
- **[CRM-21179](https://issues.civicrm.org/jira/browse/CRM-21179) Dashlet -
Charts ([11005](https://github.com/civicrm/civicrm-core/pull/11005))
(preliminary work)**
CiviCRM now ships with the dc.js, d3.js, and crossfilter.js libraries. These
historically have been provided by the Civisualize extension, but they are now
available for report developers who don't want the full set of Civisualize
features.
- **[CRM-21122](https://issues.civicrm.org/jira/browse/CRM-21122) Support
selection of smart groups on Contact Dashboard
([10925](https://github.com/civicrm/civicrm-core/pull/10925))**
Smart Groups with Public Pages visibility are now available for users to join
them through the User Dashboard.
- **[CRM-21379](https://issues.civicrm.org/jira/browse/CRM-21379) Fix Activity
dashlet issues ([11221](https://github.com/civicrm/civicrm-core/pull/11221))**
The Activities dashlet now has the option to display all activities regardless
of status. The default is the legacy behavior of only displaying scheduled
activities. Legacy users should note that the default order is reversed, with
the newest activities displayed first.
- **Hw 390 fixed iframe popup
([11075](https://github.com/civicrm/civicrm-core/pull/11075))**
iframe popups on AngularJS pages now have a default height.
### CiviCase
- **[CRM-20078](https://issues.civicrm.org/jira/browse/CRM-20078) Activity card -
General ([11159](https://github.com/civicrm/civicrm-core/pull/11159))**
The "File on case" button is improved so that it does not appear when an
activity is being viewed in the context of a case. In addition, when using
"File on case", the case defaults to an open case for the activity target
contact if one is available.
### CiviContribute
- **[CRM-20868](https://issues.civicrm.org/jira/browse/CRM-20868),
[CRM-21480](https://issues.civicrm.org/jira/browse/CRM-21480), and
[CRM-21479](https://issues.civicrm.org/jira/browse/CRM-21479) set
invoice_number at contribution->create, not invoice creation
([10681](https://github.com/civicrm/civicrm-core/pull/10681),
[11341](https://github.com/civicrm/civicrm-core/pull/11341), and
[11321](https://github.com/civicrm/civicrm-core/pull/11321))**
Every contribution now comes with an invoice number regardless of whether an
invoice has been generated.
- **[CRM-21354](https://issues.civicrm.org/jira/browse/CRM-21354) Allow
"Advanced Search" to search for recurring contribution status
([11080](https://github.com/civicrm/civicrm-core/pull/11080))**
Recurring contribution status is now searchable in Advanced Search.
- **[CRM-21346](https://issues.civicrm.org/jira/browse/CRM-21346) Make pledge
installment count & amount exportable
([11194](https://github.com/civicrm/civicrm-core/pull/11194))**
The number of installments and original installment amount fields for pledges
are now exportable from the pledge search.
- **[CRM-21287](https://issues.civicrm.org/jira/browse/CRM-21287) Add Financial
Type to "Contributions by Household" report
([11106](https://github.com/civicrm/civicrm-core/pull/11106))**
The "Contributions by Household" report now has the option to display and/or
filter by financial type.
### CiviMail
- **[CRM-20919](https://issues.civicrm.org/jira/browse/CRM-20919) Adjust
Mailing.create api for creating Completed mailings
([10707](https://github.com/civicrm/civicrm-core/pull/10707))**
Completed mailings can now be imported via the API.
- **[CRM-21231](https://issues.civicrm.org/jira/browse/CRM-21231) On CiviMail
screen make 'Review and Schedule' tab active if required fields are filled
([11035](https://github.com/civicrm/civicrm-core/pull/11035))**
When composing a message in CiviMail, the second tab, "Review and Schedule",
is disabled at first. Now, the tab link becomes active when the first tab is
complete.
- **[CRM-21282](https://issues.civicrm.org/jira/browse/CRM-21282) Improve
ordering of CiviMail click reporting
([11099](https://github.com/civicrm/civicrm-core/pull/11099))**
The click report summary now orders links by the descending number of clicks.
### Drupal Integration
- **[CRM-21297](https://issues.civicrm.org/jira/browse/CRM-21297) Automatically
fill database details in installer for Drupal
([11113](https://github.com/civicrm/civicrm-core/pull/11113))**
The database connection fields when installing CiviCRM on Drupal now default
to the CMS database connection details. This matches the process on
WordPress.
### WordPress Integration
- **[CRM-18754](https://issues.civicrm.org/jira/browse/CRM-18754) Process
extension parameters in shortcodes
([112](https://github.com/civicrm/civicrm-wordpress/pull/112))**
Extensions and WordPress plugins can now process custom parameters in the
`civicrm` shortcode.
- **[CRM-21212](https://issues.civicrm.org/jira/browse/CRM-21212) Get E2E Tests
working on wordpress
([11017](https://github.com/civicrm/civicrm-core/pull/11017)) (preliminary
work)**
A new function retrives the WordPress user ID from a user name.
## <a name="bugs"></a>Bugs resolved
### CiviMail
- **[CRM-21335](https://issues.civicrm.org/jira/browse/CRM-21335) CiviMail
recipient field isn't marked as required
([11185](https://github.com/civicrm/civicrm-core/pull/11185))**
- **[CRM-21508](https://issues.civicrm.org/jira/browse/CRM-21508)
civicrm_mailing.created_date information passed to Doctor When is incorrect
([11361](https://github.com/civicrm/civicrm-core/pull/11361))**
The mailing date would default to the current timestamp when null.
- **[CRM-21411](https://issues.civicrm.org/jira/browse/CRM-21411) When Sending a
CiviMail from an advanced search no unsubscribe group field shows
([11258](https://github.com/civicrm/civicrm-core/pull/11258))**
- **[CRM-21284](https://issues.civicrm.org/jira/browse/CRM-21284) Outdated link
to mail setup documentation
([11104](https://github.com/civicrm/civicrm-core/pull/11104))**
- **[CRM-20892](https://issues.civicrm.org/jira/browse/CRM-20892) Same mailing
open in two windows can overwrite data on scheduled mailings
([10965](https://github.com/civicrm/civicrm-core/pull/10965))**
- **[CRM-21362](https://issues.civicrm.org/jira/browse/CRM-21362) Mailing
summary report group by MySQL 5.7 error
([11206](https://github.com/civicrm/civicrm-core/pull/11206))**
- **[CRM-20397](https://issues.civicrm.org/jira/browse/CRM-20397) CiviMail send
immediately date/time check too sensitive
([11093](https://github.com/civicrm/civicrm-core/pull/11093) and
[11092](https://github.com/civicrm/civicrm-core/pull/11092))**
Users would get errors that they were attempting to schedule mailings in the
past.
### Core CiviCRM
- **[CRM-21275](https://issues.civicrm.org/jira/browse/CRM-21275) Fatal error
without message should recommend bug-reporting page, instead of deprecated
forum ([11084](https://github.com/civicrm/civicrm-core/pull/11084))**
- **[CRM-21336](https://issues.civicrm.org/jira/browse/CRM-21336) Custom file
fields should display file name without hash
([11166](https://github.com/civicrm/civicrm-core/pull/11166))**
- **[CRM-21268](https://issues.civicrm.org/jira/browse/CRM-21268) Missing French
overseas departments.
([11076](https://github.com/civicrm/civicrm-core/pull/11076))**
The French overseas departments Wallis-et-Futuna and Nouvelle-Calédonie are
now available in the State/Province list.
- **[CRM-21481](https://issues.civicrm.org/jira/browse/CRM-21481) 4.7.28-rc:
needs to call rebuildMultilingualSchema()
([11322](https://github.com/civicrm/civicrm-core/pull/11322))**
The introduction of multilingual columns means that the multilingual schema
must be rebuilt. Otherwise, multilingual sites will encounter an error when
upgrading.
- **[CRM-21363](https://issues.civicrm.org/jira/browse/CRM-21363) and
[CRM-21455](https://issues.civicrm.org/jira/browse/CRM-21455) Ensure that
tests run using ONLY_FULL_GROUP_BY sql_mode for mysql 5.7
([11249](https://github.com/civicrm/civicrm-core/pull/11249),
[10934](https://github.com/civicrm/civicrm-core/pull/10934),
[11339](https://github.com/civicrm/civicrm-core/pull/11339), and
[11346](https://github.com/civicrm/civicrm-core/pull/11346))**
- **[CRM-21364](https://issues.civicrm.org/jira/browse/CRM-21364) Fix Tests
which fail on ONLY_FULL_GROUP_BY
([11229](https://github.com/civicrm/civicrm-core/pull/11229),
[11219](https://github.com/civicrm/civicrm-core/pull/11219), and
[11209](https://github.com/civicrm/civicrm-core/pull/11209))**
This resolves a variety of problems that may occur if the MySQL `sql_mode` is
set to `ONLY_FULL_GROUP_BY`.
- **[CRM-21388](https://issues.civicrm.org/jira/browse/CRM-21388) Extension Page
should only throw exception if key is set
([11234](https://github.com/civicrm/civicrm-core/pull/11234))**
When checking that an extension's key follows the expected standard, the
extension page should not throw an exception if the key is blank or missing.
- **[CRM-20934](https://issues.civicrm.org/jira/browse/CRM-20934) Child groups
not present in group list selector
([10717](https://github.com/civicrm/civicrm-core/pull/10717))**
This resolves a problem where having a disabled parent group would prevent a
group from appearing in a group selection field even if another parent group
is active.
- **[CRM-21351](https://issues.civicrm.org/jira/browse/CRM-21351) Contact
deceased date does not respect the localisation date format
([11200](https://github.com/civicrm/civicrm-core/pull/11200))**
- **[CRM-21306](https://issues.civicrm.org/jira/browse/CRM-21306) DoctorWhen
extension looses the comments from columns when converting
([11129](https://github.com/civicrm/civicrm-core/pull/11129))**
When replacing columns to resolve date fields, Doctor When now restores the
field comments to the database.
- **[CRM-21337](https://issues.civicrm.org/jira/browse/CRM-21337) ISO compliance
for Romanian and Bulgarian counties
([11168](https://github.com/civicrm/civicrm-core/pull/11168))**
This fixes the spelling of a Bulgarian province and a number of Romanian
counties in the state/province list.
- **[CRM-21283](https://issues.civicrm.org/jira/browse/CRM-21283) Incorporate
Barbados and Antigua and Barbuda Parishes into States list
([11100](https://github.com/civicrm/civicrm-core/pull/11100))**
This adds parishes of Barbados and Antigua and Barbuda to the state/province
list.
- **[CRM-21267](https://issues.civicrm.org/jira/browse/CRM-21267) Error 500 -
Call to undefined method CRM_Contact_Import_Parser::formatCustomDate
([11124](https://github.com/civicrm/civicrm-core/pull/11124))**
Some code reorganization resulted in a method being called from within the
wrong class during import of custom date fields, resulting in a fatal error.
This calls it correctly.
- **Navigation - Fix serialization error
([11107](https://github.com/civicrm/civicrm-core/pull/11107))**
- **[CRM-19346](https://issues.civicrm.org/jira/browse/CRM-19346) gender_id
uniqueness not enforced on option groups edit form
([11089](https://github.com/civicrm/civicrm-core/pull/11089))**
Now each value in an option group must be unique.
- **[CRM-21214](https://issues.civicrm.org/jira/browse/CRM-21214) Chaining
shared addresses doesn't work correctly
([11019](https://github.com/civicrm/civicrm-core/pull/11019))**
This prevents complex address inheritance cases such as second-degree address
sharing and recursive address sharing.
- **[CRM-20779](https://issues.civicrm.org/jira/browse/CRM-20779) Incorrect
files showing in Tab for custom field
([11082](https://github.com/civicrm/civicrm-core/pull/11082))**
On file custom fields in multiple-entry custom data sets, the first entry's
file would display for all entries.
- **[CRM-20468](https://issues.civicrm.org/jira/browse/CRM-20468)
Attachment.create API HTML escapes the uploaded content
([10876](https://github.com/civicrm/civicrm-core/pull/10876))**
- **[CRM-19620](https://issues.civicrm.org/jira/browse/CRM-19620) importing
record with external_identifier that matches with a deleted contact results in
traceback ([11133](https://github.com/civicrm/civicrm-core/pull/11133))**
Now the External ID value is stripped from the contact in the trash and a new
contact is created.
- **[CRM-20545](https://issues.civicrm.org/jira/browse/CRM-20545) contact report
lists contacts that have been 'soft' deleted (placed in Trash)
([11136](https://github.com/civicrm/civicrm-core/pull/11136))**
- **[CRM-21303](https://issues.civicrm.org/jira/browse/CRM-21303) Dedupe
datatable incorrectly calculates rows
([11121](https://github.com/civicrm/civicrm-core/pull/11121))**
This fixes a problem where no more than 25 rows would display on the conflicts
screen.
- **[CRM-21294](https://issues.civicrm.org/jira/browse/CRM-21294) js error when
selecting & unselecting merge contacts
([11117](https://github.com/civicrm/civicrm-core/pull/11117))**
- **[CRM-21246](https://issues.civicrm.org/jira/browse/CRM-21246) Problem
'double chaining', e.g. Contact.get - Relationship.get - Contact.get
([11056](https://github.com/civicrm/civicrm-core/pull/11056))**
This fixes problems due to ambiguity of the `value` syntax when using API
chaining inside another chained API call.
- **[CRM-21258](https://issues.civicrm.org/jira/browse/CRM-21258) Display name
fatal error if names are too long
([11063](https://github.com/civicrm/civicrm-core/pull/11063))**
Display name and sort name will now be truncated rather than cause a fatal
error if the length is too long.
### CiviMember
- **[CRM-21321](https://issues.civicrm.org/jira/browse/CRM-21321) Membership
fields not loading in 'On behalf of' profile
([11148](https://github.com/civicrm/civicrm-core/pull/11148))**
You can now add membership fields to the profile for contributions on behalf
of an organization, and they will display in the on-behalf section of the
contribution page.
- **[CRM-20227](https://issues.civicrm.org/jira/browse/CRM-20227) Regression -
Membership status override gets 'stuck'
([11188](https://github.com/civicrm/civicrm-core/pull/11188))**
This resolves a bug that would keep the membership status set by a status
override when the override was disabled.
- **[CRM-20955](https://issues.civicrm.org/jira/browse/CRM-20955) Contact's
second membership fails to inherit when created in back end using price set
([11184](https://github.com/civicrm/civicrm-core/pull/11184)) (follow-up)**
Test coverage was added.
- **[CRM-19998](https://issues.civicrm.org/jira/browse/CRM-19998) Membership
start / end date have no effect in Search Builder
([11134](https://github.com/civicrm/civicrm-core/pull/11134))**
- **[CRM-20432](https://issues.civicrm.org/jira/browse/CRM-20432) Pending
Contributions which have a Payment recorded and are Completed do not trigger
the related Membership to become current, status remains pending
([11125](https://github.com/civicrm/civicrm-core/pull/11125))**
- **[CRM-19060](https://issues.civicrm.org/jira/browse/CRM-19060) Membership
Detailed Report Payment Amount (most recent) not reporting correct
contribution ([8837](https://github.com/civicrm/civicrm-core/pull/8837))**
### CiviCase
- **[CRM-21367](https://issues.civicrm.org/jira/browse/CRM-21367) Get help
section out of container
([11096](https://github.com/civicrm/civicrm-core/pull/11096),
[11156](https://github.com/civicrm/civicrm-core/pull/11156), and
[11220](https://github.com/civicrm/civicrm-core/pull/11220))**
Help text on the case types screens is now outside of the CiviCRM content
block.
- **[CRM-21373](https://issues.civicrm.org/jira/browse/CRM-21373) Notice error
on creating cases
([11217](https://github.com/civicrm/civicrm-core/pull/11217))**
This resolves a PHP notice that would appear upon creating a case.
- **[CRM-21255](https://issues.civicrm.org/jira/browse/CRM-21255) Error when
downloading document from case activity
([11186](https://github.com/civicrm/civicrm-core/pull/11186))**
This resolves a bug in CiviCase 5.0 (org.civicrm.civicase) when printing a
case document.
- **HW-380: Remove spacer div
([11071](https://github.com/civicrm/civicrm-core/pull/11071))**
This makes a slight adjustment to the case type editing form.
### CiviContribute
- **[CRM-21062](https://issues.civicrm.org/jira/browse/CRM-21062) Remove Tax
Rate trailing zeros for display in Confirm / Thankyou forms
([10856](https://github.com/civicrm/civicrm-core/pull/10856))**
This resolves a bug where tax rates would always display 8 decimal places on
contribution page confirmation and thank-you pages.
- **[CRM-21436](https://issues.civicrm.org/jira/browse/CRM-21436) Fatal error on
contribution page with only pay later enabled.
([11286](https://github.com/civicrm/civicrm-core/pull/11286))**
- **Fix Recurring contribution sql so that it doesen't use group by as there
doesn't appear to be a reason to do so given that we have a where id = x
clause and we were grouping on the same field
([11231](https://github.com/civicrm/civicrm-core/pull/11231))**
This resolves a test failure on retrieving the related contact for a recurring
contribution.
- **[CRM-21340](https://issues.civicrm.org/jira/browse/CRM-21340) make "view my
invoices" permission cms agnostic
([11172](https://github.com/civicrm/civicrm-core/pull/11172))**
This removes the use of a Drupal-specific global when checking permissions to
download an invoice.
- **[CRM-21305](https://issues.civicrm.org/jira/browse/CRM-21305) Sorting not
working on Batch listing page
([11127](https://github.com/civicrm/civicrm-core/pull/11127))**
- **[CRM-21281](https://issues.civicrm.org/jira/browse/CRM-21281) Post Hook for
LineItem does not receive entity_id and entity_table
([11108](https://github.com/civicrm/civicrm-core/pull/11108) and
[11097](https://github.com/civicrm/civicrm-core/pull/11097))**
When editing a line item, `hook_civicrm_post` now specifies the ID and table
of the line item that was modified.
- **[CRM-20772](https://issues.civicrm.org/jira/browse/CRM-20772) Price set
calculation precision when sales tax enabled
([11016](https://github.com/civicrm/civicrm-core/pull/11016)) (initial work)**
This adds additional decimal places for a price field value's amount field and
a membership type's minimum fee field in order to accommodate future changes.
- **[CRM-20572](https://issues.civicrm.org/jira/browse/CRM-20572) Remove
jcalendar from Contrib Sybunt custom Search
([10355](https://github.com/civicrm/civicrm-core/pull/10355))**
This removes a deprecated library.
- **[CRM-21319](https://issues.civicrm.org/jira/browse/CRM-21319) Total Amount
not translated on Contribution Page
([11147](https://github.com/civicrm/civicrm-core/pull/11147))**
### CiviEvent
- **[CRM-21149](https://issues.civicrm.org/jira/browse/CRM-21149) On Event
Registration Form, cannot target the text "(including yourself)" using word
replacement because the parenthesis is outside the ts markers
([10942](https://github.com/civicrm/civicrm-core/pull/10942))**
- **[CRM-21339](https://issues.civicrm.org/jira/browse/CRM-21339) Fix fatal js
error on cart checkout when pay later not enabled
([11170](https://github.com/civicrm/civicrm-core/pull/11170))**
- **[CRM-21009](https://issues.civicrm.org/jira/browse/CRM-21009) Removing event
selection from participant does not free up capacity
([10805](https://github.com/civicrm/civicrm-core/pull/10805))**
- **[CRM-21327](https://issues.civicrm.org/jira/browse/CRM-21327) Not able to
change Payment Processor in event fees
([11153](https://github.com/civicrm/civicrm-core/pull/11153))**
The field to choose payment processors on events was different from the
corresponding setting for contribution pages. This makes the two consistent,
including handling permissions accurately.
### Drupal Integration Modules
- **[CRM-21374](https://issues.civicrm.org/jira/browse/CRM-21374) D8 footer
resources get added to the header
([11218](https://github.com/civicrm/civicrm-core/pull/11218))**
Items added to the `page-footer` region would appear in the header in Drupal 8
sites.
- **[CRM-21371](https://issues.civicrm.org/jira/browse/CRM-21371) An api error
when calling drush cvapi should be treated as a drush error
([503](https://github.com/civicrm/civicrm-drupal/pull/503))**
- **[CRM-21132](https://issues.civicrm.org/jira/browse/CRM-21132) Member Role
Sync: civicrm_member_roles produces a Fatal "unknown error" when one hits
Manually Synchronize
([494](https://github.com/civicrm/civicrm-drupal/pull/494))**
- **[CRM-21272](https://issues.civicrm.org/jira/browse/CRM-21272) CMSUser has
Drupal 6/7 code that breaks when using with Drupal 8
([11145](https://github.com/civicrm/civicrm-core/pull/11145),
[11139](https://github.com/civicrm/civicrm-core/pull/11139), and
[11079](https://github.com/civicrm/civicrm-core/pull/11079))**
Code to determine if user registration is permitted is now handled in the
`CRM_Utils_System` classes.
- **[CRM-19995](https://issues.civicrm.org/jira/browse/CRM-19995) Notice :
Undefined offset: 5 dans _civicrm_member_roles_sync()
([500](https://github.com/civicrm/civicrm-drupal/pull/500))**
This fixes a typo in the member role sync module that led to a PHP notice.
### Joomla Integration
- **[CRM-21203](https://issues.civicrm.org/jira/browse/CRM-21203) cli.php PHP
error prevents cron jobs from running
([11062](https://github.com/civicrm/civicrm-core/pull/11062))**
Changes in Joomla 3.8--along with difficulties in detecting the Joomla
version--prevented cron from executing on many Joomla sites.
## <a name="misc"></a>Miscellany
- **[CRM-20710](https://issues.civicrm.org/jira/browse/CRM-20710) Add function
to return all valid types
([10486](https://github.com/civicrm/civicrm-core/pull/10486))**
- **[CRM-21291](https://issues.civicrm.org/jira/browse/CRM-21291) Confirm this
code is not used & remove
([11116](https://github.com/civicrm/civicrm-core/pull/11116))**
- **[CRM-21249](https://issues.civicrm.org/jira/browse/CRM-21249) Google Geocode
limit breaks Jenkins test
([11058](https://github.com/civicrm/civicrm-core/pull/11058))**
- **[CRM-12167](https://issues.civicrm.org/jira/browse/CRM-12167) Add support
for admin-only fee / price field value options
([11073](https://github.com/civicrm/civicrm-core/pull/11073)) (related
cleanup)**
This change regenerates the DAO checksum.
- **[nfc] Fix missing comma for phpcs
([11119](https://github.com/civicrm/civicrm-core/pull/11119))**
- **(NFC) Add in test of current practice in updating multiselect custom data
([11081](https://github.com/civicrm/civicrm-core/pull/11081))**
- **Civilint views components files
([482](https://github.com/civicrm/civicrm-drupal/pull/482))**
- **Civilint 2nd half of civicrm_handler_field files
([486](https://github.com/civicrm/civicrm-drupal/pull/486))**
- **Run civilint against civicrm_handler_filter_state_multi.inc
([488](https://github.com/civicrm/civicrm-drupal/pull/488))**
- **Run Civilint against civicrm_engage module
([493](https://github.com/civicrm/civicrm-drupal/pull/493))**
- **Run Civilint against the rest of views_handler and views plugin files
([487](https://github.com/civicrm/civicrm-drupal/pull/487))**
## <a name="credits"></a>Credits
This release was developed by the following code authors:
AGH Strategies - Alice Frumin, Andrew Hunt; Agileware - Alok Patel, Justin
Freeman; Australian Greens - Seamus Lee; Christian Wach; Circle Interactive -
Dave Jenkins; CiviCoop - Klaas Eikelboom; CiviCRM - Coleman Watts, Tim Otten;
CiviDesk - Nicolas Ganivet, Yashodha Chaku; CiviFirst - John Kirk; Community IT
Academy - William Mortada; CompuCorp - Michael Devery, Mukesh Ram, Omar Abu
Hussein; Coop SymbioTIC - Mathieu Lutfy; Daniël van Vuuren; Deepak Srivastava;
Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; JMA
Consulting - Edsel Lopez, Monish Deb, Pradeep Nayak; John Kingsnorth; Joinery -
Allen Shaw; Lemniscus - Noah Miller; Megaphone Technology Consulting - Jon
Goldberg; MJW Consulting - Matthew Wire; Olivier Hertrich; Pawel Nowak; PowDevel -
Beto Aveiga; Progressive Technology Project - Jamie McClelland; Tadpole
Collective - Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton, Maggie
Epps
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
Adam Zilkie; AGH Strategies - Josh Corlew; Agileware - Agileware Team; Andrew
Thompson; Blackfly Solutions - Alan Dixon; British Humanist Association -
William Gordon; CiviDesk - Sunil Pawar; CompuCorp - Anna Kovalova, Guanhuan
Chen, Mirela Stanila; DevMate - Adam Kwiatkowski; Effy Elden; Electronic
Frontier Foundation - Mark Burdett; Ginkgo Street Labs - Frank Gómez; JMA
Consulting - Joe Murray; Joanne Chester; Johan Vervloet; Jonathan Richardson;
Korlon - Stuart Gaston; Left Join Labs - Sean Madsen; Levity - Kevin Levie;
Lighthouse Design and Consulting - Brian Shaughnessy; Lorenzo Ardizzone; MC3 -
Graham Mitchell; Marcello Gribaudo; Mohamed Ziada; myDropWizard - David Snopek;
Neil Zampella; Nicol Wistreich; Responsive Development Technologies - Thomas
Nilefalk; Richard Edgar; Semper IT - Karin Gerritsen; SEN Magazine - Jeremy
Nicholls; Skvare - Mark Hanna; small biz; Spry Digital - Ellen Hendricks;
Squiffle Consulting - Aidan Saunders; Stevel; Systopia - Björn Endres; Tech To
The People - Xavier Dutoit; Victor Huang; Web Access - Kurund Jalmi
## <a name="feedback"></a>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`.

View file

@ -0,0 +1,79 @@
# CiviCRM 4.7.29
Released December 20, 2017
- **[Synopsis](#synopsis)**
- **[Features](#features)**
- **[Bugs resolved](#bugs)**
- **[Miscellany](#misc)**
- **[Credits](#credits)**
- **[Feedback](#feedback)**
## <a name="synopsis"></a>Synopsis
| *Does this version...?* | |
|:----------------------------------------------------------- |:-------:|
| Fix security vulnerabilities? | no |
| Change the database schema? | no |
| Alter the API? | no |
| Require attention to configuration options? | no |
| Fix problems installing or upgrading to a previous version? | no |
| **Introduce features?** | **yes** |
| **Fix bugs?** | **yes** |
## <a name="features"></a>Features
### Core CiviCRM
- **[CRM-20941](https://issues.civicrm.org/jira/browse/CRM-20941) Increase minimum PHP required to install CiviCRM
([11416](https://github.com/civicrm/civicrm-core/pull/11416))**
Increases the minimum PHP version required to install CiviCRM 4.7.29 to be 5.4 as per the [announcement blog post](https://civicrm.org/blog/totten/end-of-zombies-php-53-and-54)
## <a name="bugs"></a>Bugs resolved
### Core CiviCRM
- **[CRM-21445](https://issues.civicrm.org/jira/browse/CRM-20941) Ensure "Pay Later" processor is set so a fatal isn't thrown
([11427](https://github.com/civicrm/civicrm-core/pull/11427))**
Ensures that the pay later payment processor is set to that a fatal error isn't thrown
- **[CRM-21431](https://issues.civicrm.org/jira/browse/CRM-21431) Fix removing of group types
([11436](https://github.com/civicrm/civicrm-core/pull/11436))**
Fixes an issue where unchecking both the ACL and Mailing list box when editing a group didn't actually remove those types
- **[CRM-21568](https://issues.civicrm.org/jira/browse/CRM-21568) Move the determination of values of empty from settingsbag to InnodbIndxer
([11423](https://github.com/civicrm/civicrm-core/pull/11423))**
Fixes an issue where string '0' wasn't being treated as false. So the checking of whether there is an empty value is now done in the on change listener for the full text search switcher
- **[CRM-21562](https://issues.civicrm.org/jira/browse/CRM-21562) Fix line item mis-saving when using a ',' as the thousand separator
([11412](https://github.com/civicrm/civicrm-core/pull/11412))**
Fixes an issue for currencies which use a ',' as the thousand separator the line item was being incorrectly saved by a significant margin.
- **[CRM-21534](https://issues.civicrm.org/jira/browse/CRM-21534) Fix issue where checking if server was a MariaDB server wasn't working correctly
([11413](https://github.com/civicrm/civicrm-core/pull/11413))**
Fixes an issue where the check to see if the MySQL server was a MariaDB instance wasn't working right. This lead to hard crashes as queries were being incorrectly re-written
## <a name="credits"></a>Credits
This release was developed by the following code authors:
Australian Greens - Seamus Lee; CiviCRM - Coleman Watts, Tim Otten;
Coop SymbioTIC - Mathieu Lutfy; Wikimedia Foundation - Eileen McNaughton
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
Ben Mango; JMA Consulting - Monish Deb; Megaphone Technology Consulting - Jon
Goldberg; Richard van Oosterhout
## <a name="feedback"></a>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`.