CiviCRM Core issueshttps://lab.civicrm.org/dev/core/-/issues2020-06-19T02:35:54Zhttps://lab.civicrm.org/dev/core/-/issues/1824Fixes to dedupe getting dynamic references2020-06-19T02:35:54ZJonGoldFixes to dedupe getting dynamic referencesCivi 5.26 included [PR #17125](https://github.com/civicrm/civicrm-core/pull/17125), "Fix Dedupe entity_tag mangling bug". This introduced the new method `CRM_Core_DAO::getDynamicReferencesToTable()` and `CRM_Dedupe_MergeHandler::getTabl...Civi 5.26 included [PR #17125](https://github.com/civicrm/civicrm-core/pull/17125), "Fix Dedupe entity_tag mangling bug". This introduced the new method `CRM_Core_DAO::getDynamicReferencesToTable()` and `CRM_Dedupe_MergeHandler::getTablesRelatedToTheMergePair()`. However, there are two bugs in the implementation:
* It assumes that only one dynamic reference can exist between two tables. In addition to extensions that may introduce dynamic references, this is also untrue in core: `civicrm_pcp_block` has two dynamic references to `civicrm_contact`: Both `entity_id` and `target_entity_id`.
* It assumes that the column specifying the entity is always called `entity_table`, and this is hard-coded into the SQL in `getTablesRelatedToTheMergePair()`. However, this column isn't always `entity_table`. We should pull the correct column name from the metadata.
I don't think there's a Gitlab ticket for PR #17125, so I'm referencing the PR here instead.5.27.0JonGoldJonGoldhttps://lab.civicrm.org/dev/core/-/issues/1823[regression] Contribution amount choices don't appear for anonymous users2020-06-16T10:20:13ZJonGold[regression] Contribution amount choices don't appear for anonymous users**Steps to replicate**
* Go to **Manage Contribution Pages** for any page.
* Go to **Amounts** tab.
* Click **Save**.
* View the contribution page as an anonymous user.
**Expected result**
You can select an amount to give.
**Actual res...**Steps to replicate**
* Go to **Manage Contribution Pages** for any page.
* Go to **Amounts** tab.
* Click **Save**.
* View the contribution page as an anonymous user.
**Expected result**
You can select an amount to give.
**Actual result**
Nope.
This regression was introduced by [this commit](https://github.com/civicrm/civicrm-core/pull/17122/commits/398683876c9abe34b8a7b7016b057af4ca9068e9#diff-6329da386c1213c4300469cf93a3d00cL2580) and specifically the one-line change to `CRM_Core_DAO`. Reverting that line fixes the problem - but given how low-level this is, I'm concerned about side effects. @colemanw - thoughts?5.26.2https://lab.civicrm.org/dev/core/-/issues/1822Added activity types don't appear in the type dropdown on New Activity2020-07-25T18:59:30ZDaveDAdded activity types don't appear in the type dropdown on New ActivityCan reproduce on dmaster.demo. Seems to have been working in 5.25. More investigation TBD.
1. Add a new activity type. (For Contacts and Cases.)
2. Go to Contacts - New Activity.
3. It isn't in the activity type dropdown. It does appear...Can reproduce on dmaster.demo. Seems to have been working in 5.25. More investigation TBD.
1. Add a new activity type. (For Contacts and Cases.)
2. Go to Contacts - New Activity.
3. It isn't in the activity type dropdown. It does appear if you go to a contact and then click on Actions. Clearing cache doesn't change anything.5.27.0https://lab.civicrm.org/dev/core/-/issues/1819Membership import does not accept "tab" as import field separator but interpr...2022-06-10T08:47:42ZblippMembership import does not accept "tab" as import field separator but interprets it as the character “t”Overview
----------------------------------------
In membership import, the help text mentions that users can enter `tab` (literally those three characters) as “Import Field Separator” to configure it for tab-separated CSV files (see Sc...Overview
----------------------------------------
In membership import, the help text mentions that users can enter `tab` (literally those three characters) as “Import Field Separator” to configure it for tab-separated CSV files (see Screenshot 3 below). However, the system instead ends up using the single character `t` as field separator, which leads to some funny column titles (see Screenshots 1 and 2). Copying an actual tab character into the “Import Field Separator” field works to let the system recognize tabs.
Interestingly, this bug is not present in contacts import, whose user interface looks exactly the same as the membership import.
Reproduction steps
----------------------------------------
1. Click on **Memberships -> Import Memberships**.
1. Use for example this **tab-separated file** [test_bug_tab.csv](/uploads/5c8958157830f5f41528759150dce0c3/test_bug_tab.csv) as an example.
1. Activate **First row contains column headers**
1. Enter `tab` into the field **Import Field Separator**
1. Click **Continue**
Current behaviour
----------------------------------------
As visible in Screenshot 1 and Screenshot 2 below, the cells (column titles and content) are split at every occurrence of the character `t`.
Expected behaviour
----------------------------------------
Cells (column titles and content) should be split at every occurrence of a tab. For example, the first column should be “id”, the second “Mitgliedsnummer”, and not “id Mi” and “gliedsnummer Ti”.
Environment information
----------------------------------------
<!-- Some of the items below may not be relevant for every bug - if in doubt please include more information than you think is neccessary. -->
Tested on https://demo.tadpole.cc and https://demo.symbiotic.coop with
* __Browser:__ _Firefox 77.0.1_
* __CiviCRM:__ _5.26.1_ <!-- If this problem relates to an upgrade, then specify both old and new versions -->
* __CMS:__ _Drupal, WordPress_
Screenshot 1: Tested on the Wordpress+CiviCRM 5 demo instance https://demo.tadpole.cc :
![Screenshot_from_2020-06-13_22-06-25](/uploads/f643ab52a95722c676332905d10359e8/Screenshot_from_2020-06-13_22-06-25.png)
Screenshot 2: Tested on the Drupal+CiviCRM 5 demo instance https://demo.symbiotic.coop :
![Screenshot_from_2020-06-13_22-06-34](/uploads/7e4fc06a905dea6b82de2f7af32495bb/Screenshot_from_2020-06-13_22-06-34.png)
Screenshot 3: This shows the help text mentioning `"tab" (without quotes)`:
![Screenshot_from_2020-06-13_22-07-50](/uploads/ef14fe97132a3a96705c1793b8fc4576/Screenshot_from_2020-06-13_22-07-50.png)
Comments
----------------------------------------
The https://demo.symbiotic.coop demo instance is not displaying its exact CiviCRM version number. Maybe they could add this?5.51.0https://lab.civicrm.org/dev/core/-/issues/1817Editing a custom field choice label changes the `name` if you do it from the ...2020-06-23T14:18:18ZDaveDEditing a custom field choice label changes the `name` if you do it from the custom field admin screensBut it correctly leaves the `name` field alone if you do it from Admin - System Settings - Option Groups.
It appears to have been this way for a really long time, i.e. https://github.com/civicrm/civicrm-core/blame/5.26.0/CRM/Custom/Form...But it correctly leaves the `name` field alone if you do it from Admin - System Settings - Option Groups.
It appears to have been this way for a really long time, i.e. https://github.com/civicrm/civicrm-core/blame/5.26.0/CRM/Custom/Form/Option.php#L390
1. Go to Administer - Customize - Custom Fields.
2. Find or create one that has a list of option choices, like a Select field.
3. Pick one of the option choices to edit and make a note of the value of `name` for it, e.g. with api explorer do `OptionValue - Get` and for `option group id` pick this choice list's option group. Or look in the database directly in civicrm_option_value.
4. Edit the choice and change the label.
5. Do the api explorer query again or look in the database - the `name` has changed.
This seems to be just for custom fields. I'm sure I would have noticed it at some point if it was for something built-in like activity type.5.28.0https://lab.civicrm.org/dev/core/-/issues/1816[regression](for real this time) API doesn't allow passing option values by l...2020-06-25T16:47:52ZJonGold[regression](for real this time) API doesn't allow passing option values by labelThis is best replicated from the CLI.
In Civi 5.25 and below, when you use the API `create` action to modify a multiple-choice custom field (e.g. radio, checkboxes, etc.) you can pass either the OptionValue's `value` or `label`. Passin...This is best replicated from the CLI.
In Civi 5.25 and below, when you use the API `create` action to modify a multiple-choice custom field (e.g. radio, checkboxes, etc.) you can pass either the OptionValue's `value` or `label`. Passing a label no longer works. For example, on a site with the standard demo data, custom field 6 is a question, "How long have you been a donor?" Here are the potential options:
```
mysql> select label, value from civicrm_option_value WHERE option_group_id=99;
+-------------------+-------+
| label | value |
+-------------------+-------+
| Less than 1 year | 1 |
| 1-3 years | 2 |
| 4-6 years | 3 |
| 7-9 years | 4 |
| More than 9 years | 5 |
+-------------------+-------+
```
In Civi 5.25 and below, the following commands are equivalent:
```
cv api Contribution.create id=1 custom_6='1-3 years'
cv api Contribution.create id=1 custom_6=2
```
However, in Civi 5.26, if you run the first command, instead you get:
```json
{
"error_field": "custom_6",
"error_code": 2001,
"entity": "Contribution",
"action": "create",
"is_error": 1,
"error_message": "'1-3 years' is not a valid option for field custom_6"
}
```
`git bisect` tracks it down to [this commit](https://github.com/civicrm/civicrm-core/commit/1453c6db862950c135452bd36d20aa7f0e95c795) (attention @colemanw). Further testing tracks it down to the change in `CRM/Core/BAO/CustomField.php`; reverting that line fixes this.5.26.2https://lab.civicrm.org/dev/core/-/issues/1813Contribution amount not showing up on donation page when user not logged in, ...2020-06-16T10:20:40ZananelsonContribution amount not showing up on donation page when user not logged in, for non-priceset contributionsOverview
----------------------------------------
Donation form works as expected when a user is logged in, but does not provide donation amount fields when no user is logged in.
Discussion: https://chat.civicrm.org/civicrm/pl/469j6xwte...Overview
----------------------------------------
Donation form works as expected when a user is logged in, but does not provide donation amount fields when no user is logged in.
Discussion: https://chat.civicrm.org/civicrm/pl/469j6xwte7gnurechm4f8mm14r
Reproduction steps
----------------------------------------
1. Create and publish a Contribution page not linked to a Price Set.
1. Visit the resulting page when logged in to view correct behavior.
1. Open a private browsing window to view as not-logged-in to observe the missing fields.
Current behaviour
----------------------------------------
HTML extract from the form, missing the expected fields:
```html
<div id="priceset" class="crm-section price_set-section">
<div class="crm-section other_amount-section">
<div class="label"></div>
<div class="content other_amount-content">
</div>
<div class="clear"></div>
</div>
```
When fixed contribution amounts are also enabled:
```html
<div id="priceset" class="crm-section price_set-section">
<div class="crm-section contribution_amount-section">
<div class="label"></div>
<div class="content contribution_amount-content">
</div>
<div class="clear"></div>
</div>
<div class="crm-section other_amount-section">
<div class="label"></div>
<div class="content other_amount-content">
</div>
<div class="clear"></div>
</div>
```
Expected behaviour
----------------------------------------
HTML extract from the logged-in form, containing the expected fields:
```html
<div id="priceset" class="crm-section price_set-section">
<div class="crm-section other_amount-section">
<div class="label"><label for="price_8"> Donation Amount
<span class="crm-marker" title="This field is required.">*</span>
</label></div>
<div class="content other_amount-content">
<input price="[14,"1||"]" size="4" name="price_8" type="text" id="price_8" class="four crm-form-text required" />
</div>
<div class="clear"></div>
</div>
```
When fixed contribution amounts are also enabled:
```html
<div id="priceset" class="crm-section price_set-section">
<div class="crm-section contribution_amount-section">
<div class="label"><label>Donation Amount</label></div>
<div class="content contribution_amount-content">
<div class="price-set-row contribution_amount-row1">
<span class="price-set-option-content"><input price="["price_9","10||"]" data-amount="10.000000000" data-currency="USD" data-price-field-values="{"15":{"id":"15","price_field_id":"9","amount":"10.000000000","weight":"1","is_default":"0","is_active":"1","financial_type_id":"1","non_deductible_amount":"0.00","visibility_id":"0"},"16":{"id":"16","price_field_id":"9","amount":"20.000000000","weight":"2","is_default":"0","is_active":"1","financial_type_id":"1","non_deductible_amount":"0.00","visibility_id":"0"}}" visibility="0" onclick="clearAmountOther();" value="15" type="radio" id="CIVICRM_QFID_15_2" name="price_9" class="crm-form-radio" /><label for="CIVICRM_QFID_15_2"><span class="crm-price-amount-label"></span><span class="crm-price-amount-amount">$ 10.00</span></label></span>
</div>
<div class="price-set-row contribution_amount-row2">
<span class="price-set-option-content"><input price="["price_9","20||"]" data-amount="20.000000000" data-currency="USD" data-price-field-values="{"15":{"id":"15","price_field_id":"9","amount":"10.000000000","weight":"1","is_default":"0","is_active":"1","financial_type_id":"1","non_deductible_amount":"0.00","visibility_id":"0"},"16":{"id":"16","price_field_id":"9","amount":"20.000000000","weight":"2","is_default":"0","is_active":"1","financial_type_id":"1","non_deductible_amount":"0.00","visibility_id":"0"}}" visibility="0" onclick="clearAmountOther();" value="16" type="radio" id="CIVICRM_QFID_16_4" name="price_9" class="crm-form-radio" /><label for="CIVICRM_QFID_16_4"><span class="crm-price-amount-label"></span><span class="crm-price-amount-amount">$ 20.00</span></label></span>
</div>
<div class="price-set-row contribution_amount-row3">
<span class="price-set-option-content"><input price="["price_9","0"]" value="0" type="radio" id="CIVICRM_QFID_0_6" name="price_9" class="crm-form-radio" /><label for="CIVICRM_QFID_0_6">Other Amount</label></span>
</div>
</div>
<div class="clear"></div>
</div>
<div class="crm-section other_amount-section">
<div class="label"><label for="price_8">Other Amount</label></div>
<div class="content other_amount-content">
<input price="[14,"1||"]" size="4" name="price_8" type="text" id="price_8" class="four crm-form-text" />
</div>
<div class="clear"></div>
</div>
```
Environment information
----------------------------------------
<!-- Some of the items below may not be relevant for every bug - if in doubt please include more information than you think is neccessary. -->
* __Browser:__ _observed on Firefox, Safari, Chrome_
* __CiviCRM:__ _5.26.1_
* __PHP:__ _7.3.17_
* __CMS:__ _Drupal 7.71_5.26.2https://lab.civicrm.org/dev/core/-/issues/1812Do not allow enabling database logging when using multilingual2020-07-14T14:56:52ZspalmstromDo not allow enabling database logging when using multilingualOverview
----------------------------------------
If a non-US English system is set to logging (at least under Joomla), you get Network errors.
Reproduction steps
----------------------------------------
1. Set the system to logging.
2...Overview
----------------------------------------
If a non-US English system is set to logging (at least under Joomla), you get Network errors.
Reproduction steps
----------------------------------------
1. Set the system to logging.
2. Change a group membership.
3. View the change log - you get Network Error.
I'm flagging it up here as someone may have a quick fix for it or may know where view creation takes place.
Current behaviour
----------------------------------------
```
SELECT title FROM `joomla`.log_civicrm_group_en_GB WHERE log_date <= 20200612110114 AND id = 59 ORDER BY log_date DESC LIMIT 1 [nativecode=1146 ** Table 'joomla.log_civicrm_group_en_gb' doesn't exist]"]
```
Expected behaviour
----------------------------------------
You see the change log.
Environment information
----------------------------------------
<!-- Some of the items below may not be relevant for every bug - if in doubt please include more information than you think is neccessary. -->
* __Browser:__ Irrelevant_
* __CiviCRM:__ _5.26.1_ but may not be relevant
* __PHP:__ _7.4, but irrelevant__
* __CMS:__ _Joomla 3.9.6 but may be irrelevant_
* __Database:__ _MySQL 5.7.30-log but probably irrelevant_
* __Web Server:__ _irrelevant..._
Comments
----------------------------------------
The issue is resolved by creating this view in MySQL. It would probably make sense for the *all* the necessary log views to be created when the log tables are created.
```
CREATE
ALGORITHM = UNDEFINED
DEFINER = `<database user in question`
SQL SECURITY DEFINER
VIEW `log_civicrm_group_en_GB` AS
SELECT
`log_civicrm_group`.`id` AS `id`,
`log_civicrm_group`.`name` AS `name`,
`log_civicrm_group`.`description` AS `description`,
`log_civicrm_group`.`source` AS `source`,
`log_civicrm_group`.`saved_search_id` AS `saved_search_id`,
`log_civicrm_group`.`is_active` AS `is_active`,
`log_civicrm_group`.`visibility` AS `visibility`,
`log_civicrm_group`.`where_clause` AS `where_clause`,
`log_civicrm_group`.`select_tables` AS `select_tables`,
`log_civicrm_group`.`where_tables` AS `where_tables`,
`log_civicrm_group`.`group_type` AS `group_type`,
`log_civicrm_group`.`cache_date` AS `cache_date`,
`log_civicrm_group`.`refresh_date` AS `refresh_date`,
`log_civicrm_group`.`parents` AS `parents`,
`log_civicrm_group`.`children` AS `children`,
`log_civicrm_group`.`is_hidden` AS `is_hidden`,
`log_civicrm_group`.`is_reserved` AS `is_reserved`,
`log_civicrm_group`.`created_id` AS `created_id`,
`log_civicrm_group`.`modified_id` AS `modified_id`,
`log_civicrm_group`.`title_en_GB` AS `title`,
`log_civicrm_group`.`log_date` AS `log_date`,
`log_civicrm_group`.`log_conn_id` AS `log_conn_id`,
`log_civicrm_group`.`log_user_id` AS `log_user_id`,
`log_civicrm_group`.`log_action` AS `log_action`
FROM
`log_civicrm_group`
```5.29.0https://lab.civicrm.org/dev/core/-/issues/1806Import Contribution of custom fields only accepts "Numeric Value" rather than...2020-06-16T10:20:04ZtapashImport Contribution of custom fields only accepts "Numeric Value" rather than "Label"It occurs after updating to CiviCRM v-5.26.x, on previous version it seems to have worked. And due to this issue I am not able to import hundreds of records.
When importing a contribution via csv with custom fields "Label", it comes wit...It occurs after updating to CiviCRM v-5.26.x, on previous version it seems to have worked. And due to this issue I am not able to import hundreds of records.
When importing a contribution via csv with custom fields "Label", it comes with an error **'Label' is not a valid option for field custom_xx.** Updating custom field set did not solve the issue.
If custom field is accessed this error message keep showing in drupal log
`"Warning: in_array() expects parameter 2 to be array, null given in CRM_Core_BAO_CustomField::setProfileDefaults() (line 1241 of /public_html//sites/all/modules/civicrm/CRM/Core/BAO/CustomField.php)."`
If custom fields are updated : This error message shows in log
`Notice: Undefined index: ADD in CRM_Logging_Schema->fixSchemaDifferencesFor() (line 437 of /home/webadmin/public_html/cmm/sites/all/modules/civicrm/CRM/Logging/Schema.php).`
5.26.2https://lab.civicrm.org/dev/core/-/issues/1805Autocomplete-select custom field is not searchable2021-02-23T00:53:02ZMonish DebAutocomplete-select custom field is not searchable
Reproduction steps
----------------------------------------
1. Create an 'Autocomplete Select' custom field for any component, say Contribution here
1. Update/add two or more records with these custom field options
1. Go to the desir...
Reproduction steps
----------------------------------------
1. Create an 'Autocomplete Select' custom field for any component, say Contribution here
1. Update/add two or more records with these custom field options
1. Go to the desired search form, here 'Find Contribution'
1. Select two or more option and submit the criteria
Current behavior
----------------------------------------
Doesn't return any result. Even the Qill message indicates that no values are selected
Screencast:
Expected behavior
----------------------------------------
It should return the result where the options are linked.
![before](/uploads/1aa659ce5f37d0084bb2d133d007cd0e/before.gif)
Technical comment
----------------------------------------
Internally the whereClause construct is wrong which is like
```civicrm_value_donor_information_3.test_12 = '1[:comma:]2[:comma:]3'```
instead of
```civicrm_value_donor_information_3.test_12 IN (1,2,3)```
Comments
----------------------------------------
ping @JoeMurray @eileen @seamuslee @JonGold @mattwire @MikeyMJCO @colemanw5.26.0Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/1803Update guzzle to d8 latest2020-09-02T07:13:33ZeileenUpdate guzzle to d8 latestI discovered that there was an incompatibility between the guzzle version in Omni vs Civi. It is an error handling issue so it was showing up in the fileExists function in one of our status checks & is fairly low impact.
On digging it s...I discovered that there was an incompatibility between the guzzle version in Omni vs Civi. It is an error handling issue so it was showing up in the fileExists function in one of our status checks & is fairly low impact.
On digging it seems the issue was due to Omnipay having guzzle 6.5.x & CiviCRM having 6.3.x & the Omnipay one getting picked up for a core civi call but then picking up one class from the core civi one.
Obviously composer & extensions continues to be a challenge but here I think the immediate fix is to update CiviCRM Guzzle to the one that ships with latest Drupal 8 - currently version": "6.5.4",`
https://git.drupalcode.org/project/drupal/-/blob/8.9.x/composer.lock#L1062
For now I'm downgrading Omnipay guzzle to match current CiviCRM
@seamuslee5.29.0https://lab.civicrm.org/dev/core/-/issues/1801[Activity] Default priority value whed add Activity2020-06-09T01:47:07Zmarcineq[Activity] Default priority value whed add ActivityOverview
----------------------------------------
I use a polish language CiviCRM. When i try create a activity - field "Priority" is empty. The default value doesn't insert into this field.
Reproduction steps
-------------------------...Overview
----------------------------------------
I use a polish language CiviCRM. When i try create a activity - field "Priority" is empty. The default value doesn't insert into this field.
Reproduction steps
----------------------------------------
0. Install CiviCRM with non-english language example polish.
1. Click on **Contacts -> Create activity**.
1. Field Priority is empty.
Current behaviour
----------------------------------------
![image](/uploads/cc5f1c8cd45ed12aaefc9ac819d083e4/image.png)
Priorities in polish:
![image](/uploads/eb91c0bb38a99fe9fd5ba191d06b1691/image.png)
Expected behaviour
----------------------------------------
Priority has selected "Normalny" (it's translated "Normal" value) as default.
Environment information
----------------------------------------
* __CiviCRM:__ _5.24.6 and any earlier version for at least 3 years_ <!-- If this problem relates to an upgrade, then specify both old and new versions -->
* __PHP:__ _7.3/...__
* __CMS:__ _Drupal 7.70/_
* __Database:__ _MySQL 5.7.26-29_
Comments
----------------------------------------
I think I found the cause of the problem, but I don't have the skills to correct it. I'm just an ordinary consultant.
I found a line of code that is responsible for displaying this field in the add activity form. https://github.com/civicrm/civicrm-core/blob/a0f5cb5aff686458dc729ea0a43fbf166f9a8979/CRM/Activity/Form/Activity.php#L585
It shows search "Normal". However, I think that CiviCRM searches in the "Label" column in the database, not "Value" hence after changing the label - this field becomes empty by default.
When I replaced "Normal" on the test version with "Normal" (label in Polish) - the default option appeared correctly.
5.28.0https://lab.civicrm.org/dev/core/-/issues/1798Relative date filter - End of yesterday not working properly2020-06-08T15:18:49ZSandor SemseyRelative date filter - End of yesterday not working properlyOverview
----------------------------------------
Relative date filter `To end of yesterday` not working correctly: it's end date is today, not yesterday.
Reproduction steps
----------------------------------------
1. Click on **Contrib...Overview
----------------------------------------
Relative date filter `To end of yesterday` not working correctly: it's end date is today, not yesterday.
Reproduction steps
----------------------------------------
1. Click on **Contributions -> Find Contributions**.
1. Select **Date Receiced** -> *End of yesterday* then click **Search**.
1. Check date in search criteria
Current behaviour
----------------------------------------
End date is today midnight.
![Screenshot_from_2020-06-05_17-03-51](/uploads/e72d5a4b2e705ff6591c48b3ef3cccc3/Screenshot_from_2020-06-05_17-03-51.png)
Expected behaviour
----------------------------------------
End date is yesterday midnight.
Environment information
----------------------------------------
[CiviCRM Drupal Sandbox](https://dmaster.demo.civicrm.org)
Comments
----------------------------------------
I've checked the rest works well.
Proposed [Patch](https://github.com/civicrm/civicrm-core/pull/17512) is also supplied on GitHub5.28.0https://lab.civicrm.org/dev/core/-/issues/1797jquery validation type error on the credit card field2020-06-06T01:16:36Zalicefruminjquery validation type error on the credit card fieldOverview
----------------------------------------
On front end contribution forms with Credit Card Processing enabled, the [jQuery Validation Plugin](https://jqueryvalidation.org/creditcard-method/) is choking on the credit card field an...Overview
----------------------------------------
On front end contribution forms with Credit Card Processing enabled, the [jQuery Validation Plugin](https://jqueryvalidation.org/creditcard-method/) is choking on the credit card field and throwing the following error in the console: `TypeError: a.validator.methods[d] is undefined. Exception occurred when checking element credit_card_number, check the 'creditcard' method. jquery.validate.min.js:4:11231`
I think this broke when the jQuery Validation Plugin was updated with this [commit](https://github.com/civicrm/civicrm-core/pull/16625) in CiviCRM 5.25.
Reproduction steps
----------------------------------------
1. go to a front end contribution form with credit card processing set up
1. Enter a 1 into the credit card number field
Current behaviour
----------------------------------------
an error is thrown in the console.
NO validation error is thrown
SCREENSHOT FROM CiviCRM v5.25
![typeerror](/uploads/92a9c0bba3c9fd0f036e2178740f34b2/typeerror.png)
Expected behaviour
----------------------------------------
no error should appear in the console
an "Invalid credit card number" message should appear next to the field
SCREENSHOT FROM CiviCRM v5.24
![error](/uploads/310bda7df2cc96594ee8e53628537d3a/error.png)
Environment information
----------------------------------------
I was able to recreate this on http://wpmaster.demo.civicrm.org/ (CiviCRM v5.27) and (CiviCRM v5.25)5.26.1https://lab.civicrm.org/dev/core/-/issues/1795Using Parent tag in search form doesn't pull contacts marked with child tag i...2021-04-01T11:40:23ZMonish DebUsing Parent tag in search form doesn't pull contacts marked with child tag in search form resultReproduction steps
----------------------------------------
Steps to replicate:
1. Create a parent tag A and child tag A1
2. Create/update contact and tag with A1
3. Go to 'Find Contacts' or 'Find Contributions' and search by Tag - A
...Reproduction steps
----------------------------------------
Steps to replicate:
1. Create a parent tag A and child tag A1
2. Create/update contact and tag with A1
3. Go to 'Find Contacts' or 'Find Contributions' and search by Tag - A
Current behaviour
----------------------------------------
```
1. In 'Find Contact' result, it doesn't show contact which is tagged with child tag A1
2. In 'Find Contributions' result, it doesn't pull contribution(s) of contact tagged with child tag A1
```
Expected behaviour
----------------------------------------
Searching using a parent tag should automatically include the contacts which are in parent tag A and in its n child tag(s) - An. In this use-case it should show contact tagged with child A1 tag.
Comments
----------------------------------------
ping @JoeMurray @eileen @seamuslee @lcdweb5.29.0Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/1794Deselected checkbox settings are not saved2020-06-06T01:16:09Zaydunsaidan.saunders@squiffle.ukDeselected checkbox settings are not savedOverview
----------------------------------------
See https://civicrm.stackexchange.com/questions/35803/some-checkbox-settings-not-applying
Reproduction steps
----------------------------------------
1. Click on **Administer > Customize...Overview
----------------------------------------
See https://civicrm.stackexchange.com/questions/35803/some-checkbox-settings-not-applying
Reproduction steps
----------------------------------------
1. Click on **Administer > Customize Data and Screens > Custom Fields**.
1. Choose a custom field set, **more > Settings**
1. Choose one of the selected tickboxes and deselect.
1. Save
1. Re-open the settings page and observe that the checkbox is still selected
Current behaviour
----------------------------------------
Deselected value is not saved
Expected behaviour
----------------------------------------
Deselected value is saved
Environment information
----------------------------------------
* __CiviCRM:__ _Master_ <!-- If this problem relates to an upgrade, then specify both old and new versions -->
Confirmed on dmaster.demo.civicrm.org5.26.1https://lab.civicrm.org/dev/core/-/issues/1791E_WARNINGS when viewing list of pledge payments2020-05-31T22:32:29ZDaveDE_WARNINGS when viewing list of pledge payments1. Add a pledge for a contact. The details don't matter much, e.g. put in an amount and leave all the rest as defaults.
2. On the contact's pledges tab, right-click on the triangle to the left of the table that expands the pledge payment...1. Add a pledge for a contact. The details don't matter much, e.g. put in an amount and leave all the rest as defaults.
2. On the contact's pledges tab, right-click on the triangle to the left of the table that expands the pledge payment sequence and choose Open in New Tab.
3. Screen fills with E_WARNINGS.
4. You can also see it if you click the triangle normally and then check drupal watchdog.
The cause is some missing quotes here: https://github.com/civicrm/civicrm-core/blob/5.25.0/templates/CRM/Pledge/Page/Payment.tpl#L345.27.0https://lab.civicrm.org/dev/core/-/issues/1787Regression : File fields export results in DB error2021-03-22T20:15:23ZyashodhaRegression : File fields export results in DB errorIt was possible to export fields earlier
![export](/uploads/b55eb19f9b54375925777dcf3284a10d/export.png)
as the file field was exported as the link
But now it gives DB error as it looks like it is trying to put in content instead.
```
D...It was possible to export fields earlier
![export](/uploads/b55eb19f9b54375925777dcf3284a10d/export.png)
as the file field was exported as the link
But now it gives DB error as it looks like it is trying to put in content instead.
```
Database Error Code: Data too long for column 'custom_13' at row 1, 1406
Additional Details:
Array
(
[callback] => Array
(
[0] => CRM_Core_Error
[1] => handle
)
[code] => -1
[message] => DB Error: unknown error
[mode] => 16
[debug_info] =>
INSERT INTO civicrm_tmp_d_export_f8e0146418cb04e43d04334f268fd888 (`id`, `display_name`, `custom_13`, `participant_id`)
VALUES (1,'Mrs. Bernadette Ivanov',' <a href=\"/civicrm/file?reset=1&id=1&eid=42&fcs=66d344b164defb0da239223d1515c8a1b5e2305cd4be3c2527e18a2d6577acc4_1590738546_168\" class=\"crm-image-popup\" title=\"download.jpeg\">\n <i class=\"crm-i fa-file-image-o\" aria-hidden=\"true\"></i>\n </a>','42')
[nativecode=1406 ** Data too long for column 'custom_13' at row 1]
[type] => DB_Error
[user_info] =>
INSERT INTO civicrm_tmp_d_export_f8e0146418cb04e43d04334f268fd888 (`id`, `display_name`, `custom_13`, `participant_id`)
VALUES (1,'Mrs. Bernadette Ivanov',' <a href=\"/civicrm/file?reset=1&id=1&eid=42&fcs=66d344b164defb0da239223d1515c8a1b5e2305cd4be3c2527e18a2d6577acc4_1590738546_168\" class=\"crm-image-popup\" title=\"download.jpeg\">\n <i class=\"crm-i fa-file-image-o\" aria-hidden=\"true\"></i>\n </a>','42')
[nativecode=1406 ** Data too long for column 'custom_13' at row 1]
[to_string] => [db_error: message="DB Error: unknown error" code=-1 mode=callback callback=CRM_Core_Error::handle prefix="" info="
INSERT INTO civicrm_tmp_d_export_f8e0146418cb04e43d04334f268fd888 (`id`, `display_name`, `custom_13`, `participant_id`)
VALUES (1,'Mrs. Bernadette Ivanov',' <a href=\"/civicrm/file?reset=1&id=1&eid=42&fcs=66d344b164defb0da239223d1515c8a1b5e2305cd4be3c2527e18a2d6577acc4_1590738546_168\" class=\"crm-image-popup\" title=\"download.jpeg\">\n <i class=\"crm-i fa-file-image-o\" aria-hidden=\"true\"></i>\n </a>','42')
[nativecode=1406 ** Data too long for column 'custom_13' at row 1]"]
)
```
I was able to replicate this on dmaster as well
![dmaster](/uploads/3c55e8ed9b1552c7bd0f79022d6bd930/dmaster.png)5.28.0yashodhayashodhahttps://lab.civicrm.org/dev/core/-/issues/1785CiviCRM's use of PEAR/Log causes Drupal 8.6+ and 9.* compatibility issues.2020-06-08T07:56:55ZhomotechsualCiviCRM's use of PEAR/Log causes Drupal 8.6+ and 9.* compatibility issues.Overview
----------------------------------------
_Currently CiviCRM Core requires the `pear/log` library. This library in turn requires `pear/pear_exception:1.0.0`. The library itself is unmaintained at present._
_Drupal 8/9 require `p...Overview
----------------------------------------
_Currently CiviCRM Core requires the `pear/log` library. This library in turn requires `pear/pear_exception:1.0.0`. The library itself is unmaintained at present._
_Drupal 8/9 require `pear/pear_exception:1.0.1`. This introduces an additional extra step for composer installs (that it would be nice to move away from!)_
Reproduction steps
----------------------------------------
1. Create a Drupal 8 (or 9) site: `composer create-project drupal/recommended-project d8site`
1. Attempt to install/require CiviCRM: `composer require civicrm/civicrm-core:'^5.25' civicrm/civicrm-packages:'^5.25' civicrm/civicrm-drupal-8:'^5.25' civicrm/civicrm-asset-plugin:'^1.0.0'`
1. You will receive a composer error regarding the inability to evaluate the correct version of `pear/pear_exception` to install.
Comments
----------------------------------------
_We could fix this by forking `pear/log` and bumping it's version requirement for `pear/pear_exception`. We could keep the current composer workaround (`composer require pear/pear_exception:'1.0.1 as 1.0.0'`). We could propose an upstream patch and hope that repo is, in fact, maintained despite appearances?_
_I'm planning to explore option 3 above by filing an issue against `pear/log` here: https://github.com/pear/Log_5.27.0https://lab.civicrm.org/dev/core/-/issues/1784Contact restore from trash not working2020-06-01T00:07:09ZDaveDContact restore from trash not workingSee also https://civicrm.stackexchange.com/questions/35766/restore-from-trash-not-working-no-related-log-entries
Seems to be from here: https://github.com/civicrm/civicrm-core/commit/8e12bf072fe613c29da39614c8999a4041d7e1d2
In contactT...See also https://civicrm.stackexchange.com/questions/35766/restore-from-trash-not-working-no-related-log-entries
Seems to be from here: https://github.com/civicrm/civicrm-core/commit/8e12bf072fe613c29da39614c8999a4041d7e1d2
In contactTrashRestore() it used to fall through to the code below which does the save(). Then by just copying that block to deleteContact() and calling self::create() it doesn't work because it's expecting `contact_id` not `id`.
So would have started in 5.25.
The quick fix would be to use contact_id. But it sounds like there's a desire to deprecate this entire path of calling deleteContact in order to restore.5.26.0