CiviCRM Core issueshttps://lab.civicrm.org/dev/core/-/issues2018-07-05T23:11:11Zhttps://lab.civicrm.org/dev/core/-/issues/212Contribution Details report fails when "Is not one of" condition is used for ...2018-07-05T23:11:11ZscardiniusContribution Details report fails when "Is not one of" condition is used for Groups field# how to reproduce
* run CiviCRM 5.1.2
* open Report > Contribution Reports > Contribution Details
* click on Filters tab
* scroll down to Groups field
* change condition to "Is not one of"
* choose at least one group
* click Refresh re...# how to reproduce
* run CiviCRM 5.1.2
* open Report > Contribution Reports > Contribution Details
* click on Filters tab
* scroll down to Groups field
* change condition to "Is not one of"
* choose at least one group
* click Refresh results
* result: DB Error: no such field
# sql
sql error `Unknown column 'group_temp_table.id' in 'where clause'`
```
[db_error: message="DB Error: no such field" code=-19 mode=callback callback=CRM_Core_Error::handle prefix="" info="
CREATE TEMPORARY TABLE civireport_contribution_detail_temp2 DEFAULT
CHARACTER SET utf8 COLLATE utf8_unicode_ci AS SELECT SQL_CALC_FOUND_ROWS contact_civireport.sort_name as civicrm_contact_sort_name, contact_civireport.id as civicrm_contact_id, email_civireport.email as c
ivicrm_email_email, phone_civireport.phone as civicrm_phone_phone, contribution_civireport.id as civicrm_contribution_contribution_id, contribution_civireport.financial_type_id as civicrm_contribution_fin
ancial_type_id, contribution_civireport.currency as civicrm_contribution_currency, contribution_civireport.receive_date as civicrm_contribution_receive_date, contribution_soft_civireport.amount as civicrm
_contribution_total_amount, 'Soft Credit' as civicrm_contribution_contribution_or_soft, address_civireport.country_id as civicrm_address_country_id
FROM civireport_contribution_detail_temp1 temp1_civireport
INNER JOIN civicrm_contribution contribution_civireport
ON temp1_civireport.civicrm_contribution_contribution_id = contribution_civireport.id
INNER JOIN civicrm_contribution_soft contribution_soft_civireport
ON contribution_soft_civireport.contribution_id = contribution_civireport.id
INNER JOIN civicrm_contact contact_civireport
ON contact_civireport.id = contribution_soft_civireport.contact_id
LEFT JOIN civicrm_phone phone_civireport
ON (contact_civireport.id =
phone_civireport.contact_id) AND
phone_civireport.is_primary = 1
LEFT JOIN civicrm_address address_civireport
ON (contact_civireport.id =
address_civireport.contact_id) AND
address_civireport.is_primary = 1
LEFT JOIN civicrm_email email_civireport
ON contact_civireport.id = email_civireport.contact_id AND
email_civireport.is_primary = 1
WHERE (1) AND ( contribution_civireport.contribution_status_id IN (1) )
AND group_temp_table.id IS NULL
GROUP BY contact_civireport.id, contribution_civireport.id
[nativecode=1054 ** Unknown column 'group_temp_table.id' in 'where clause']"
]
```5.5.0https://lab.civicrm.org/dev/core/-/issues/239Huge title dialog box on hovering form element on Event's configuration backe...2018-07-06T22:11:10ZMonish DebHuge title dialog box on hovering form element on Event's configuration backend formSteps to replicate:
1. Go to 'Manage Event' page
2. Click on 'Online Registration' of any existing/new event configuration page.
3. Hover on any helpicon
![test-multiple-after](/uploads/06a04ef0f58d2b69e78846c93d14a467/test-multiple-afte...Steps to replicate:
1. Go to 'Manage Event' page
2. Click on 'Online Registration' of any existing/new event configuration page.
3. Hover on any helpicon
![test-multiple-after](/uploads/06a04ef0f58d2b69e78846c93d14a467/test-multiple-after.gif)5.5.0Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/176Odd / Even street number sorting column missing from Reports2018-07-06T22:11:10Zjoels341Odd / Even street number sorting column missing from ReportsWhen trying to make a walk list in reports (odd/even street numbers), there is no option to sort by odd or even. I am using Civicrm in English on Joomla.
The French demo on Drupal has "Numéro de rue pair/impair" in the "column" dropdown...When trying to make a walk list in reports (odd/even street numbers), there is no option to sort by odd or even. I am using Civicrm in English on Joomla.
The French demo on Drupal has "Numéro de rue pair/impair" in the "column" dropdown, but I do not see it in the English version.![street-number](/uploads/f74556e4b99a646ee3aa1c9fdaacd96c/street-number.jpg)5.5.0Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/243Backdrop authentication function missing in kcfinder package.2018-07-08T00:13:43ZherbdoolBackdrop authentication function missing in kcfinder package.Reported here https://civicrm.stackexchange.com/questions/25619/backdrop-authentication-function-missing.
It might be possible to update it to use the Drupal authentication function since Backdrop is similar enough. But this needs testing.Reported here https://civicrm.stackexchange.com/questions/25619/backdrop-authentication-function-missing.
It might be possible to update it to use the Drupal authentication function since Backdrop is similar enough. But this needs testing.5.5.0https://lab.civicrm.org/dev/core/-/issues/218On Case Type listing page, for reserved ones the, 'More' link doesn't show an...2018-07-09T22:42:08ZMonish DebOn Case Type listing page, for reserved ones the, 'More' link doesn't show any optionsSteps to replicate:
1. Enable CiviCase component.
2. Go to Administer >> CiviCase >> Case Types
3. Click on 'More' action against any reserved Case type
![test-multiple-before](/uploads/c14d32b041c69c2b9c1941615214d1ac/test-multiple-befo...Steps to replicate:
1. Enable CiviCase component.
2. Go to Administer >> CiviCase >> Case Types
3. Click on 'More' action against any reserved Case type
![test-multiple-before](/uploads/c14d32b041c69c2b9c1941615214d1ac/test-multiple-before.gif)
**Proposal**:
Show the 'More' action only when
1. the case type is not reserved because then you have 'Delete' and Enable/Disable action OR
2. If case-type is reserved then show the more action only if the case-type is forked and/or disable, because then you got 'Revert' and/or 'Enable' option to show5.5.0Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/228Option group disabled on update2018-07-11T00:47:58ZajesamsonOption group disabled on updateWhen updating option group attributes (excluding `is_active`), the updated option group gets disabled. This is because option group was [defaulted](https://github.com/civicrm/civicrm-core/blob/master/CRM/Core/BAO/OptionGroup.php#L95) to ...When updating option group attributes (excluding `is_active`), the updated option group gets disabled. This is because option group was [defaulted](https://github.com/civicrm/civicrm-core/blob/master/CRM/Core/BAO/OptionGroup.php#L95) to `FALSE` when adding or updating record without specifying desired `is_active` status.
![option_group](/uploads/d8291f18e46149d5852335749ca473e3/option_group.gif)
The desired result would have been leaving the `is_active` status untouched, if not required to be updated during attributes update.5.5.0https://lab.civicrm.org/dev/core/-/issues/241Fix Manage Premiums UI2018-07-12T23:12:09Zmattwiremjw@mjwconsult.co.ukFix Manage Premiums UIRef: https://github.com/civicrm/civicrm-core/pull/12436
Manage premiums UI was not displaying the financial type correctly (it was showing the ID). The PR does the following:
1. Enable pseudoconstant for financial_type_id.
2. Use pseud...Ref: https://github.com/civicrm/civicrm-core/pull/12436
Manage premiums UI was not displaying the financial type correctly (it was showing the ID). The PR does the following:
1. Enable pseudoconstant for financial_type_id.
2. Use pseudoconstant functions to get the financial_type label (name) for display.
3. Format the money fields using crmMoney.
4. Add the cost field to the UI (normally I'd do this as a separate PR but it would be more work to break out the template changes and given how flaky/old the premiums code seems to be I suspect it's not actually being used by very many people - also it's only affecting an admin screen by displaying existing information).5.5.0https://lab.civicrm.org/dev/core/-/issues/256Wrong A/B test recipient assignment when reaching 2^31 recipients overall2018-07-13T23:42:09ZromainWrong A/B test recipient assignment when reaching 2^31 recipients overallWhen assigning recipients from mailing A to mailing B and C when submitting an A/B mailing, a temporary table is used to hold the recipient ids. The column type used to receive the ids is a signed integer, while the recipient ids in `civ...When assigning recipients from mailing A to mailing B and C when submitting an A/B mailing, a temporary table is used to hold the recipient ids. The column type used to receive the ids is a signed integer, while the recipient ids in `civicrm_mailing_recipients` are unsigned integers.
Therefore, once the number of overall recipients reaches 2<sup>31</sup>, there is a mismatch when joining on ids in those two tables. Because of that, no recipient is assigned to mailing B or C, and mailing A is sent to the whole target recipients set.
This happens in `CRM_Mailing_BAO_Recipients::updateRandomRecipients`.
I will submit a patch.5.5.0https://lab.civicrm.org/dev/core/-/issues/141Custom groups with different names but same title would not be saved2018-07-14T01:25:44ZjaapjansmaCustom groups with different names but same title would not be savedI have created two custom groups from within my extension:
* Name: group_areas, Title: Areas
* Name: contact_areas, Title: Areas
When I now edit the custom group it will fail because both custom groups have the same title but a differe...I have created two custom groups from within my extension:
* Name: group_areas, Title: Areas
* Name: contact_areas, Title: Areas
When I now edit the custom group it will fail because both custom groups have the same title but a different name.
Is this correct behaviour?
See this stack exchange question: https://civicrm.stackexchange.com/questions/25102/https-civicrm-org-extensions-areas-causing-error/25104#25104
Tested on CiviCRM version 5.0.0 and CiviCRM version 5.1.aplha15.5.0https://lab.civicrm.org/dev/core/-/issues/188Fix Floating Point Precision Comparison Exception on Order Creation2018-07-15T23:12:07ZCamilo RodríguezFix Floating Point Precision Comparison Exception on Order Creation## Overview
When adding Orders, a check is done by CiviCRM core when the contribution is being created to make sure the sum of line item totals is equal to the contribution total amount. This comparison, however, is done comparing floati...## Overview
When adding Orders, a check is done by CiviCRM core when the contribution is being created to make sure the sum of line item totals is equal to the contribution total amount. This comparison, however, is done comparing floating point values, which may fail falsely, under some circumstances.
This is the line where the comparison is done:
https://github.com/civicrm/civicrm-core/blob/master/CRM/Contribute/BAO/Contribution.php#L5011
This problem is documented in PHP official documentation, and is actually related to the way floating point values are modeled in programming languages in general.
http://php.net/manual/en/language.types.float.php
http://floating-point-gui.de/basic/
This has to be taken into account to make sure the comparison doesn't fail when it shouldn't.
## How it Works Currently
1. Use API to try to create Order with given sample data.
2. Exception is thrown, saying "Line item total doesn't match with total amount".
## How it Should Work
1. Use API to try to create Order with given sample data.
2. Order is created without throwing exception.
## Sample Data
```
data ={
'contact_id': 1051,
'payment_instrument_id': 6,
'line_items': [{
'line_item': {
'0': {
'price_field_value_id': 56,
'price_field_id': 33,
'entity_id': 646,
'tax_amount': 0,
'line_total': 14.85,
'label': 4,
'entity_table': 'civicrm_membership',
'unit_price': 14.85,
'qty': 1}}}, {
'line_item': {
'1': {
'price_field_value_id': 55,
'price_field_id': 32,
'entity_id': 648,
'tax_amount': 0,
'line_total': 1.66,
'label': 50,
'entity_table': 'civicrm_membership',
'unit_price': 1.66,
'qty': 1}}}, {
'line_item': {
'2': {
'price_field_value_id': 49,
'price_field_id': 26,
'entity_id': 647,
'tax_amount': 0,
'line_total': 0.16,
'label': 47,
'entity_table': 'civicrm_membership',
'unit_price': 0.16,
'qty': 1}}}],
'total_amount': 16.67,
'financial_type_id': 2,
'fee_amount': 0,
'payment_processor_id': 5,
'receive_date': '2017-10-16',
'contribution_status_id': 1
}
```
## Failing API Call Example
Calling API using cv:
```
echo '{"contact_id":45,"payment_instrument_id":6,"line_items":[{"line_item":{"6":{"price_field_value_id":52,"price_field_id":29,"tax_amount":0,"line_total":14.85,"financial_type_id":2,"qty":1,"entity_table":"civicrm_membership","unit_price":14.85,"label":5}}},{"line_item":{"7":{"price_field_value_id":53,"price_field_id":30,"tax_amount":0,"line_total":1.66,"financial_type_id":2,"qty":1,"entity_table":"civicrm_membership","unit_price":1.66,"label":49}}},{"line_item":{"8":{"price_field_value_id":49,"price_field_id":26,"tax_amount":0,"line_total":0.16,"financial_type_id":2,"qty":1,"entity_table":"civicrm_membership","unit_price":0.16,"label":47}}}],"tax_amount":0,"total_amount":16.67,"contribution_recur_id":733,"financial_type_id":2,"fee_amount":0,"payment_processor_id":5,"receive_date":"2017-12-15","contribution_status_id":1}' | cv api Order.create --in=json
```5.5.0https://lab.civicrm.org/dev/core/-/issues/150Chain select for country/state in Search Builder does not stay within OR grou...2018-07-17T06:54:34ZAndie HuntChain select for country/state in Search Builder does not stay within OR groupingsdev/core#142 introduces a chained select for picking states from countries and picking counties from states. The changes there correctly limit the chaining to be within the same location type. However, picking a country will modify *al...dev/core#142 introduces a chained select for picking states from countries and picking counties from states. The changes there correctly limit the chaining to be within the same location type. However, picking a country will modify *all* state/province fields of that location type, even if they're in different "Also include contacts where" sections.
To recreate, let's say you are planning an event in Detroit:
1. Search for contacts in Michigan:
```
Contacts | Country | Home | = | United States
Contacts | State | Home | = | Michigan
```
2. Search for contacts in Ontario by clicking "Also include contacts where" and setting up:
```
Contacts | Country | Home | = | Canada
Contacts | State | Home | = | Ontario
```
Notice that the state dropdown where Michigan had been selected now has nothing selected and offers only Canadian provinces.
The same thing happens if you have a state field on its own (without country) and you pick a country in another `OR` grouping.5.5.0Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/223Expose prefix and suffix in reports2018-07-24T00:24:18ZyashodhaExpose prefix and suffix in reportsAdd prefix and suffix to *getContactColumns* method.Add prefix and suffix to *getContactColumns* method.5.5.0yashodhayashodhahttps://lab.civicrm.org/dev/core/-/issues/242Fix display of premiums on contribution pages2018-07-24T05:11:10Zmattwiremjw@mjwconsult.co.ukFix display of premiums on contribution pagesPR Ref: https://github.com/civicrm/civicrm-core/pull/12437
If a premium product is created with no financial type and then added to a contribution page it is not displayed because the contribution page is only selecting those with a fin...PR Ref: https://github.com/civicrm/civicrm-core/pull/12437
If a premium product is created with no financial type and then added to a contribution page it is not displayed because the contribution page is only selecting those with a financial type, but financial type is optional unless you have configured a cost for the product.
Furthermore, if you update the premium product to have a financial type that is not mirrored to the civicrm_premium_product table which contains the configuration for the premium products available on a contribution page.5.5.0https://lab.civicrm.org/dev/core/-/issues/219Improve consistency displaying "Test Transactions"2018-07-24T19:41:11Zmattwiremjw@mjwconsult.co.ukImprove consistency displaying "Test Transactions"There are currently a number of inconsistencies with displaying test transactions:
1. There is either no indication, or it is not obvious that you are viewing a test contribution/recur/membership when viewing the details.
2. Test members...There are currently a number of inconsistencies with displaying test transactions:
1. There is either no indication, or it is not obvious that you are viewing a test contribution/recur/membership when viewing the details.
2. Test memberships do not appear in the contact membership tab, but test contributions/recurring contributions do.
Proposal:
1. Add some "help" text that appears above the entity detail when viewing the entity if it is a test transaction.
2. Show test memberships in contact membership tab so it is consistent with other tabs.5.5.0https://lab.civicrm.org/dev/core/-/issues/210Regex filter broken in Search Builder2018-07-24T22:41:10ZMonish DebRegex filter broken in Search BuilderIt would appear that the Regular Expression option in Search builder is broken. This can be reproduced by doing a search builder with the regex expression of [A-Z]{2}$ for the first name. It will pull up any contact that has 2 letters. T...It would appear that the Regular Expression option in Search builder is broken. This can be reproduced by doing a search builder with the regex expression of [A-Z]{2}$ for the first name. It will pull up any contact that has 2 letters. This is because the regular expression gets transformed into lower case and also REGEXP / RLIKE isn't case sensitive by default unless used with the word BINARY
Original issue: https://issues.civicrm.org/jira/browse/CRM-216175.5.0Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/293Error log is filled with geocoding configuration errors when no provider is set2018-07-30T19:55:41ZtschuettlerError log is filled with geocoding configuration errors when no provider is setIf no geocoding provider is configured, the civicrm log file is flooded with error messages:
```
[error] Configured geocoder is invalid, must provide a format method
Array
(
[geocode_class] =>
)
```If no geocoding provider is configured, the civicrm log file is flooded with error messages:
```
[error] Configured geocoder is invalid, must provide a format method
Array
(
[geocode_class] =>
)
```5.5.0https://lab.civicrm.org/dev/core/-/issues/277Recurring contribution tab shouldn't count test transactions2018-07-31T22:12:11ZPradeep Nayakpradpnayak@gmail.comRecurring contribution tab shouldn't count test transactions![Screenshot_from_2018-07-24_13-27-48](/uploads/4ec1bca56c36f0c71cf2b7694662bde6/Screenshot_from_2018-07-24_13-27-48.png)
PR at https://github.com/civicrm/civicrm-core/pull/12553![Screenshot_from_2018-07-24_13-27-48](/uploads/4ec1bca56c36f0c71cf2b7694662bde6/Screenshot_from_2018-07-24_13-27-48.png)
PR at https://github.com/civicrm/civicrm-core/pull/125535.5.0https://lab.civicrm.org/dev/core/-/issues/333testTargetAddressFields() in 5.5 fails half the time2018-08-16T05:58:55ZtottentestTargetAddressFields() in 5.5 fails half the timeThe test `CRM_Report_Form_ActivityTest::testTargetAddressFields()` was added in 5.5. 5.5 is the current RC, and test is failing frequently -- about half the time. ([Recent build history](https://test.civicrm.org/job/CiviCRM-Core-Matrix/C...The test `CRM_Report_Form_ActivityTest::testTargetAddressFields()` was added in 5.5. 5.5 is the current RC, and test is failing frequently -- about half the time. ([Recent build history](https://test.civicrm.org/job/CiviCRM-Core-Matrix/CIVIVER=5.5,label=ubuntu1204/))
I think the problem traces to [this line](https://github.com/civicrm/civicrm-core/pull/11660/files#diff-9b126bfd3563d59749fc7aac722e04ceR155). Evidently, the ordering must be non-deterministic -- i.e. both `India;United States` and `United States;India` come up in practice.
I don't know if that variation is acceptable or not. If it is acceptable, then the simplest change would be to make the assertion a logical `OR` (e.g. assert that `$rows[0]['civicrm_address_country_id']` is either `India;United States` or `United States;India`). If the variation is significant... then I guess that would require something else...?
@monish.deb, can you figure out a patch for 5.5?5.5.0https://lab.civicrm.org/dev/core/-/issues/273"Recipient phone number is invalid or recipient does not want to receive SMS"...2018-08-18T21:44:11Zjyothi"Recipient phone number is invalid or recipient does not want to receive SMS" error and Contacts with DoNotSms preference failing to filter out during Mass Sms in 5.x"Recipient phone number is invalid or recipient does not want to receive SMS" error occurs during individual SMS. https://civicrm.stackexchange.com/questions/25478/clickatell-sms-recipient-phone-number-is-invalid-or-recipient-does-not-wa..."Recipient phone number is invalid or recipient does not want to receive SMS" error occurs during individual SMS. https://civicrm.stackexchange.com/questions/25478/clickatell-sms-recipient-phone-number-is-invalid-or-recipient-does-not-want-to.
Contacts marked as 'donotsms' is not filtered out during mass SMS.5.5.0https://lab.civicrm.org/dev/core/-/issues/319Advanced search export: when location types' display names are different from...2018-08-27T01:41:01ZnoahAdvanced search export: when location types' display names are different from their machine names, empty columns are exportedEDITED to be more accurate following further investigation into the symptoms.
This is a regression in the last couple versions of Civi (I see it on 5.3.1 and 5.4.0, as well as 5.5-rc and master).
**Summary:** When exporting from advanc...EDITED to be more accurate following further investigation into the symptoms.
This is a regression in the last couple versions of Civi (I see it on 5.3.1 and 5.4.0, as well as 5.5-rc and master).
**Summary:** When exporting from advanced search, if you select email/phone/address fields to export _where the location type's display name is different from its machine name_, the headers for those columns will be included in the export, but the cells in those columns will be blank.
**To reproduce:**
1. Create a location type called "Field Office" with machine name "FieldOffice" or "FO"
1. Create a contact with a "Field Office" email.
1. Find that contact using advanced search and select the "export" task.
1. Select "Individual - Email - Field Office" as a field to export.
1. In the resulting CSV, there's a blank cell where the email address should be.
**Notes:** I also notice:
* the columns in the export are not in the same order as on the export column selection screen.
* exporting from Search Builder has a similar-but-different problem: if two location types are selected for export, only one of the columns will successfully be exported.
I see that quite a bit of work has gone into the Export code in recent releases and I suspect this regression happened as a result.
I'm interested in creating tests for this but I'd need someone to hold my hand through the process, as I have no recent experience doing that.5.5.0