CiviCRM Core issueshttps://lab.civicrm.org/dev/core/-/issues2018-12-03T22:40:58Zhttps://lab.civicrm.org/dev/core/-/issues/507Find Contacts: There is no possibility to add a tag to contacts from the sear...2018-12-03T22:40:58ZPradeep Nayakpradpnayak@gmail.comFind Contacts: There is no possibility to add a tag to contacts from the search results windowSteps:
* Click "View contact record"
* Click "Search" > "Find Contacts"
* Find some contact
* Click 3 dots for choosing an action near the contact
* Click 'Tag Contact'
* Try to choose some tag
**Actual result:** There is no possibili...Steps:
* Click "View contact record"
* Click "Search" > "Find Contacts"
* Find some contact
* Click 3 dots for choosing an action near the contact
* Click 'Tag Contact'
* Try to choose some tag
**Actual result:** There is no possibility to add a tag to contacts from the search results window.
![Screen_Shot_2018-11-06_at_17.11.21](/uploads/2e0f70bfc2ce2d5f29b044ac0208540b/Screen_Shot_2018-11-06_at_17.11.21.png)
**Expected result:** The user can add a tag to contacts from the search results window5.7.1https://lab.civicrm.org/dev/core/-/issues/508utf8 problems in profile2019-02-21T08:33:14Zsamuelsovutf8 problems in profileFirst seen in 5.7 (but might have been introduced in 5.5 or 5.6) :
* create a custom field with special characters (you don't even need to be localized) - copy / paste those in the label : `éÈàç`
![Screenshot_2018-11-06_Constituent_Inf...First seen in 5.7 (but might have been introduced in 5.5 or 5.6) :
* create a custom field with special characters (you don't even need to be localized) - copy / paste those in the label : `éÈàç`
![Screenshot_2018-11-06_Constituent_Information_-_Custom_Fields_CiviCRM_Sandbox_on_Drupal](/uploads/e9690a865570615685115e2bfabbe3ab/Screenshot_2018-11-06_Constituent_Information_-_Custom_Fields_CiviCRM_Sandbox_on_Drupal.png)
* add the field in a profile -> the characters are not readable
![Screenshot_2018-11-06_Your_Registration_Info_-_CiviCRM_Profile_Fields_CiviCRM_Sandbox_on_Drupal](/uploads/b764d78dab59f69afca81f5a20426cf8/Screenshot_2018-11-06_Your_Registration_Info_-_CiviCRM_Profile_Fields_CiviCRM_Sandbox_on_Drupal.png)5.7.2https://lab.civicrm.org/dev/core/-/issues/509Searching activity subject and details operates differently in 'Advanced Sear...2022-11-16T05:03:59ZRayWrightSearching activity subject and details operates differently in 'Advanced Search' and 'Find Activities'I've verified the following behavior of the demo site (5.8):
* Run an Advanced Search for an activity that contains "Tell a Friend" in the subject line - no results.
* Run an activity search for an activity that contains "Tell a Friend" ...I've verified the following behavior of the demo site (5.8):
* Run an Advanced Search for an activity that contains "Tell a Friend" in the subject line - no results.
* Run an activity search for an activity that contains "Tell a Friend" in the subject line - returns all the activities that subject line contains the search term, including "Subject for Tell a Friend".
* Same problem when you search only details or both.
I can see the following in feedback for the search results:
**On the advanced Search Screen:**
```
No matches found for:
Activity targeted to ...AND...
Activity Text (Subject Only) = 'Tell a Friend' ...AND...
Activity Status In Completed
```
**On the Find Activies Screen:**
```
Activity targeted to ...AND...
Activity Text (Subject Only) Like '%Tell a Friend%' ...AND...
Activity Status In Completed
```
Can the advanced search screen mirror what the Find Activies search is doing, using the "like" term by default rather than the "=" term? So the search screen wils be consistent and users don't need to use wildcards.
I did also write this up on StackExchange:https://civicrm.stackexchange.com/questions/26916/activity-search-by-subject-advanced-search-vs-activity-searchhttps://lab.civicrm.org/dev/core/-/issues/510unserialize(): Error, When duplicating site, database caused by userFramework...2022-09-12T05:03:51ZMouathunserialize(): Error, When duplicating site, database caused by userFrameworkResourceURLBug error
`PHP Notice: unserialize(): Error at offset 60 of 66 bytes in /home/*****/******/wp-content/plugins/civicrm/civicrm/Civi/Core/SettingsBag.php on line 153`
Steps to reproduce the bug:
1. Have a stable production site running...Bug error
`PHP Notice: unserialize(): Error at offset 60 of 66 bytes in /home/*****/******/wp-content/plugins/civicrm/civicrm/Civi/Core/SettingsBag.php on line 153`
Steps to reproduce the bug:
1. Have a stable production site running CiviCRM 5.6.1 under WordPress 4.9.8 with url: https://*****.com
1. A defined variable for `userFrameworkResourceURL` in `wp-content/uploads/civicrm/civicrm.settings.php` and in the database under table `civicrm_setting` name: `userFrameworkResourceURL`
3. Create a duplicate/staging site (including new duplicated database) with a subdomain/url dev.*****.com and update `civicrm.settings.php` vars including `userFrameworkResourceURL`
1. Run upgrade database. everything is fine
1. On any page load
Receive error `unserialize(): Error at offset 60 of 66 bytes`
Workaround:
1. Delete the "value" from `userFrameworkResourceURL` in the database.
```SELECT * FROM `civicrm_setting` WHERE `name` = 'userFrameworkResourceURL' ```
1. Go to `Settings - Resource URLs` and hit save
1. Proper serialized value gets written in the database
Note: if `userFrameworkResourceURL` is defined in `civicrm.settings.php` (which is the default at least in WordPress install)
Saving through the web-end doesn't overwrite the database hence the "workaround"https://lab.civicrm.org/dev/core/-/issues/511Membership Dashboard shows incorrect month2018-11-09T22:11:45Zaydunsaidan.saunders@squiffle.ukMembership Dashboard shows incorrect month![Screenshot_from_2018-11-08_11-56-38](/uploads/1778dee40d7c1e2aa1ecfdb9c80a362a/Screenshot_from_2018-11-08_11-56-38.png)
Last month = October - correct
This month = April - incorrect. Should be November
This problem was introduced i...![Screenshot_from_2018-11-08_11-56-38](/uploads/1778dee40d7c1e2aa1ecfdb9c80a362a/Screenshot_from_2018-11-08_11-56-38.png)
Last month = October - correct
This month = April - incorrect. Should be November
This problem was introduced in 4.7.23-rc5.9aydunsaidan.saunders@squiffle.ukaydunsaidan.saunders@squiffle.ukhttps://lab.civicrm.org/dev/core/-/issues/512Cannot update checkbox fields in activities using "Update Multiple Activities"2022-10-25T05:03:40ZalarmingcodCannot update checkbox fields in activities using "Update Multiple Activities"Error found on client site (5.3.1) replicated on sandbox today
Updating activity custom data via "Update multiple activities" (Batch update via profile)
When data in a checkbox field is updated, error message appears
```
CiviCRM_API3_...Error found on client site (5.3.1) replicated on sandbox today
Updating activity custom data via "Update multiple activities" (Batch update via profile)
When data in a checkbox field is updated, error message appears
```
CiviCRM_API3_Exception: "'' is not a valid option for field custom_15"
#0 /srv/buildkit/build/dmaster/sites/all/modules/civicrm/CRM/Activity/Form/Task/Batch.php(242): civicrm_api3("activity", "create", (Array:7))
#1 /srv/buildkit/build/dmaster/sites/all/modules/civicrm/CRM/Core/Form.php(489): CRM_Activity_Form_Task_Batch->postProcess()
#2 /srv/buildkit/build/dmaster/sites/all/modules/civicrm/CRM/Core/StateMachine.php(160): CRM_Core_Form->mainProcess()
#3 /srv/buildkit/build/dmaster/sites/all/modules/civicrm/CRM/Core/QuickForm/Action/Next.php(61): CRM_Core_StateMachine->perform(Object(CRM_Activity_Form_Task_Batch), "next", "Next")
#4 /srv/buildkit/build/dmaster/sites/all/modules/civicrm/packages/HTML/QuickForm/Controller.php(203): CRM_Core_QuickForm_Action_Next->perform(Object(CRM_Activity_Form_Task_Batch), "next")
#5 /srv/buildkit/build/dmaster/sites/all/modules/civicrm/packages/HTML/QuickForm/Page.php(103): HTML_QuickForm_Controller->handle(Object(CRM_Activity_Form_Task_Batch), "next")
#6 /srv/buildkit/build/dmaster/sites/all/modules/civicrm/CRM/Core/Controller.php(351): HTML_QuickForm_Page->handle("next")
#7 /srv/buildkit/build/dmaster/sites/all/modules/civicrm/CRM/Core/Invoke.php(309): CRM_Core_Controller->run((Array:3), (Array:1))
#8 /srv/buildkit/build/dmaster/sites/all/modules/civicrm/CRM/Core/Invoke.php(84): CRM_Core_Invoke::runItem((Array:13))
#9 /srv/buildkit/build/dmaster/sites/all/modules/civicrm/CRM/Core/Invoke.php(52): CRM_Core_Invoke::_invoke((Array:3))
#10 /srv/buildkit/build/dmaster/sites/all/modules/civicrm/drupal/civicrm.module(445): CRM_Core_Invoke::invoke((Array:3))
#11 /srv/buildkit/build/dmaster/includes/menu.inc(527): civicrm_invoke("activity", "search")
#12 /srv/buildkit/build/dmaster/index.php(21): menu_execute_active_handler()
#13 {main}
Sorry, due to an error, we are unable to fulfill your request at the moment. You may want to contact your administrator or service provider with more details about what action you were performing when this occurred.
'' is not a valid option for field custom_15
Return to home page.
```
Text fields, radio fields, select fields update without issue.
Issue does not arise when updating contact records via profilehttps://lab.civicrm.org/dev/core/-/issues/513Contribution Transact API - Use the payment processor payment method instead ...2018-11-11T00:10:14Zomar_compucorpContribution Transact API - Use the payment processor payment method instead of the payment_type field## Problem
When using the Contribution.Transact API, CiviCRM will either change the payment instrument to "Credit Card" or "Debit Card" based on the the value of payment_type field.
## How should it work
This is wrong and the payment...## Problem
When using the Contribution.Transact API, CiviCRM will either change the payment instrument to "Credit Card" or "Debit Card" based on the the value of payment_type field.
## How should it work
This is wrong and the payment instrument type should be taken form the used payment processor payment_instrument_id field.5.9https://lab.civicrm.org/dev/core/-/issues/514Premiums not saved when using PayPal_standard2018-11-09T20:53:16ZdarrickPremiums not saved when using PayPal_standardI have a contribution page setup with premiums. I am using both iAts and Paypal as payment processors. If a donor selects a premium and pays via iAts then the premium selected is saved along with the contribution. The receipt email al...I have a contribution page setup with premiums. I am using both iAts and Paypal as payment processors. If a donor selects a premium and pays via iAts then the premium selected is saved along with the contribution. The receipt email also shows the premium.
However, if the donor pays via Paypal. Which requires a redirect to Paypal and then a redirect back to the thank you page, the premium is not saved along with the contribution. It does show on both the confirm and thank you page however.https://lab.civicrm.org/dev/core/-/issues/515Empowered By Civicrm footer might overlap content: add clear:both2022-09-18T19:15:39ZphilmorbruEmpowered By Civicrm footer might overlap content: add clear:bothThe Empowered By footer at narrower screen widths might overlap content of a page with floating divs, such as Personal Campaign Page widgets.
Wrong:
![Overlapping](/uploads/cd2927f93de5a66d31a0674da4989826/Overlapping.jpeg)
Correct:
...The Empowered By footer at narrower screen widths might overlap content of a page with floating divs, such as Personal Campaign Page widgets.
Wrong:
![Overlapping](/uploads/cd2927f93de5a66d31a0674da4989826/Overlapping.jpeg)
Correct:
![Correct](/uploads/b8d6b66a32bc93352f8d6ae9c7293524/Correct.jpeg)
Easily fixed: civicrm.css, Line 670: `.crm-container #civicrm-footer.crm-public-footer {clear: both;}`https://lab.civicrm.org/dev/core/-/issues/516WSOD when importing sub-contact types2018-11-21T18:33:25ZandyburnsWSOD when importing sub-contact typesOn CiviCRM 5.6.1 when trying to import a, in my case, an organizational sub-contact type, the import fails with a WSOD after mapping fields on step 2.
Here is the error:
> [13-Nov-2018 08:09:56 America/New_York] PHP Fatal error: Uncau...On CiviCRM 5.6.1 when trying to import a, in my case, an organizational sub-contact type, the import fails with a WSOD after mapping fields on step 2.
Here is the error:
> [13-Nov-2018 08:09:56 America/New_York] PHP Fatal error: Uncaught Error: [] operator not
> supported for strings in
> /home/lporg/www/www/wp-content/plugins/civicrm/civicrm/CRM/Contact/Import/Parser.php:562
> Stack trace:
> #0
> /.../.../.../www/wp-content/plugins/civicrm/civicrm/CRM/Contact/Import/Parser/Contact.p
> hp(417): CRM_Contact_Import_Parser->getActiveFieldParams()
> #1
> /.../.../.../www/wp-content/plugins/civicrm/civicrm/CRM/Contact/Import/Parser/Contact.p
> hp(286): CRM_Contact_Import_Parser_Contact->summary(Array)
> #2 /.../.../.../www/wp-content/plugins/civicrm/civicrm/CRM/Contact/Import/Parser.php
> (199): CRM_Contact_Import_Parser_Contact->preview(Array)
> #3
> /.../.../.../www/wp-content/plugins/civicrm/civicrm/CRM/Contact/Import/Form/MapField.ph
> p(968): CRM_Contact_Import_Parser->run('civicrm_import_...', Array, 2, 4, '_id',
> '_status', '4', NULL, NULL, false, 30, 'Local_Affiliate', '11')
> #4
> /.../.../.../www/wp-content/plugins/civicrm/civicrm/CRM/Contact/Import/Form/MapField.ph
> p(668): CRM_Contact_Import_Form_MapField->submit(Array, Array)
> #5 /.../.../.../www/ in
> /.../.../.../www/wp-content/plugins/civicrm/civicrm/CRM/Contact/Import/Parser.php on
> line 562https://lab.civicrm.org/dev/core/-/issues/522Add case tokens to email activities2021-09-13T00:04:33ZeileenAdd case tokens to email activitieshttps://lab.civicrm.org/dev/core/-/issues/518Lybunt performance improvement2019-02-19T04:55:07ZeileenLybunt performance improvementA couple of years back I did some work on the performance of the Lybunt report https://issues.civicrm.org/jira/browse/CRM-17837 which succeeded in improving the query enough that it would run for prior years there is still an exponential...A couple of years back I did some work on the performance of the Lybunt report https://issues.civicrm.org/jira/browse/CRM-17837 which succeeded in improving the query enough that it would run for prior years there is still an exponential inefficiency in the query which means that 2 years later & some large number of donations later we are back to it not running.
The current query is
```
CREATE TEMPORARY TABLE civicrm_tmp_e_rptlybunt_20181114_5beb5dc8d8e46 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci
SELECT SQL_CALC_FOUND_ROWS contact_civireport.id as cid FROM civicrm_tmp_e_rptgrp_20181114_5beb5dc8d1b4b group_temp_table INNER JOIN civicrm_contact contact_civireport
ON group_temp_table.id = contact_civireport.id INNER JOIN civicrm_contribution contribution_civireport ON contribution_civireport.contact_id = contact_civireport.id
AND contribution_civireport.is_test = 0
AND contribution_civireport.receive_date BETWEEN '20170101000000' AND '20171231235959'
LEFT JOIN civicrm_contribution cont_exclude ON cont_exclude.contact_id = contact_civireport.id
AND cont_exclude.receive_date BETWEEN '2018-01-01' AND '20181231235959' WHERE cont_exclude.id IS NULL AND 1 AND 1
GROUP BY contact_civireport.id;
```
and it takes 394 seconds
to return only a few hundred rows (the group has only 730 contacts).
Playing around I was able to reduce this time to .24 second by re-writing the query as
```
SELECT SQL_CALC_FOUND_ROWS contact_civireport.id as cid
FROM civicrm_tmp_d_dflt_3b5e17ad9138b8cc56282f75b2967e9e group_temp_table INNER JOIN civicrm_contact contact_civireport
ON group_temp_table.id = contact_civireport.id
WHERE group_temp_table.id IN
(
SELECT group_temp_table.id FROM civicrm_tmp_d_dflt_3b5e17ad9138b8cc56282f75b2967e9e group_temp_table
INNER JOIN civicrm_contribution contribution_civireport ON contribution_civireport.contact_id = group_temp_table.id
AND contribution_civireport.is_test = 0
AND contribution_civireport.receive_date BETWEEN '20170101000000' AND '20171231235959'
)
AND group_temp_table.id IN
(
SELECT group_temp_table.id FROM civicrm_tmp_d_dflt_3b5e17ad9138b8cc56282f75b2967e9e group_temp_table LEFT JOIN
civicrm_contribution cont_exclude ON cont_exclude.contact_id = group_temp_table.id
AND cont_exclude.receive_date BETWEEN '2018-01-01' AND '20181231235959'
WHERE cont_exclude.id IS NULL
)
GROUP BY contact_civireport.id;
```
I experimented on our staging site on running the query on our WHOLE data base (ie. without the group constraint) and it completed in 720 seconds - which is outrageously good really since that legitimately queries a LOT of records.
I'm going to look at how to fix up the LYBUNT report to use the above query. There are already some tests from last time I worked on performance on this report.5.9https://lab.civicrm.org/dev/core/-/issues/519Event receipts for paid events contains extraneous information2022-09-15T05:03:47ZmadhaviEvent receipts for paid events contains extraneous informationCurrently using CiviCRM 5.3.2 and drupal 7.60
Receipts for events paid via PayPal have extra information related to contribution.
**To reproduce issue:**
1. Add custom fields of your choice for Contributions
2. Create a paid event a...Currently using CiviCRM 5.3.2 and drupal 7.60
Receipts for events paid via PayPal have extra information related to contribution.
**To reproduce issue:**
1. Add custom fields of your choice for Contributions
2. Create a paid event and assign `PayPal Standard` payment processor.
3. Enable online registration for the event and set `Send Confirmation Email` to `Yes`.
4. Register a participant for the event.
5. Check the receipt received and see if you get Contribution related custom fields in the email.
Anyone is facing this issue? May be with other payment processor?https://lab.civicrm.org/dev/core/-/issues/520Permission(s) for changing order of fields (eg. in pricesets)2022-09-14T05:03:43ZwdecraenePermission(s) for changing order of fields (eg. in pricesets)You can only change the order of fields when you have the 'administer CiviCRM' permission (see CRM/Core/xml/Menu/Admin.xml):
```xml
<item>
<path>civicrm/admin/weight</path>
<page_callback>CRM_Utils_Weight::fixOrder</page_cal...You can only change the order of fields when you have the 'administer CiviCRM' permission (see CRM/Core/xml/Menu/Admin.xml):
```xml
<item>
<path>civicrm/admin/weight</path>
<page_callback>CRM_Utils_Weight::fixOrder</page_callback>
</item>
```
When you have the permission to edit all events you can create/edit pricesets. But you can't order them when you don't have the 'administer CiviCRM' permission.
Quick fix (see [civicrm-520-permissions-for-changing-fields.patch](/uploads/7019c7ba597ca5b433ac879aa7c2926c/civicrm-520-permissions-for-changing-fields.patch)):
```xml
<item>
<path>civicrm/admin/weight</path>
<page_callback>CRM_Utils_Weight::fixOrder</page_callback>
<access_arguments>administer CiviCRM;access CiviEvent</access_arguments>
</item>
```
Question: is this sufficient? Or should we add more permissions to access_arguments or should we use a callback?https://lab.civicrm.org/dev/core/-/issues/521PCP Owner notification email sending before payment2023-08-14T05:03:17Zrita_compucorpPCP Owner notification email sending before paymentHi there,
When you are the owner of a fundraising page, you are supposed to receive a notification email after a successful donation has been made to your fundraising page. However when you are using a payment processor that navigates y...Hi there,
When you are the owner of a fundraising page, you are supposed to receive a notification email after a successful donation has been made to your fundraising page. However when you are using a payment processor that navigates you out from civicrm to its own payment page (like sagepay, or paypal standard) the owner notification is sent before the payment has been made.
Steps:
- create a contribution page and enable fundraising pages to be created under it
- make the payment processor to be Sagepay or Paypal standard
- create a fundraising page
- then log out and start donating to the fundraising page
- when you click confirm button on the fundraising page, you will get navigated to the payment processor you set up for the contribution page --> this is the point when the notification email is sent to the fundraiser
Expected result: notification for the owner is sent only after a successful donation to the fundraising pagehttps://lab.civicrm.org/dev/core/-/issues/524Lybunt incorrect / misleading rowCount information2022-09-14T05:03:42ZeileenLybunt incorrect / misleading rowCount informationThe Lybunt report declares a misleading number of rows because it includes the rollup row in the count.
So for example there are 9 matching contacts but we see the confusing message Rows Listed 9, Rows found 10. The 10th Row is a calcu...The Lybunt report declares a misleading number of rows because it includes the rollup row in the count.
So for example there are 9 matching contacts but we see the confusing message Rows Listed 9, Rows found 10. The 10th Row is a calculation of the total rows.
![Screenshot_2018-11-15_14.20.45](/uploads/5933de1016a4fb8b9b1e4447206b07a7/Screenshot_2018-11-15_14.20.45.png)
When there is just one screen we can remove a row that is meant to help - but doesn't & the 'Total Rows' line goes away.
However, when there are multiple pages we have both the pager & the totals to deal with. If we remove the row from the totals count but not the pager it creates a confusing mismatch. If we remove from both the last row may become unreachable.
On the Lybunt report a maximum of one level of group by is in play. However, where reports support multiple levels of group by it's unknowable how many rows are rollup rows.
This might all be an argument against the use of Rollup - but not going there at this stage I think my best proposal is to add text to indicate the possible presence of calc rows in the Total Rows
![Screenshot_2018-11-15_14.11.37](/uploads/cd4c266eb5c49570815b130a809f26ec/Screenshot_2018-11-15_14.11.37.png)https://lab.civicrm.org/dev/core/-/issues/525Extraneous br-tags in rendered note-fields2018-11-16T00:44:05Zthomas_SYSTOPIAExtraneous br-tags in rendered note-fieldsHow to reproduce on a fresh 5.7er CiviCRM:
* Create a contact-inline-custom-group and a note-field with a TextArea- or a RichTextEditor-FieldType.
* Save this field with a multiline text on an arbitrary Contact.
You may see all linebrea...How to reproduce on a fresh 5.7er CiviCRM:
* Create a contact-inline-custom-group and a note-field with a TextArea- or a RichTextEditor-FieldType.
* Save this field with a multiline text on an arbitrary Contact.
You may see all linebreaks displayed doubly.5.9https://lab.civicrm.org/dev/core/-/issues/526Feedback cannot be translated when saving Contribution Page forms in language...2018-11-15T19:32:34ZhaystackFeedback cannot be translated when saving Contribution Page forms in languages other than EnglishWhen saving forms to configure a Contribution Page in languages other than English, the feedback given is not translated or translatable.
Example below (FWIW that's the CiviCRM Admin Utilities theme):
![Screen_Shot_2018-11-15_at_12.37....When saving forms to configure a Contribution Page in languages other than English, the feedback given is not translated or translatable.
Example below (FWIW that's the CiviCRM Admin Utilities theme):
![Screen_Shot_2018-11-15_at_12.37.55](/uploads/a7b2bf0762d271e82c595b4bdc490a16/Screen_Shot_2018-11-15_at_12.37.55.png)
This can be rectified by applying [the same logic as exists for Event Management forms](https://github.com/civicrm/civicrm-core/blob/master/CRM/Event/Form/ManageEvent.php#L376-L378).5.9https://lab.civicrm.org/dev/core/-/issues/527Non translatable fields in profile schema2021-04-22T00:08:01ZsamuelsovNon translatable fields in profile schemaThere are a few fields in profile that should be translatable :
* Public Title
* Description (not a public data but some orgs have staff with different preferred language)
* Redirect URL
* Cancel redirect URL
* Cancel Button Text
* ...There are a few fields in profile that should be translatable :
* Public Title
* Description (not a public data but some orgs have staff with different preferred language)
* Redirect URL
* Cancel redirect URL
* Cancel Button Text
* Submit Button Text
![Screenshot_2018-11-15_Profile_Settings_-_My_profile](/uploads/1cb65d527d439bb236b9e9cbe59993c8/Screenshot_2018-11-15_Profile_Settings_-_My_profile.png)samuelsovsamuelsovhttps://lab.civicrm.org/dev/core/-/issues/528Advanced Search -> Contribution Tab and Contribution Dashboard returns a fata...2018-11-17T02:37:46ZjitendraAdvanced Search -> Contribution Tab and Contribution Dashboard returns a fatal error.On Dmaster
https://dmaster.demo.civicrm.org/civicrm/contact/search/advanced?reset=1 -> Expanding the contribution div section displays a network error
![image](/uploads/1fe2c8909315b51ebded571fcb0d023d/image.png)
Similarly, Contributi...On Dmaster
https://dmaster.demo.civicrm.org/civicrm/contact/search/advanced?reset=1 -> Expanding the contribution div section displays a network error
![image](/uploads/1fe2c8909315b51ebded571fcb0d023d/image.png)
Similarly, Contribution Dashboard returns a fatal error - https://dmaster.demo.civicrm.org/civicrm/contribute?reset=15.9jitendrajitendrahttps://lab.civicrm.org/dev/core/-/issues/529Editing smart group removes search criteria unless criteria tabs are opened f...2018-12-05T20:28:23ZsudomanEditing smart group removes search criteria unless criteria tabs are opened firstWhen editing the search terms in a smart group, If I click "Search" without first opening the drop down tabs that contain info about all of the search criteria, then those terms are removed from the search, returning a different number o...When editing the search terms in a smart group, If I click "Search" without first opening the drop down tabs that contain info about all of the search criteria, then those terms are removed from the search, returning a different number of contacts.
For instance, if my search terms are: `Country = United Kingdom ...AND... Contribution Date - greater than or equal to "January 2nd, 2017 12:00 AM"`, then I need to open the Address Fields and Contributions tabs before clicking "Search", otherwise, I get a much larger set of contacts.
I'm using CiviCRM version 5.3.1 on Drupal 7. Thanks! : )5.8Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/530Make a_b relationships available as case roles2019-12-02T19:31:10ZalicefruminMake a_b relationships available as case rolesCurrently one can only create case roles for CiviCRM Cases that are one direction (one only sees the options label_b_a). See screen shot below that shows the "New Case Type" Ui with the options for "add role" open (they are all label_b_a...Currently one can only create case roles for CiviCRM Cases that are one direction (one only sees the options label_b_a). See screen shot below that shows the "New Case Type" Ui with the options for "add role" open (they are all label_b_a) as one can see by checking against the Relationship Type table next to it.
![relTypesNewCaseType](/uploads/193cce5a0e6d7c395b8003e3c4593241/relTypesNewCaseType.png)
We are proposing making it so users can choose from the full list of relationships (label_a_b and label_b_a).
Rationale:
---------
1. There could be scenarios where cases should be set up to have case roles in any direction. For example.. an intergenerational case where its children taking care of parents vs a school case where its parents taking care of kids.
2. Jira issue [CRM-19754](https://issues.civicrm.org/jira/browse/CRM-19754) suggests that the options available should be label_a_b. One pr to make this change was accepted [pr 9560](https://github.com/civicrm/civicrm-core/pull/9560) a second [pr 9975](https://github.com/civicrm/civicrm-core/pull/9975) was closed due to in action and incompleteness. Making the Case Types bidirectional would solve the bugs documented in [pr 9975](https://github.com/civicrm/civicrm-core/pull/9975) without a fix up script.
Bugs this change fixes:
----------------------
1) when creating a case type, you can only select B-to-A labels
![image_1_](/uploads/11c127df30b22761b5653353534484da/image_1_.png)
then after creating a case you see the B-to-A "Parent of" label
![image_2_](/uploads/01922f80d41cd2fe8bb227d73d5e36c0/image_2_.png)
after picking the contact, the label becomes the A-to-B "Child of"
![image_4_](/uploads/a29e1194dd5af9c0b64d5945bd1ccf4f/image_4_.png)
2) When viewing a case, the Roles drop-down, only shows the labels in the B to A direction, but when one assigns the case role in the B to A direction the label displayed is in the A to B direction.
3) When editing a Case Activity in the "Send a copy" the role is correct but the label is wrong.
4) Currently, all relationships are showing the B contact, regardless of who the client is
yet they all have the B-to-A label, regardless of who the client is for example:
![Screenshot_2019-03-29_Dr_Rebekah_Cooper_-_Housing_Support_grantdetailreport](/uploads/e00afec39078c45673ab2b7f1cc0c252/Screenshot_2019-03-29_Dr_Rebekah_Cooper_-_Housing_Support_grantdetailreport.png)
In this example Rebekah is the client, and the case has her as the parent of Kathleen and the child of Carylon. In the send a copy box, she's shown as parent of Carylon and her relationship w/ Kathleen is displayed as her being parent of herself.
5) when reassigning a case role that is B-to-A (where the client is on the B side of the relationship), the list of available contacts is the contact type of the B side
since households and organizations are frequently on the B side of a relationship, this makes it difficult-to-impossible to manage a case where the client is a household or organization
![reassign](/uploads/9d71615554a0e1a15a0b6776ab9aac45/reassign.png)
Places in the Code that would need to be adjusted:
-----------------------------------------------
+ CRM/Report/Form/Case/Summary.php
+ CRM/Report/Form/Case/Detail.php
+ CRM/Case/XMLProcessor/Process.php
+ CRM/Case/XMLProcessor.php
+ CRM/Case/ManagedEntities.php
+ CRM/Case/BAO/Query.php
+ CRM/Case/BAO/Case.php
+ ang/crmCaseType.js5.16.0https://lab.civicrm.org/dev/core/-/issues/531Drop support for MySQL 5.1? Maybe more?2020-09-09T05:24:02ZJonGoldDrop support for MySQL 5.1? Maybe more?While reviewing some PRs on the sysadmin docs, it came to my attention that we're currently saying we support MySQL 5.1.3+. MySQL 5.1 has been [EOL since 2013](https://www.fromdual.com/support-for-mysql-from-oracle). 5.5 went EOL at th...While reviewing some PRs on the sysadmin docs, it came to my attention that we're currently saying we support MySQL 5.1.3+. MySQL 5.1 has been [EOL since 2013](https://www.fromdual.com/support-for-mysql-from-oracle). 5.5 went EOL at the end of 2015, with extended support ending this year.
While the impetus to drop support for MySQL isn't as strong as it is for PHP, I think we should consider dropping support before someone reports an issue on an untested configuration and points to the minimum requirements in the docs.
Whether this is just a matter of updating the docs or if we want to set up a check for `MIN_MYSQL_VERSION` and `MIN_RECOMMENDED_MYSQL_VERSION` is something we can discuss. Just updating the docs might be preferable so we don't need to navigate the MySQL/MariaDB/Percona business in code. That said, we should document whether MariaDB/Percona are supported, since we've certainly seen errors particular to one or another.https://lab.civicrm.org/dev/core/-/issues/532Multi-select field not respected in batch search2018-12-10T17:15:43ZPradeep Nayakpradpnayak@gmail.comMulti-select field not respected in batch searchThe "Search by Financial Type" is a multi-select, but if you try to search by multiple values it fails validation (see screenshot 653 attached).
![Selection_653](/uploads/a61c238371a509c511a625d116d56413/Selection_653.png)
PR:https://...The "Search by Financial Type" is a multi-select, but if you try to search by multiple values it fails validation (see screenshot 653 attached).
![Selection_653](/uploads/a61c238371a509c511a625d116d56413/Selection_653.png)
PR:https://github.com/civicrm/civicrm-core/pull/131215.9https://lab.civicrm.org/dev/core/-/issues/533Update recaptcha to v32023-06-30T05:03:20ZMartinUpdate recaptcha to v3Google recaptcha v3 has now been officially released:
https://webmasters.googleblog.com/2018/10/introducing-recaptcha-v3-new-way-to.html
Obviously v2 is still working for the time being but it would be beneficial to update core to use v...Google recaptcha v3 has now been officially released:
https://webmasters.googleblog.com/2018/10/introducing-recaptcha-v3-new-way-to.html
Obviously v2 is still working for the time being but it would be beneficial to update core to use v3. For example one of our clients is currently seeing this issue (significant usability bug in iOS):
https://github.com/google/recaptcha/issues/130
Thanks!https://lab.civicrm.org/dev/core/-/issues/534Print Invoice and Pay Now buttons do not appear on Contact Dashboard2019-04-20T00:34:14ZkcristianoPrint Invoice and Pay Now buttons do not appear on Contact DashboardIn CiviCRM 5.7 do the following:
* Enable Tax and invoicing and select default Invoice Payment page on `/civicrm/admin/setting/preferences/contribute?reset=1`
![image](/uploads/72f491bb82397607aea4539073d18a78/image.png)
* Contact Das...In CiviCRM 5.7 do the following:
* Enable Tax and invoicing and select default Invoice Payment page on `/civicrm/admin/setting/preferences/contribute?reset=1`
![image](/uploads/72f491bb82397607aea4539073d18a78/image.png)
* Contact Dashboard after Contributions/Event Registration
![image](/uploads/cc40c9e2db7c94a86b204880dc1b9891/image.png)
Repeat the above steps on 5.8 RC and Print Invoice and Pay Now Links do not appear where appropriate
![image](/uploads/9f1d524c1dd3c7305bac7fd99ea29ef6/image.png)5.12.1https://lab.civicrm.org/dev/core/-/issues/535Do not allow to edit recurring contribution amount if one line item exist2019-01-28T05:17:49ZmadhaviDo not allow to edit recurring contribution amount if one line item existThis is an improvement in https://issues.civicrm.org/jira/browse/CRM-16398
Currently CiviCRM allows to edit recurring contribution amount if one related contribution exists.
The Recurring contribution edit UI should not allow to edit the...This is an improvement in https://issues.civicrm.org/jira/browse/CRM-16398
Currently CiviCRM allows to edit recurring contribution amount if one related contribution exists.
The Recurring contribution edit UI should not allow to edit the total amount for transactions with one line item.
**Technical Details:**
1. In /Contribute/Form/UpdateSubscription.php updated the check to >= 1 (Greater than or equal to 1)https://lab.civicrm.org/dev/core/-/issues/536Contribution tab is slow to render for contacts with many contributions (in l...2019-04-26T23:08:59ZeileenContribution tab is slow to render for contacts with many contributions (in large database)We are finding that the contribution tab is extremely slow to render on contacts with a large number of contributions. While we are taking at a different scale db to most instances (many millions of contacts and the very slow to load con...We are finding that the contribution tab is extremely slow to render on contacts with a large number of contributions. While we are taking at a different scale db to most instances (many millions of contacts and the very slow to load contacts have > 10,000 donation) from my digging the issues that cause the slowness are not limited to us and the query improvements that work for us are generally applicable.
We are seeing maybe 10 queries that take about 6 seconds each. In each case it is possible to reduce the query to around 0.05 seconds with an index hint. The issue is exacerbated by the fact that several of the slower queries run twice each.
I've pasted all the queries below
1.
SELECT COUNT(*) as count,
SUM(total_amount) as amount,
AVG(total_amount) as average,
currency
FROM civicrm_contribution b
LEFT JOIN civicrm_line_item i ON i.contribution_id = b.id AND i.entity_table = 'civicrm_contribution' AND i.financial_type_id NOT IN (3,1,4,2)
WHERE b.contact_id IN (76) AND b.contribution_status_id = 1 AND b.is_test = 0 AND b.receive_date >= 20180101 AND b.receive_date < 20190101
GROUP BY currency;
2.
------------------------------
SELECT count( DISTINCT civicrm_contribution.id ) as rowCount
FROM civicrm_contact contact_a
LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' )
AND (contact_a.is_deleted = 0) ;
3.
------------------------------------
SELECT COUNT( conts.total_amount ) as total_count,
SUM( conts.total_amount ) as total_amount,
AVG( conts.total_amount ) as total_avg,
conts.currency as currency FROM (
SELECT civicrm_contribution.total_amount, COUNT(civicrm_contribution.total_amount) as civicrm_contribution_total_amount_count,
civicrm_contribution.currency FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1 GROUP BY civicrm_contribution.id
) as conts
GROUP BY currency;
4.
------------------------------------
SELECT COUNT( conts.total_amount ) as total_count,
SUM( conts.total_amount ) as total_amount,
AVG( conts.total_amount ) as total_avg,
conts.currency as currency, SUBSTRING_INDEX(GROUP_CONCAT(conts.total_amount
ORDER BY conts.civicrm_contribution_total_amount_count DESC SEPARATOR ';'), ';', 1) as amount,
MAX(conts.civicrm_contribution_total_amount_count) as civicrm_contribution_total_amount_count
FROM (SELECT civicrm_contribution.total_amount, COUNT(civicrm_contribution.total_amount) as civicrm_contribution_total_amount_count,
civicrm_contribution.currency
FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1
GROUP BY currency, civicrm_contribution.total_amount ORDER BY civicrm_contribution_total_amount_count DESC) as conts
GROUP BY currency;
5.
---------------------------------------
SELECT count(*) as count FROM civicrm_contact contact_a
LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id
WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0)
AND civicrm_contribution.contribution_status_id = 1 AND civicrm_contribution.currency = 'AUD';
6.
------------------------------------
SELECT civicrm_contribution.total_amount as median
FROM civicrm_contact contact_a
LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id
WHERE ( contact_a.id = '76' )
AND (contact_a.is_deleted = 0)
AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1
AND civicrm_contribution.currency = 'AUD'
ORDER BY median LIMIT 0,1;
7.
------------------------------------
SELECT count(*) as count FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1 AND civicrm_contribution.currency = 'NZD';
8.
------------------------------------
SELECT civicrm_contribution.total_amount as median
FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1 AND civicrm_contribution.currency = 'NZD'
ORDER BY median LIMIT 0,1;
9.
------------------------------------
SELECT count(*) as count FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1 AND civicrm_contribution.currency = 'USD';
10.
------------------------------------
SELECT civicrm_contribution.total_amount as median
FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1 AND civicrm_contribution.currency = 'USD'
ORDER BY median LIMIT 0,2;
11.
------------------------------------
SELECT COUNT( conts.total_amount ) as cancel_count,
SUM( conts.total_amount ) as cancel_amount,
AVG( conts.total_amount ) as cancel_avg,
conts.currency as currency FROM (
SELECT civicrm_contribution.total_amount, civicrm_contribution.currency FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.cancel_date IS NOT NULL
GROUP BY civicrm_contribution.id
) as conts
GROUP BY currency;
12.
------------------------------------
SELECT COUNT( conts.total_amount ) as total_count,
SUM( conts.total_amount ) as total_amount,
AVG( conts.total_amount ) as total_avg,
conts.currency as currency FROM (
SELECT civicrm_contribution.total_amount, COUNT(civicrm_contribution.total_amount) as civicrm_contribution_total_amount_count,
civicrm_contribution.currency FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1 GROUP BY civicrm_contribution.id
) as conts
GROUP BY currency;
13.
------------------------------------
SELECT COUNT( conts.total_amount ) as total_count,
SUM( conts.total_amount ) as total_amount,
AVG( conts.total_amount ) as total_avg,
conts.currency as currency, SUBSTRING_INDEX(GROUP_CONCAT(conts.total_amount
ORDER BY conts.civicrm_contribution_total_amount_count DESC SEPARATOR ';'), ';', 1) as amount,
MAX(conts.civicrm_contribution_total_amount_count) as civicrm_contribution_total_amount_count
FROM (SELECT civicrm_contribution.total_amount, COUNT(civicrm_contribution.total_amount) as civicrm_contribution_total_amount_count,
civicrm_contribution.currency FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1
GROUP BY currency, civicrm_contribution.total_amount ORDER BY civicrm_contribution_total_amount_count DESC) as conts
GROUP BY currency;
14.
------------------------------------
SELECT count(*) as count FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1 AND civicrm_contribution.currency = 'AUD';
15.
------------------------------------
SELECT civicrm_contribution.total_amount as median
FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1 AND civicrm_contribution.currency = 'AUD'
ORDER BY median LIMIT 0,1;
16.
------------------------------------
SELECT count(*) as count FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1 AND civicrm_contribution.currency = 'NZD';
17.
------------------------------------
SELECT civicrm_contribution.total_amount as median
FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1 AND civicrm_contribution.currency = 'NZD'
ORDER BY median LIMIT 0,1;
18.
------------------------------------
SELECT count(*) as count FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1 AND civicrm_contribution.currency = 'USD';
19.
------------------------------------
SELECT civicrm_contribution.total_amount as median
FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.contribution_status_id = 1 AND civicrm_contribution.currency = 'USD'
ORDER BY median LIMIT 0,2;
20.
------------------------------------
SELECT COUNT( conts.total_amount ) as cancel_count,
SUM( conts.total_amount ) as cancel_amount,
AVG( conts.total_amount ) as cancel_avg,
conts.currency as currency FROM (
SELECT civicrm_contribution.total_amount, civicrm_contribution.currency FROM civicrm_contact contact_a LEFT JOIN civicrm_contribution ON civicrm_contribution.contact_id = contact_a.id WHERE ( contact_a.id = '76' ) AND (contact_a.is_deleted = 0) AND (contact_a.is_deleted = 0) AND civicrm_contribution.cancel_date IS NOT NULL
GROUP BY civicrm_contribution.id
) as conts
GROUP BY currency;
21.
------------------------------------
SELECT a.id as `id`, a.contact_id as `contact_id`, a.amount as `amount`, a.currency as `currency`, a.frequency_unit as `frequency_unit`, a.frequency_interval as `frequency_interval`, a.installments as `installments`, a.start_date as `start_date`, a.create_date as `create_date`, a.modified_date as `modified_date`, a.cancel_date as `cancel_date`, a.end_date as `end_date`, a.processor_id as `processor_id`, a.payment_token_id as `payment_token_id`, a.trxn_id as `trxn_id`, a.invoice_id as `invoice_id`, a.contribution_status_id as `contribution_status_id`, a.is_test as `is_test`, a.cycle_day as `cycle_day`, a.next_sched_contribution_date as `next_sched_contribution_date`, a.failure_count as `failure_count`, a.failure_retry_date as `failure_retry_date`, a.auto_renew as `auto_renew`, a.payment_processor_id as `payment_processor_id`, a.financial_type_id as `financial_type_id`, a.payment_instrument_id as `payment_instrument_id`, a.campaign_id as `campaign_id`, a.is_email_receipt as `is_email_receipt`
FROM civicrm_contribution_recur a
WHERE (a.contact_id = "76") AND (a.contribution_status_id IN ("3", "10", "7", "1"))
ORDER BY a.is_test, a.start_date DESC;
22.
------------------------------------
SELECT SQL_CALC_FOUND_ROWS ccs.id, ccs.amount as amount,
ccs.contribution_id,
ccs.pcp_id,
ccs.pcp_display_in_roll,
ccs.pcp_roll_nickname,
ccs.pcp_personal_note,
ccs.soft_credit_type_id,
sov.label as sct_label,
cc.receive_date,
cc.contact_id as contributor_id,
cc.contribution_status_id as contribution_status_id,
cov.label as contribution_status,
cp.title as pcp_title,
cc.currency,
contact.display_name as contributor_name,
cct.name as financial_type
FROM civicrm_contribution_soft ccs
LEFT JOIN civicrm_contribution cc
ON ccs.contribution_id = cc.id
LEFT JOIN civicrm_pcp cp
ON ccs.pcp_id = cp.id
LEFT JOIN civicrm_contact contact ON
ccs.contribution_id = cc.id AND cc.contact_id = contact.id
LEFT JOIN civicrm_financial_type cct ON cc.financial_type_id = cct.id
LEFT JOIN civicrm_option_value sov ON sov.option_group_id = %3 AND ccs.soft_credit_type_id = sov.value
LEFT JOIN civicrm_option_value cov ON cov.option_group_id = %4 AND cc.contribution_status_id = cov.value
WHERE cc.is_test = %2 AND ccs.contact_id = %1 ORDER BY cc.receive_date DESC ;
23.
------------------------------------
SELECT count( x.id ) count FROM (
SELECT contribution.id AS id
FROM civicrm_contribution contribution
LEFT JOIN civicrm_line_item i ON i.contribution_id = contribution.id AND i.entity_table = 'civicrm_contribution' AND i.financial_type_id NOT IN (3,1,4,2)
WHERE contribution.is_test = 0 AND contribution.contact_id = 76
AND contribution.financial_type_id IN (3,1,4,2)
AND i.id IS NULL UNION
SELECT contribution.id
FROM civicrm_contribution contribution INNER JOIN civicrm_contribution_soft softContribution
ON ( contribution.id = softContribution.contribution_id )
WHERE contribution.is_test = 0 AND softContribution.contact_id = 76 ) x;5.13.0https://lab.civicrm.org/dev/core/-/issues/537Owner notification email sending every time the contribution is resaved2020-12-04T10:43:06Zrita_compucorpOwner notification email sending every time the contribution is resavedWhen someone donates to a fundraising page, and then the site's staff member goes and edits the contribution that is related to the fundraising page, and saves the changes (even if there is no change just resaving the contribution) the f...When someone donates to a fundraising page, and then the site's staff member goes and edits the contribution that is related to the fundraising page, and saves the changes (even if there is no change just resaving the contribution) the fundraiser will receive the same email notification again.
Steps:
- create a contribution page and enable fundraising pages to be created under it
- make the payment processor to be Sagepay or Paypal standard
- create a fundraising page
- then log out and start donating to the fundraising page
- after donation the fundraiser will receive an email
- then go to the civi backend, search for the contribution that was just created after donation
- click Edit at that contribution
- no need to change anything on the contribution, just click Save
--> the same owner notification will be sent to the owner again. Every time you update the contribution the owner receives a notification with the same details.
Expected:
- online contribution: the notification should only be sent once, after the successful donation
- offline contribution: the notification should only be sent once, after creating the new contribution from civi backend
Tested on Civi 5.4 and 5.7, same happening on both.5.33.0https://lab.civicrm.org/dev/core/-/issues/538Activity search (advanced search) by subject - is exact match only2022-11-25T05:03:18ZRayWrightActivity search (advanced search) by subject - is exact match onlySearching activity subject (or details) from the advanced search form is set to an exact match (=). This seems less than ideal as most of the time you won't know the exact subject or details. While you can add the wildcard % characters t...Searching activity subject (or details) from the advanced search form is set to an exact match (=). This seems less than ideal as most of the time you won't know the exact subject or details. While you can add the wildcard % characters to search, the standalone activity search form operates as you'd expect using the LIKE term.
Can the advanced search (activities section) be made to match this behavior?
Here's a detailed breakdown verified on the demo site:
* Run an Advanced search for an activity that contains "Tell a Friend" in the subject line - no results.
* Run a standalone activity search (Search > Find Activities) for an activity that contains "Tell a Friend" in the subject line - returns all the activities that subject line contains the search term, including "Subject for Tell a Friend".
* Same problem when you search details or both.
Here is the on-screen feedback for the search results:
**Advanced Search**
```
No matches found for:
Activity targeted to ...AND...
Activity Text (Subject Only) = 'Tell a Friend' ...AND...
Activity Status In Completed
```
**Find Activies**
```
Activity targeted to ...AND...
Activity Text (Subject Only) Like '%Tell a Friend%' ...AND...
Activity Status In Completed
```https://lab.civicrm.org/dev/core/-/issues/539Create a hook for custom relative date filters (CRM-16195)2024-03-25T15:18:49ZJonGoldCreate a hook for custom relative date filters (CRM-16195)To summarize: From the time relative date filters debuted in 4.2(?) until 4.7, each release added a number of relative date filters that one person needed and the rest of the world didn't. To prevent this happening forever, we moved rel...To summarize: From the time relative date filters debuted in 4.2(?) until 4.7, each release added a number of relative date filters that one person needed and the rest of the world didn't. To prevent this happening forever, we moved relative dates into an OptionGroup, and intended to give the ability to create new ones.
I worked on this last year but some cleanup PRs got stalled. They're all merged now so I'm submitting this.
While @eileen did work recently to support relative dates like "32 months in the past", it's still not possible to do relative dates like, "from 6 months ago to the end of this year", or "from Thanksgiving to Christmas". A former client of mine had reports that went from October to September, but this was NOT their fiscal year.
A simple hook facilitates the creation of custom relative date filters. I'll submit tests, but you can see an extension that uses it here: https://github.com/MegaphoneJon/com.megaphonetech.relativedatetest5.9JonGoldJonGoldhttps://lab.civicrm.org/dev/core/-/issues/540Civicrm Contact Dashboard returns fatal error2018-11-22T01:41:11Zluke.stewartCivicrm Contact Dashboard returns fatal errorSimilar to https://github.com/civicrm/civicrm-core/pull/13112
Visiting the contact dashboard at https://dmaster.demo.civicrm.org/civicrm/user?reset=1 results in the following error:
> Sorry, due to an error, we are unable to fulfill you...Similar to https://github.com/civicrm/civicrm-core/pull/13112
Visiting the contact dashboard at https://dmaster.demo.civicrm.org/civicrm/user?reset=1 results in the following error:
> Sorry, due to an error, we are unable to fulfill your request at the moment. You may want to contact your administrator or service provider with more details about what action you were performing when this occurred.
> Cannot determine api action for CRM_Contribute_Form_Search.CRM_Core_Action "NO DESCRIPTION SET
![image](/uploads/a3f9baf8ad2032192723162c6a73f8ad/image.png)5.8https://lab.civicrm.org/dev/core/-/issues/541Contact custom fields are not imported when basic type custom field is includ...2022-12-04T05:03:21ZjitendraContact custom fields are not imported when basic type custom field is included in import fileTo replicate -
1. Create a custom group which extends `Contact`. Add some fields to it.
2. Create a custom group which extends `Individual`. Similarly, add some fields.
3. Import contact with a csv file holding values of both the above ...To replicate -
1. Create a custom group which extends `Contact`. Add some fields to it.
2. Create a custom group which extends `Individual`. Similarly, add some fields.
3. Import contact with a csv file holding values of both the above custom fields.
4. Only custom fields that extends `Contact` will be imported. The one created at step 2 will be ignored.jitendrajitendrahttps://lab.civicrm.org/dev/core/-/issues/542Case Manager is not shown for closed cases.2021-06-30T15:07:09ZjitendraCase Manager is not shown for closed cases.Current Status
-----
When closing a case, all case roles (relationships) are given an end date. This keeps them from cluttering up core screens (e.g. contact summary activity tab) where only active relationships should be shown. However...Current Status
-----
When closing a case, all case roles (relationships) are given an end date. This keeps them from cluttering up core screens (e.g. contact summary activity tab) where only active relationships should be shown. However it causes undesired behavior when viewing closed cases: all the case roles are gone.
One proposed solution is to show all disabled relationships when viewing a closed case. However this isn't quite right as it is then impossible to distinguish current roles from roles that ended before the case was closed.
Proposal
-----
(after discussion at NY Sprint btw @eileen @colemanw & @DaveD)
1. Stop ending/disabling relationships when a case is closed.
2. Update core screens to filter out relationships from closed cases when displaying active relationships (e.g. contact summary activity tab)
3. Add upgrade script to reactivate & remove end date from all activities that ended on the same date their case was closed.
Further reading
-------
Past discussions of this at https://civicrm.stackexchange.com/questions/27215/case-roles-on-closed-cases5.40.0jitendrajitendrahttps://lab.civicrm.org/dev/core/-/issues/543Disabled Campaigns showing up in the campaign drop-down menu.2022-09-20T05:03:22ZyosefromanoDisabled Campaigns showing up in the campaign drop-down menu.Disabled Campaigns showing up in the campaign drop-down menu.
I tested in dmaster by adding 2 campaigns: Active, Not Active.
I disabled the campaign called not-active.
Went into search and reports to see if it showed up in the campaign...Disabled Campaigns showing up in the campaign drop-down menu.
I tested in dmaster by adding 2 campaigns: Active, Not Active.
I disabled the campaign called not-active.
Went into search and reports to see if it showed up in the campaign drop-down, and it did :(
![Screen_Shot_2018-11-22_at_1.43.57_PM](/uploads/b59df03dafca6e55a9186f675b9fbaf0/Screen_Shot_2018-11-22_at_1.43.57_PM.png)
![Screen_Shot_2018-11-22_at_1.43.49_PM](/uploads/5935e4a7fc8f149621bbc986892b158b/Screen_Shot_2018-11-22_at_1.43.49_PM.png)
![Screen_Shot_2018-11-22_at_1.44.13_PM](/uploads/bbd812af33b72be715d2473d7aa3dda7/Screen_Shot_2018-11-22_at_1.44.13_PM.png)https://lab.civicrm.org/dev/core/-/issues/544Contact Subtype field at Reports does not support contacts with multiple subt...2024-01-16T05:03:26ZscardiniusContact Subtype field at Reports does not support contacts with multiple subtypesHow to reproduce:
* open "Reports > Contact Reports > Constituent Summary" report
* click "Filters" tab
* select "Is one of" for "Contact Subtype" field
* choose subtype "Student"
* click "Refresh results" button
* look at results: Ther...How to reproduce:
* open "Reports > Contact Reports > Constituent Summary" report
* click "Filters" tab
* select "Is one of" for "Contact Subtype" field
* choose subtype "Student"
* click "Refresh results" button
* look at results: There are contacts which have only one subtype "Student"
* click "Developer" tab
* look at WHERE clause `contact_civireport.contact_sub_type IN ('Student')`
This condition should looks like this:
`contact_civireport.contact_sub_type LIKE '%Student%'`https://lab.civicrm.org/dev/core/-/issues/545Refresh Event Links when Online Registration enabled2023-01-27T05:03:29ZJoeMurrayRefresh Event Links when Online Registration enabledWhen an event is first created, Event Links button doesn't have links to front end pages for Online Registration (test or live). When Online Registration tab enables that and is saved (via js), the Event Links are not updated to include ...When an event is first created, Event Links button doesn't have links to front end pages for Online Registration (test or live). When Online Registration tab enables that and is saved (via js), the Event Links are not updated to include the Online Registration links. Refreshing the page as a whole updates the links:
![2018-11-23_15-40-00](/uploads/064398c6e954b56440f0d6c727deeaaf/2018-11-23_15-40-00.mp4)
Please update the links in an appropriate manner when appropriate (iirc Event is public and online registration is true).Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/546Max participants not respected by priceset registrations2022-09-15T05:03:48ZJoeMurrayMax participants not respected by priceset registrationsIssue:
When trying to register multiple people using additional registration functionality (which uses profiles), user is given error if multiple registrations would exceed the maximum.
However, if a priceset is used to order multiple t...Issue:
When trying to register multiple people using additional registration functionality (which uses profiles), user is given error if multiple registrations would exceed the maximum.
However, if a priceset is used to order multiple tickets, no warning is given and the number of participants ends up going over the maximum set for the event. Once the maximum has been reached (or exceeded) appropriate warning/error is given for both configurations: additional registrations as well as priceset registrations.
Confirmed on dmaster.
Fix:
Give same warning when registering multiple participants via pricesets as when registering via additional participants.
Guess:
Priceset registration code could probably benefit from refactoring to reuse some function of additional participant registration code.Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/547CiviEvent: Deactivating CiviContribute causes SQL error2020-03-11T00:44:42ZedvanleeuwenCiviEvent: Deactivating CiviContribute causes SQL errorWhen CiviContribute is deactivated, several actions (e.g. clearing the cache) cause an SQL error.
```
$Fatal Error Details = Array ( [callback] => Array ( [0] => CRM_Core_Error [1] => exceptionHandler ) [code] => -2 [message] => DB Erro...When CiviContribute is deactivated, several actions (e.g. clearing the cache) cause an SQL error.
```
$Fatal Error Details = Array ( [callback] => Array ( [0] => CRM_Core_Error [1] => exceptionHandler ) [code] => -2 [message] => DB Error: syntax error [mode] => 16 [debug_info] => SELECT id, entity_id FROM civicrm_entity_financial_account WHERE ( account_relationship = AND entity_table = 'civicrm_financial_type' ) ORDER BY entity_id [nativecode=1064 ** You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'AND entity_table = 'civicrm_financial_type' ) ORDER BY entity_id' at line 4] [type] => DB_Error [user_info] => SELECT id, entity_id FROM civicrm_entity_financial_account WHERE ( account_relationship = AND entity_table = 'civicrm_financial_type' ) ORDER BY entity_id [nativecode=1064 ** You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'AND entity_table = 'civicrm_financial_type' ) ORDER BY entity_id' at line 4] [to_string] => [db_error: message="DB Error: syntax error" code=-2 mode=callback callback=CRM_Core_Error::exceptionHandler prefix="" info="SELECT id, entity_id FROM civicrm_entity_financial_account WHERE ( account_relationship = AND entity_table = 'civicrm_financial_type' ) ORDER BY entity_id [nativecode=1064 ** You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'AND entity_table = 'civicrm_financial_type' ) ORDER BY entity_id' at line 4]"] )
```
The account_relationship is not available when the module is deactivated. Therefor, the SQL is not proper:
```
WHERE ( account_relationship = AND entity_table = 'civicrm_financial_type')
```5.24.0https://lab.civicrm.org/dev/core/-/issues/548Inconsistency in data types of option values2022-09-18T05:03:38ZErikHommelInconsistency in data types of option valueshttps://lab.civicrm.org/dev/core/-/issues/549Migration of CiviCRM is terrible2018-11-28T12:07:46ZGhost UserMigration of CiviCRM is terribleI’m not sure how others migrate CiviCRM but the experience is a mess from a lack of quality documentation to the actual process. I was migrating a install and followed existing documentation and simply could not get the SQL to import via...I’m not sure how others migrate CiviCRM but the experience is a mess from a lack of quality documentation to the actual process. I was migrating a install and followed existing documentation and simply could not get the SQL to import via PHPMyAdmin it kept throwing errors and I consider myself to be expert level with managing databases. I even brought in a tech from my hosting provider and they escalated to a senior tech and couldn’t make it happen.
I’d highly encourage some work to improve documentation and also to look into improving the migration process. After hours of failed attempts I had to simply create reports for all data and do a clean install and manually do data entry which as you can imagine isn’t an ideal scenario. I’d suggest some sort of export and import function where data can be saved to a csv and imported that way if the sql issues which others seem to run into can’t be resolved.https://lab.civicrm.org/dev/core/-/issues/550Mcrypt is deprecated2018-11-27T02:16:17ZGhost UserMcrypt is deprecatedMcrypt is deprecated in newest versions of PHP that CiviCRM recommends yet its used by CiviCRM.
Please consider replacing it with something future proof that’s supported by versions of PHP 7.1+Mcrypt is deprecated in newest versions of PHP that CiviCRM recommends yet its used by CiviCRM.
Please consider replacing it with something future proof that’s supported by versions of PHP 7.1+https://lab.civicrm.org/dev/core/-/issues/551Bookkeeping Transactions Report insufficient permissions2018-11-28T20:33:36ZfrancescbassasBookkeeping Transactions Report insufficient permissionsWhen a user without administer_civicrm permission try to run the Bookeeping Transactions Report finds the following error comes up:
`"API permission check failed for FinancialAccount/get call;
insufficient permission: require administe...When a user without administer_civicrm permission try to run the Bookeeping Transactions Report finds the following error comes up:
`"API permission check failed for FinancialAccount/get call;
insufficient permission: require administer CiviCRM"`
As noted [here](https://civicrm.stackexchange.com/q/23135/104), it seems that it occurs at least since version 4.29.5.9https://lab.civicrm.org/dev/core/-/issues/552Contribution net amount not re-calculated when fee amount is changed2018-12-05T20:27:27Zaydunsaidan.saunders@squiffle.ukContribution net amount not re-calculated when fee amount is changedWhen a contribution is edited and the fee amount changed, the net amount is not being recalculated.
Scenario 1:
Go to a contact summary
Contributions > Record Contribution
Choose a financial type
Enter amount as 100
Expand Add...When a contribution is edited and the fee amount changed, the net amount is not being recalculated.
Scenario 1:
Go to a contact summary
Contributions > Record Contribution
Choose a financial type
Enter amount as 100
Expand Additional Details section
(Incidentally note stray help text "Net value of the contribution (Total Amount minus Fee)")
Enter Fee Amount as 1.23
Save
View the Contribution just created and note Total amount = $100, Fee amount $1.23, Net amount $98.77 -> Correct
Scenario 2:
Go to a contact summary
Contributions > Record Contribution
Choose a financial type
Enter amount as 100
Save
View the Contribution just created and note Total amount = $100, Fee amount $0, Net amount $100 -> Correct
Now edit the contribution
Expand Additional Details section
Enter Fee Amount as 1.23
Save
View the Contribution just created a note Total amount = $100, Fee amount $1.23, **Net amount $100** -> Total and Fee amounts are correct, but the **Net amount is not recalculated**.
May be related to https://github.com/civicrm/civicrm-core/pull/126625.8https://lab.civicrm.org/dev/core/-/issues/553CRM-18570 When creating a new event using a template the new event screen is ...2021-02-25T05:55:29Zm robimorgan@palantetech.coopCRM-18570 When creating a new event using a template the new event screen is taking the default values directly from the custom fields, and not from what's saved in the event template.Original issue: https://issues.civicrm.org/jira/browse/CRM-18570
When creating a new event using a template the new event screen is taking the default values directly from the custom fields, and not from what's saved in the event templa...Original issue: https://issues.civicrm.org/jira/browse/CRM-18570
When creating a new event using a template the new event screen is taking the default values directly from the custom fields, and not from what's saved in the event template.
Selecting a template from new/edit Event gets the values from the custom field in 4.6.38 but in 5.x the custom field values are ignored and the defaults are used.
There are some changes in the function copy() between 4.6 and 5.x, https://lab.civicrm.org/dev/core/blob/master/CRM/Event/BAO/Event.php#L9275.16.0https://lab.civicrm.org/dev/core/-/issues/554implement pagination on profile custom multi listings2022-09-16T05:03:37Zlcdwebimplement pagination on profile custom multi listingshere is the scenario:
* create a custom data set for contacts and enable multiple records
* add a couple fields
* create a profile and add these fields
* view the profile in edit mode. in this mode you can add records and view/edit exis...here is the scenario:
* create a custom data set for contacts and enable multiple records
* add a couple fields
* create a profile and add these fields
* view the profile in edit mode. in this mode you can add records and view/edit existing records.
currently the profile will list all records for the contact you're looking at. that becomes problematic if there are a large number of records. we want to implement pagination for that listing.lcdweblcdwebhttps://lab.civicrm.org/dev/core/-/issues/555Bookkeeping Report Duplicates2022-09-17T05:03:19ZMickCBookkeeping Report DuplicatesThe Bookkeeping Report produces duplicates when a member renews more than one membership on a single contribution.
Looking at the code in CRM/Report/Form/Contribute/Bookkeeping.php appears to show a SQL join from contacts to contributio...The Bookkeeping Report produces duplicates when a member renews more than one membership on a single contribution.
Looking at the code in CRM/Report/Form/Contribute/Bookkeeping.php appears to show a SQL join from contacts to contributions to memberships without relating the specific item to the specific membership.
So the memberships are paid at the contribution level, and the line items/amounts can be shown at the financial item level.
But without a unique join between individual membership and financial item, duplicates appear.
In this case there is also use of price sets which don't appear in the join.
Possible related issue https://issues.civicrm.org/jira/browse/CRM-19936?attachmentOrder=desc
The workaround is to either
a) export to Excel and dedupe the output
b) create a custom query which either makes a unique join by membership_type and line item
OR simply wraps the query inside a SELECT DISTINCT FROM (main query).
Please advise if there is a better solution.
Thankshttps://lab.civicrm.org/dev/core/-/issues/556Contact hierachy is not maintaining?2018-11-30T08:41:53ZdipakgiriContact hierachy is not maintaining?I created four group (administrator, LM1 , p1 and p2) with 4 drupal accounts h1 ,l1, p1 p2 respectively(synced using civiGroup).<br>
I want to maintain a hierarchical structure but p1 can see the all contact of p2 and vice versa.<br/>
![...I created four group (administrator, LM1 , p1 and p2) with 4 drupal accounts h1 ,l1, p1 p2 respectively(synced using civiGroup).<br>
I want to maintain a hierarchical structure but p1 can see the all contact of p2 and vice versa.<br/>
![hierarchy](/uploads/3c6cf4ca5f1d54899ba80b1a6e6616a9/hierarchy.png)
When I find a contact it shows all contact ( I want to segregate contact).<br>
My conditions are only p1 can see their contact list and p2 can see their own contact list. LM1 can see the p1's and p2's contact list but not LM2's contact list.<br>
How to achieve such a kind of hierarchical structure?https://lab.civicrm.org/dev/core/-/issues/557Prevent jump when revealing help sections on "Administer CiviCRM" screen2021-01-03T05:22:23ZhaystackPrevent jump when revealing help sections on "Administer CiviCRM" screenAt present, clicking the discovery tab on an item on the "Administer CiviCRM" screen causes the page to jump to the anchor. Adding the following code to the `onclick` attribute solves this:
```javascript
if(event.preventDefault) event.p...At present, clicking the discovery tab on an item on the "Administer CiviCRM" screen causes the page to jump to the anchor. Adding the following code to the `onclick` attribute solves this:
```javascript
if(event.preventDefault) event.preventDefault(); else event.returnValue = false;
```
PR to follow.https://lab.civicrm.org/dev/core/-/issues/558Improve code quality2022-09-18T05:03:38ZeileenImprove code qualityThis is an intended parent issue for ongoing code cleanup initiatives - the specific ones will be linked from here.This is an intended parent issue for ongoing code cleanup initiatives - the specific ones will be linked from here.https://lab.civicrm.org/dev/core/-/issues/559AngularJS module crmUi has an unstated dependency on ui.utils2018-11-30T01:11:12ZginkgofjgAngularJS module crmUi has an unstated dependency on ui.utils# Steps to reproduce
* Create an extension with a [custom base page](https://docs.civicrm.org/dev/en/latest/framework/angular/loader/#other-base-pages) for an AngularJS app.
* Put this code in your controller:
```html
<div crm-ui-ta...# Steps to reproduce
* Create an extension with a [custom base page](https://docs.civicrm.org/dev/en/latest/framework/angular/loader/#other-base-pages) for an AngularJS app.
* Put this code in your controller:
```html
<div crm-ui-tab-set>
<div crm-ui-tab crm-title="ts('Ruh')" id="tab-ruh">...</div>
<div crm-ui-tab crm-title="ts('Roh')" id="tab-roh">...</div>
</div>
```
* Note that the expected tabbed display doesn't render.
# Note also
The template for the `crmUiTabset` directive [expects](https://github.com/civicrm/civicrm-core/blob/dcb79a31541fe4a5674911d15986e52ee56d8a1c/ang/crmUi/tabset.html#L1) the `ui-jq` directive, provided by the `ui.utils` module, to be available.
# Workaround
To work around this problem, extensions may explicitly require the `ui.utils` module in addition to `crmUi`, e.g.:
```php
// myextension.ang.php
return array(
...
'requires' => array(
'crmUi',
'ui.utils',
),
...
);
```
Although there is an easy workaround, the fix is also easy, so we should fix this. Pull request forthcoming.ginkgofjgginkgofjghttps://lab.civicrm.org/dev/core/-/issues/560Replace all instances of CRM_Core_Fatal with throw new CRM_Core_Exception2020-08-11T09:02:23ZeileenReplace all instances of CRM_Core_Fatal with throw new CRM_Core_ExceptionWe moved to an exception framework around 4.2 ish and have been removing instances of CRM_Core_Fatal in favour of throwing exceptions slowly ever since. Exceptions are better for testing, drush commands and code predictability.
So far w...We moved to an exception framework around 4.2 ish and have been removing instances of CRM_Core_Fatal in favour of throwing exceptions slowly ever since. Exceptions are better for testing, drush commands and code predictability.
So far we have had no regressions over probably hundreds of changes on this - perhaps we should get a bit more aggressive / pro-active on thishttps://lab.civicrm.org/dev/core/-/issues/562Remove instances of $dao->free2019-08-08T21:13:29ZeileenRemove instances of $dao->freeThe DAO object since ? 4.7.x? has been freed on _destruct. Using the $dao->free action has been demonstrated to create some rare bugs - ie. because query sets from the outer loop can be lost. There is no benefit in calling it any more an...The DAO object since ? 4.7.x? has been freed on _destruct. Using the $dao->free action has been demonstrated to create some rare bugs - ie. because query sets from the outer loop can be lost. There is no benefit in calling it any more and some harmhttps://lab.civicrm.org/dev/core/-/issues/563Duplicate Case manager role2018-12-05T10:41:12ZMonish DebDuplicate Case manager roleSteps to replicate:
1. Create case
2. Go to 'Manage case' and change case manager to someone else
3. Change case manager back to original contact: error - duplicate relationship
4. From the contact's relationship tab, enable a relationsh...Steps to replicate:
1. Create case
2. Go to 'Manage case' and change case manager to someone else
3. Change case manager back to original contact: error - duplicate relationship
4. From the contact's relationship tab, enable a relationship
-- note that the end date is preserved, which may mean that the newly re-enabled relationship is still considered inactive
-- note that in the manage case roles panel the newly re-enabled relationship is not listed as the case manager
5. From the manage case roles panel, add a new role with the same case manager type, to one of the existing contacts: error, duplicate relationship
-- so if you change the case manager, there's currently no way to go back and set the original contact as case manager again5.9Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/564Differentiate case relationships in Contact Summary page2022-09-19T05:03:38ZMonish DebDifferentiate case relationships in Contact Summary pageThe relationships tab doesn't do much to communicate that a given relationship is tied to a specific case. if you click "more" you can click to manage the case, but from the listing, there is no visual queue to connect it to a case, whic...The relationships tab doesn't do much to communicate that a given relationship is tied to a specific case. if you click "more" you can click to manage the case, but from the listing, there is no visual queue to connect it to a case, which makes the relationships look like duplicates.
## Proposal
If we added an icon if it's a case relationship that opens the manage case screen, and on hover displays the case type, case subject, and case ID.Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/565Make subject field of Note, inline editable in contact summary page2022-09-19T05:03:39ZMonish DebMake subject field of Note, inline editable in contact summary pageThis is a minor style change, which adds the ability of the user to edit note field in contact summary page editable.This is a minor style change, which adds the ability of the user to edit note field in contact summary page editable.Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/566Getting (translated) label instead of (untranslated) names in getFinancialAcc...2022-09-24T05:03:39ZwdecraeneGetting (translated) label instead of (untranslated) names in getFinancialAccountForFinancialTypeByRelationship()Error:
```
Notice: Undefined offset: 0 in CRM_Financial_BAO_FinancialAccount::getFinancialAccountForFinancialTypeByRelationship()
(regel 257 van /civicrm/CRM/Financial/BAO/FinancialAccount.php).
```
CiviCRM is in dutch, so getting $acc...Error:
```
Notice: Undefined offset: 0 in CRM_Financial_BAO_FinancialAccount::getFinancialAccountForFinancialTypeByRelationship()
(regel 257 van /civicrm/CRM/Financial/BAO/FinancialAccount.php).
```
CiviCRM is in dutch, so getting $accountRelationships with `$accountRelationships = CRM_Core_PseudoConstant::accountOptionValues('account_relationship', NULL);` returns an array with dutch labels.
`$incomeAccountRelationshipID = array_search('Income Account is', $accountRelationships);` will give a php notice.
Solution:
`$accountRelationships = CRM_Core_OptionGroup::values('account_relationship', FALSE, FALSE, FALSE, NULL, 'name');`
See [civicrm-566-get-names-in-getFinancialAccountForFinancialTypeByRelationship.patch](/uploads/baba091e4a9ed8045848eb7ee2321c69/civicrm-566-get-names-in-getFinancialAccountForFinancialTypeByRelationship.patch)https://lab.civicrm.org/dev/core/-/issues/567Separate membership payment on contribution form with auto renewal not get pr...2023-10-31T05:03:19ZsunilSeparate membership payment on contribution form with auto renewal not get processedWhen creating a contribution page with a membership with the option "Separate Membership Payment" and Auto-renew with 'Give Option' / 'Required'.
On Signup page Membership Type will shown along with donation field. Choose auto-renewal op...When creating a contribution page with a membership with the option "Separate Membership Payment" and Auto-renew with 'Give Option' / 'Required'.
On Signup page Membership Type will shown along with donation field. Choose auto-renewal option if optional.
Submit the Payment to Processor. This will create Membership record, 2 Contribution record and Recurring contribution for Membership Payment. First payment get recorded, Membership status and Contribution status get updated to 'New' and 'Completed' respectively.
On next scheduled Payment (renewal date) civicrm receive IPN response from Payment Processor but this time recurring contribution id is absent in response (which we should set during the first payment, but in case of separate membership payment we don't). IPN assume that this is single donation rather than recurring and show the message in log that is already processed.
Solution:
Pass recurring ID and Page ID to payment processor in case of Separate Membership Payment.https://lab.civicrm.org/dev/core/-/issues/568clear smarty cache generated from string input2021-03-18T21:32:30Zsunilclear smarty cache generated from string inputClear Smarty Cache Generated from string input.
`$smarty->fetch("string:$htmlBody");`
Mass mailing use above call to generate final html for sending email.
and pattern of cache file like e.g (Note : file name pattern get changed if ma...Clear Smarty Cache Generated from string input.
`$smarty->fetch("string:$htmlBody");`
Mass mailing use above call to generate final html for sending email.
and pattern of cache file like e.g (Note : file name pattern get changed if mail open_tracking is disabled)
> en_US/%%32/320/32026E26%%open.php%3Fq%3D3807779%22+width%3D%271%27+height%3D%271%27+alt%3D%27%27+border%3D%270%27%3E.php
File size can vary 100-500 KB per file
This file get generated for each individual contact present in mailing.
if total number of recipient are between 50-60K, disk space will get exhaust and CiviCRM will stop working until we clear the cache.
I know we have scheduled job to clear the template cache (with minimum 1 hr interval). but this job will remove entire CiviCRM cache which can be re-used for other templates files and not necessary to delete it.
This [PR](https://github.com/civicrm/civicrm-packages/pull/234) will delete the smarty cache generated from string input which can not be reused and resolved disk space issue.https://lab.civicrm.org/dev/core/-/issues/569Advanced Search: DB Error: no such field when the user tries to search by the...2022-12-21T05:03:17ZPradeep Nayakpradpnayak@gmail.comAdvanced Search: DB Error: no such field when the user tries to search by the 'Address Location' fieldTo Replicate:
![SearchViewError](/uploads/79aacb28527281d2c12b77ca16cdf7c2/SearchViewError.gif)To Replicate:
![SearchViewError](/uploads/79aacb28527281d2c12b77ca16cdf7c2/SearchViewError.gif)https://lab.civicrm.org/dev/core/-/issues/570New Organisation: "Check For Matching Contact (S)" button does not find match...2019-03-20T02:02:50ZPradeep Nayakpradpnayak@gmail.comNew Organisation: "Check For Matching Contact (S)" button does not find matching recordsTo replicate:
* Log in with user having limited permissions(Access CiviCRM, CRUD all contacts, Access ajax api)
* Navigate to Contacts→New organisation
* Fill in the Organisation Name field with the same value as it is in the organisati...To replicate:
* Log in with user having limited permissions(Access CiviCRM, CRUD all contacts, Access ajax api)
* Navigate to Contacts→New organisation
* Fill in the Organisation Name field with the same value as it is in the organisation from the preconditions
* Click "Check For Matching Contact(s)"
**Result:** there's the "None Found" message.
**Expected result:** the dupes should be found and the following validation message should be displayed: Similar Contacts Found | If the contact you were trying to add is listed below, click their name to view or edit their record![Duplicate_Org_Record](/uploads/51dd5345310f29c545f46090e1423a99/Duplicate_Org_Record.gif)5.13.0https://lab.civicrm.org/dev/core/-/issues/571Can't self-service cancel a recurring contribution made while you're logged in2020-08-12T12:19:57ZJonGoldCan't self-service cancel a recurring contribution made while you're logged inThe self-service recurring payment page is accessible either a) with a checksum, b) if you have "Edit contributions" permission ([code here](https://github.com/civicrm/civicrm-core/blob/master/CRM/Contribute/Form/CancelSubscription.php#L...The self-service recurring payment page is accessible either a) with a checksum, b) if you have "Edit contributions" permission ([code here](https://github.com/civicrm/civicrm-core/blob/master/CRM/Contribute/Form/CancelSubscription.php#L108-L115)).
However, if you're logged in when you create a recurring contribution, the email you receive doesn't contain a checksum ([code here](https://github.com/civicrm/civicrm-core/blob/master/CRM/Core/Payment.php#L1516)). So users without "Edit contributions" permission can't cancel their subscriptions.
I think the implication of allowing a user to cancel their payment via checksum is that we should also allow a user to cancel if the logged-in contact ID matches the contact ID of the recurring contribution. This would also mean on systems where users are logged in, you would have the added benefit of not worrying about expired checksums.
Is there any scenario in which we shouldn't allow a user to cancel a recurring subscription they "own"? If not I'll submit a PR.5.13.0JonGoldJonGoldhttps://lab.civicrm.org/dev/core/-/issues/572Regression: Custom Note fields on Events do not work with CKEditor since 5.72018-12-13T08:48:47ZAgilewareRegression: Custom Note fields on Events do not work with CKEditor since 5.7Agileware ref: CIVICRM-1118
Overview
========
Custom Note fields on Events no longer work with CKEditor.
Was working in 5.6.2.
Verified this still an issue on `dmaster.demo.civicrm.org`:
![rich_text_field_event](/uploads/b636e035977...Agileware ref: CIVICRM-1118
Overview
========
Custom Note fields on Events no longer work with CKEditor.
Was working in 5.6.2.
Verified this still an issue on `dmaster.demo.civicrm.org`:
![rich_text_field_event](/uploads/b636e035977d0b5d100a6229c83e5200/rich_text_field_event.png)
Steps to Reproduce
==================
1. Create a custom data group for Events
2. Add a "Note" field using the "Rich Text Editor" Input Field Type
3. Create an event. Rich text editor is working here.
4. Edit the event Info and Configuration.
5. The custom field doesn't load CKEditor, complaining that `a.ui.spaces` is undefined or null.
6. Sometimes CKEditor doesn't load for the "Complete Description" field either, but it fails less reliably.5.8https://lab.civicrm.org/dev/core/-/issues/573State field displays too small2018-12-04T18:41:12ZGhost UserState field displays too smallThe state field on contribution pages displays too small to display the full text of the field including defaults.
Screenshot: https://i.imgur.com/0yTqQas.png
Not sure if this is a WordPress specific bug or core as I do not have any Dr...The state field on contribution pages displays too small to display the full text of the field including defaults.
Screenshot: https://i.imgur.com/0yTqQas.png
Not sure if this is a WordPress specific bug or core as I do not have any Drupal installs to check it on.https://lab.civicrm.org/dev/core/-/issues/574memory error on creating large pdfs2023-01-06T05:03:32ZJoostmemory error on creating large pdfsAs the title says: civicrm throws a memory error when creating large pdf. This happens when parsing the regexes for simplifying the html, and when writing the temporary file to disk.As the title says: civicrm throws a memory error when creating large pdf. This happens when parsing the regexes for simplifying the html, and when writing the temporary file to disk.https://lab.civicrm.org/dev/core/-/issues/575Registering multiple participants results in wrong event fee2019-07-30T23:22:23ZandyburnsRegistering multiple participants results in wrong event feeWhen you allow for register multiple event participants, it makes you pay the first person's fee and input the payment info. However, the additional participants event fee is not selected till the 2nd page, so it does not calculate the t...When you allow for register multiple event participants, it makes you pay the first person's fee and input the payment info. However, the additional participants event fee is not selected till the 2nd page, so it does not calculate the total fee amount properly.
Reproduced at https://wpmaster.demo.civicrm.org/civicrm/?page=CiviCRM&q=civicrm%2Fevent%2Fregister&id=1&reset=1.
For now, we are limited to only allowing 1 registration at a time.https://lab.civicrm.org/dev/core/-/issues/576Fix issue where fields are dropped from XML files because version comparison ...2018-12-06T19:58:51ZseamusleeFix issue where fields are dropped from XML files because version comparison between the add key and the build version failsOn master we are seeing build failures in the matrix tests at the moment because doing `if (5.3 <= 5.10)` effectively is proving to be false so DAO files are being re-generated to exclude specific fields causing errors.On master we are seeing build failures in the matrix tests at the moment because doing `if (5.3 <= 5.10)` effectively is proving to be false so DAO files are being re-generated to exclude specific fields causing errors.5.10https://lab.civicrm.org/dev/core/-/issues/577Fatal db error in Activity Summary report when Sorting uses Section Header (w...2019-07-07T05:16:06ZdavejFatal db error in Activity Summary report when Sorting uses Section Header (without ONLY_FULL_GROUP_BY)A fatal db error occurs in Activity Summary report when sorting by a field that has not been selected in Columns, if Section Header is checked. This occurs with or without ONLY_FULL_GROUP_BY.
Steps to replicate:
1. From the standard p...A fatal db error occurs in Activity Summary report when sorting by a field that has not been selected in Columns, if Section Header is checked. This occurs with or without ONLY_FULL_GROUP_BY.
Steps to replicate:
1. From the standard pre-defined Contact Reports, go to Activity Summary.
2. Leave Columns as default, with Contact Name not checked.
3. Leave Grouping as default (Activity Type + Activity Status).
4. In Sorting, select Contact Name and check "Section Header / Group By".
5. Click "Refresh results".
Expected result:
Report runs.
Actual result:
```
DB Error: value count on row
Database Error Code: Column count doesn't match value count at row 1, 1136
[debug_info] => INSERT INTO civicrm_activity_temp_319632dc20cdeda8063b99ed6caaec62 ( civicrm_contact_id,civicrm_activity_activity_type_id,civicrm_activity_status_id,civicrm_activity_duration,civicrm_activity_id_count )
SELECT contact_civireport.id as civicrm_contact_id, activity_civireport.activity_type_id as civicrm_activity_activity_type_id, activity_civireport.status_id as civicrm_activity_status_id, activity_civireport.duration as civicrm_activity_duration, COUNT(DISTINCT(activity_civireport.id)) as civicrm_activity_id_count , contact_civireport.sort_name as civicrm_contact_sort_name
FROM civicrm_activity activity_civireport
LEFT JOIN civicrm_activity_contact target_activity
ON activity_civireport.id = target_activity.activity_id AND
target_activity.record_type_id = 3
LEFT JOIN civicrm_activity_contact assignment_activity
ON activity_civireport.id = assignment_activity.activity_id AND
assignment_activity.record_type_id = 1
LEFT JOIN civicrm_activity_contact source_activity
ON activity_civireport.id = source_activity.activity_id AND
source_activity.record_type_id = 2
LEFT JOIN civicrm_contact contact_civireport
ON target_activity.contact_id = contact_civireport.id
LEFT JOIN civicrm_contact civicrm_contact_assignee
ON assignment_activity.contact_id = civicrm_contact_assignee.id
LEFT JOIN civicrm_contact civicrm_contact_source
ON source_activity.contact_id = civicrm_contact_source.id
LEFT JOIN civicrm_option_value
ON ( activity_civireport.activity_type_id = civicrm_option_value.value )
LEFT JOIN civicrm_option_group
ON civicrm_option_group.id = civicrm_option_value.option_group_id
LEFT JOIN civicrm_case_activity
ON civicrm_case_activity.activity_id = activity_civireport.id
LEFT JOIN civicrm_case
ON civicrm_case_activity.case_id = civicrm_case.id
LEFT JOIN civicrm_case_contact
ON civicrm_case_contact.case_id = civicrm_case.id WHERE civicrm_option_group.name = "activity_type" AND
activity_civireport.is_test = 0 AND
activity_civireport.is_deleted = 0 AND
activity_civireport.is_current_revision = 1 GROUP BY activity_civireport.activity_type_id, activity_civireport.status_id ORDER BY contact_civireport.sort_name ASC LIMIT 0, 50 [nativecode=1136 ** Column count doesn't match value count at row 1]
```
Occurs in Civi 5.5.1 with MariaDB 10.1.34 or 10.1.37; also in current dmaster with MySQL 5.7.23 .
Note that dev/core/issues/428 reported an error in similar circumstances for the Activity Detail report but the error details are different and the error occurs at a different stage: here in INSERT INTO civicrm_activity_temp_XXX, there in a SELECT query.5.17.0https://lab.civicrm.org/dev/core/-/issues/578Fatal db error in Activity Summary report for some Sorting fields (with ONLY_...2019-07-09T20:07:12ZdavejFatal db error in Activity Summary report for some Sorting fields (with ONLY_FULL_GROUP_BY)A fatal db error occurs in Activity Summary report for some Sorting fields. This occurs only with ONLY_FULL_GROUP_BY set in sql_mode.
Steps to replicate:
1. From the standard pre-defined Contact Reports, go to Activity Summary.
2. Le...A fatal db error occurs in Activity Summary report for some Sorting fields. This occurs only with ONLY_FULL_GROUP_BY set in sql_mode.
Steps to replicate:
1. From the standard pre-defined Contact Reports, go to Activity Summary.
2. Leave Columns as default, with Contact Name not checked.
3. Leave Grouping as default (Activity Type + Activity Status).
4. In Sorting, select Contact Name.
5. Click "Refresh results".
Expected result:
Report runs.
Actual result:
```
DB Error: unknown error
Database Error Code: Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'dmasterciv_t1nir.contact_civireport.sort_name' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by, 1055
[debug_info] => INSERT INTO civicrm_activity_temp_a10856f163bac9e54ba4f5f5538d1cbf (civicrm_activity_duration_total)
SELECT SUM(activity_civireport.duration) as civicrm_activity_duration_total
FROM civicrm_activity activity_civireport
LEFT JOIN civicrm_activity_contact target_activity
ON activity_civireport.id = target_activity.activity_id AND
target_activity.record_type_id = 3
LEFT JOIN civicrm_contact contact_civireport
ON target_activity.contact_id = contact_civireport.id
WHERE
activity_civireport.is_test = 0 AND
activity_civireport.is_deleted = 0 AND
activity_civireport.is_current_revision = 1 GROUP BY activity_civireport.activity_type_id, activity_civireport.status_id ORDER BY contact_civireport.sort_name ASC LIMIT 0, 50 [nativecode=1055 ** Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'dmasterciv_t1nir.contact_civireport.sort_name' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by]
```
The error also happens for various other combinations of Columns, Grouping & Sorting.
Occurs in current dmaster with MySQL 5.7.23, when ONLY_FULL_GROUP_BY set in sql_mode.5.17.0https://lab.civicrm.org/dev/core/-/issues/579Unable to make backend contributions with non-default payment processor (some...2018-12-14T14:40:16ZAlanDixonUnable to make backend contributions with non-default payment processor (sometimes) "no class provided" errorThis isn't a full error report, but we've been chasing it down long enough I wanted to get something in here.
As per the title, here's how it happens:
1. Create a payment processor instance (i.e. add payment processor here /civicrm/admi...This isn't a full error report, but we've been chasing it down long enough I wanted to get something in here.
As per the title, here's how it happens:
1. Create a payment processor instance (i.e. add payment processor here /civicrm/admin/paymentProcessor?reset=1)
2. Create a second one of the same type, different credentials. Leave the first one as default.
When trying to use the second payment processor on a 'backend/admin' contribution form (ie. /civicrm/contact/view/contribution?action=add&cid=etc.), we get an error at
/CRM/Contribute/Form/Contribution.php, line 1165
(this is using civicrm 5.6.1, we had the same issue on 5.3.1).
As far as we know this behaviour was introduced sometime shortly before 5.3.1 (that was the security update in the summer), and I suspect it might be related to this commit: https://github.com/civicrm/civicrm-core/commit/8461467c33a8e35f67b1d9938cdbc3d5ba5fd4b9
The commit in general is good, but the code it's touching is sufficiently scary that lots of hidden things might happen. Or maybe that's unrelated ...
I can see that the payment_processor_id value is getting to the server (I can see it in the submit values in the stacktrace).
To make matters a bit more confusing, we can't reproduce it reliably (but do have it reproduced on three separate sites, but not a fourth), so there is some additional aspect going on here. These tests are all using the iATS payment processor (of course ...), but I don't think that actually comes into play, since the code breaks before it can identify which payment processor is responsible for the payment.
Clues welcome ...https://lab.civicrm.org/dev/core/-/issues/580No groups displayed on Manage Groups when "All Groups" is selected2019-02-16T22:53:26ZJonGoldNo groups displayed on Manage Groups when "All Groups" is selectedGiven a user who:
* Doesn't have "View All Contacts" permission;
* DOES have an ACL that gives permission to Edit "All Groups";
The "Manage Groups" screen shows no groups. However, a `Group.get` API call works correctly.
This is becau...Given a user who:
* Doesn't have "View All Contacts" permission;
* DOES have an ACL that gives permission to Edit "All Groups";
The "Manage Groups" screen shows no groups. However, a `Group.get` API call works correctly.
This is because `CRM_ACL_BAO_ACL::group()` expects an argument `$allGroups` to be passed, with an array of all the groups for this particular context. The API code path populates this argument; the UI code path doesn't. Here are call stacks for each. I've marked where they converge with `**`:
### UI call stack
```
CRM/ACL/BAO/ACL.php.CRM_ACL_BAO_ACL::group:895
** CRM/ACL/API.php.CRM_ACL_API::group:179
CRM/Contact/BAO/Group.php.CRM_Contact_BAO_Group::getPermissionClause:603
CRM/Contact/BAO/Group.php.CRM_Contact_BAO_Group::whereClause:1249
CRM/Contact/BAO/Group.php.CRM_Contact_BAO_Group::getGroupList:826
CRM/Contact/BAO/Group.php.CRM_Contact_BAO_Group::getGroupListSelector:747
CRM/Group/Page/AJAX.php.CRM_Group_Page_AJAX::getGroupList:67
CRM/Core/Invoke.php.CRM_Core_Invoke::runItem:275
CRM/Core/Invoke.php.CRM_Core_Invoke::_invoke:84
CRM/Core/Invoke.php.CRM_Core_Invoke::invoke:52
drupal/civicrm.module.civicrm_invoke:445
/home/jon/local/groundswell/htdocs/includes/menu.inc.menu_execute_active_handler:527
/home/jon/local/groundswell/htdocs/index.php.{main}:21:
```
### API code path
```
CRM/ACL/BAO/ACL.php.CRM_ACL_BAO_ACL::group:895
** CRM/ACL/API.php.CRM_ACL_API::group:179
CRM/ACL/API.php.CRM_ACL_API::groupPermission:215
CRM/Contact/BAO/Group.php.CRM_Contact_BAO_Group::checkPermission:312
api/v3/Group.php.civicrm_api3_group_get:82
Civi/API/Provider/MagicFunctionProvider.php.Civi\API\Provider\MagicFunctionProvider->invoke:89
Civi/API/Kernel.php.Civi\API\Kernel->runRequest:169
Civi/API/Kernel.php.Civi\API\Kernel->runSafe:100
api/api.php.civicrm_api:23
CRM/Utils/REST.php.CRM_Utils_REST::process:311
CRM/Utils/REST.php.CRM_Utils_REST::ajax:548
CRM/Core/Invoke.php.CRM_Core_Invoke::runItem:275
CRM/Core/Invoke.php.CRM_Core_Invoke::_invoke:84
CRM/Core/Invoke.php.CRM_Core_Invoke::invoke:52
drupal/civicrm.module.civicrm_invoke:445
/home/jon/local/groundswell/htdocs/includes/menu.inc.menu_execute_active_handler:527
/home/jon/local/groundswell/htdocs/index.php.{main}:21
```
I have a PR to submit, but I'm not sure if my fix is at the correct layer of the call stack.5.12.0JonGoldJonGoldhttps://lab.civicrm.org/dev/core/-/issues/581api profile.submit does not add contact to group specified by the profile2019-03-22T14:38:22Zjamieapi profile.submit does not add contact to group specified by the profileThis was raised in the contact of [remoteform](https://github.com/progressivetech/net.ourpowerbase.remoteform/issues/9). I suspect it doesn't trigger the email notification either and perhaps other things that it should do.
I think that...This was raised in the contact of [remoteform](https://github.com/progressivetech/net.ourpowerbase.remoteform/issues/9). I suspect it doesn't trigger the email notification either and perhaps other things that it should do.
I think that's because the api method calls `civicrm_api3('contact', 'create', $profileParams);` to create the contact specified, rather than `CRM_Contact_BAO_Contact::createProfileContact` which seems to happen when a profile is submitted via the normal web usage.
Any opinions on what to do? I think our options are:
* Do nothing. The profile.submit api action could remain a simple action to just get the data in and I could write a wrapper in remoteform and handle the other pieces
* Keep profile.submit the same, but tack on some addtional code that tries to handle the extra steps that need to be taken when a profile is submitted.
* Fix profile.submit to use `CRM_Contact_BAO_Contact::createProfileContact` instead of contact.create
I suspect the last option is the best option, but curious to get feedback before I start.https://lab.civicrm.org/dev/core/-/issues/582Regression - datepicker icon not showing on search builder2018-12-12T23:43:41ZeileenRegression - datepicker icon not showing on search buildersee https://civicrm.stackexchange.com/questions/27628/search-builder-does-not-display-date-picker-for-contacts/27632#27632see https://civicrm.stackexchange.com/questions/27628/search-builder-does-not-display-date-picker-for-contacts/27632#276325.8.1https://lab.civicrm.org/dev/core/-/issues/583Irregular display of custom fields when editing contributions2022-09-22T02:55:32Zluke.stewartIrregular display of custom fields when editing contributionsWhen editing a contribution (in a new page) sometimes the custom field data will not display.
Present on both 5.3.1 and dmaster (5.10.alpha1)
To reproduce:
Create a custom field set for contributions - and specify it to be for a speci...When editing a contribution (in a new page) sometimes the custom field data will not display.
Present on both 5.3.1 and dmaster (5.10.alpha1)
To reproduce:
Create a custom field set for contributions - and specify it to be for a specific type:
![image](/uploads/d4157eed58eac83c7d1ef902ce5d77cc/image.png)
Add a field (or two)
Find a contribution of that specific type and load a number of times. Sometimes the custom field type will show and other times it will not.
![image](/uploads/78f18f2e29514d252760682612fde821/image.png)https://lab.civicrm.org/dev/core/-/issues/584Using CiviDiscount gives a wrong amount with currency localization when recor...2019-12-13T14:14:08ZBetty DolfingUsing CiviDiscount gives a wrong amount with currency localization when recording a payment at an event1. Add Discount to an Event, e.g. 50 %
2. Add a paid event with online registration, event fee is 50 euro
3. Click on link to register
4. Add Discount code and click on 'apply'
5. The amount changes from the expected 25 euro to 25.000....1. Add Discount to an Event, e.g. 50 %
2. Add a paid event with online registration, event fee is 50 euro
3. Click on link to register
4. Add Discount code and click on 'apply'
5. The amount changes from the expected 25 euro to 25.000.000.000.000.
This is in an environment that was created in US English, and afterwards we changed the localisation/language into Dutch.
I tested this locally and on https://dmaster.demo.civicrm.org/civicrm/
Both same result.5.8https://lab.civicrm.org/dev/core/-/issues/585client is not getting assigned as target contact2018-12-29T22:09:50ZStoobclient is not getting assigned as target contactThis behavior started in 5.6 and persists in 5.8.0 whereby when editing the next scheduled activity in the Case sequence, it looks like the target contact is set, but it actually isn't. This appears to be that because when the next sche...This behavior started in 5.6 and persists in 5.8.0 whereby when editing the next scheduled activity in the Case sequence, it looks like the target contact is set, but it actually isn't. This appears to be that because when the next scheduled activity is created in the sequence, the target contact is blank to begin with.
But when the next scheduled activity is edited and saved, the source contact is set, the case id is set, but target contact remains unset. In other words, the activity target is not set to the client as it should be, nor as the screen implies that it is. The undesirable symptom is that activities without a target do not show up in Activity reports or Find Activities search.
![looks-good](/uploads/f8e63bf92cc7610eebf5463211d7af5e/looks-good.png)
![but-target-blank](/uploads/48b57aefca4d042303ab7f868b205523/but-target-blank.png)
5.8.2https://lab.civicrm.org/dev/core/-/issues/586PCP Report does not show accurate total amount and total donors2019-01-07T23:07:12ZjamiePCP Report does not show accurate total amount and total donorsThe "Personal Campaign Page Report" provides inaccurate numbers for the "Committed Amount" and the "Number of Donors" in the report rows. The numbers in the summary at the bottom are accurate.
Instead of the total "Committed Amount", it...The "Personal Campaign Page Report" provides inaccurate numbers for the "Committed Amount" and the "Number of Donors" in the report rows. The numbers in the summary at the bottom are accurate.
Instead of the total "Committed Amount", it provides one of the committed amounts. Instead of a count of donors, it provides the id of one of the soft credit records.5.11jamiejamiehttps://lab.civicrm.org/dev/core/-/issues/587Permissions on GroupContact API calls seem wrong2023-09-24T16:09:28ZJonGoldPermissions on GroupContact API calls seem wrongI got a support request from a user who didn't have "Edit All Contacts" permissions stating that they couldn't remove someone from a group. Sure enough, [edit all contacts](https://lab.civicrm.org/dev/core/blob/master/CRM/Core/Permissio...I got a support request from a user who didn't have "Edit All Contacts" permissions stating that they couldn't remove someone from a group. Sure enough, [edit all contacts](https://lab.civicrm.org/dev/core/blob/master/CRM/Core/Permission.php#L1229) is the necessary permission. However, editing/removing tags just requires "access CiviCRM".
Does this seem correct to folks? Is it to prevent someone escalating their ACL permissions? If so, it feels like we need a different permission, and predates more nuanced solutions such as [Group Protect](https://github.com/CiviCooP/org.civicoop.groupprotect). The only other entity that needs such high permissions is Relationship - that also seems wrong.
I propose that we add both GroupContact and Relationship entities to the `_civicrm_api3_check_edit_permissions()` function. If you can edit the contact, you can edit their groups/relationships. If someone gives this a "Concept: Approved" I'll work on the PR.JonGoldJonGoldhttps://lab.civicrm.org/dev/core/-/issues/588"CiviMail Draft" appears twice in non-Mosaico test emails2018-12-13T04:45:56ZJonGold"CiviMail Draft" appears twice in non-Mosaico test emailsCiviCRM 5.8.0 I believe this is a side effect of https://github.com/civicrm/civicrm-core/pull/12758.CiviCRM 5.8.0 I believe this is a side effect of https://github.com/civicrm/civicrm-core/pull/12758.5.8.1https://lab.civicrm.org/dev/core/-/issues/589Autocomplete search result fields selection not being saved2018-12-18T21:09:33Zvakeesan26Autocomplete search result fields selection not being saved![image](/uploads/63a3d487baa560ed3ac439e27aecefd0/image.png)
https://dmaster.demo.civicrm.org/civicrm/admin/setting/search?reset=1
When we select additional autocomplete fields ( like email,phone,street ) those selections are not bein...![image](/uploads/63a3d487baa560ed3ac439e27aecefd0/image.png)
https://dmaster.demo.civicrm.org/civicrm/admin/setting/search?reset=1
When we select additional autocomplete fields ( like email,phone,street ) those selections are not being saved.
only the default "Contact Name" is selected.
Also Email is not included in default Quick search [Name/Email].
It is only searching in sort_name (filed separately as https://lab.civicrm.org/dev/core/issues/593)
issue - CiviCRM 5.8.0 5.8.1https://lab.civicrm.org/dev/core/-/issues/590CiviCase- additional timeline- activity offset not working post upgrade2022-09-21T05:03:42ZalarmingcodCiviCase- additional timeline- activity offset not working post upgradeWe've recently upgraded a site from 4.6.38 to 5.7
They were using cases with additional timelines. So they could add a new session to an existing case offset by 7 days from the "newest" activity of type x.
Post upgrade the additional t...We've recently upgraded a site from 4.6.38 to 5.7
They were using cases with additional timelines. So they could add a new session to an existing case offset by 7 days from the "newest" activity of type x.
Post upgrade the additional timeline only offsets the new activity from the oldest activity of type x in the case. (This holds true wether the offfset is marked as oldest or newest in the timeline settings.
Just tested this out on dmaster.demo and found this works the same.https://lab.civicrm.org/dev/core/-/issues/591MyISAM warnings on temporary tables2019-05-09T08:52:17Zaydunsaidan.saunders@squiffle.ukMyISAM warnings on temporary tablesTemporary tables do not specify the engine to be used and so are created with the default engine (often MyISAM). This in turn causes the MyISAM check to complain. See https://civicrm.stackexchange.com/questions/27683/wordpress-myisam-d...Temporary tables do not specify the engine to be used and so are created with the default engine (often MyISAM). This in turn causes the MyISAM check to complain. See https://civicrm.stackexchange.com/questions/27683/wordpress-myisam-database-engine-error-after-update
This could be fixed either by specifying the engine when creating temporary tables, or excluding them from the MyISAM check.
See also https://lab.civicrm.org/dev/core/issues/183#note_103335.8.1https://lab.civicrm.org/dev/core/-/issues/592ArgumentCountError: Too few arguments to function CiviCRM_API3_Exception...2018-12-13T06:41:13ZBjörn EndresArgumentCountError: Too few arguments to function CiviCRM_API3_Exception...Full message:
``ArgumentCountError: Too few arguments to function CiviCRM_API3_Exception::__construct(), 1 passed in [drupal root]/sites/all/modules/civicrm/Civi/API/Api3SelectQuery.php on line 130 and at least 2 expected in CiviCRM_API...Full message:
``ArgumentCountError: Too few arguments to function CiviCRM_API3_Exception::__construct(), 1 passed in [drupal root]/sites/all/modules/civicrm/Civi/API/Api3SelectQuery.php on line 130 and at least 2 expected in CiviCRM_API3_Exception->__construct()
``
I'm assuming the ``new \CiviCRM_API3_Exception(`` call has escaped the author when fixing all ``new CiviCRM_API3_Exception(`` occurrences after the signature change.
Seems to affect ``5.7.2`` and later.
I'll post a PR right away.5.10https://lab.civicrm.org/dev/core/-/issues/593Quicksearch "Name/Email" doesn't search email2018-12-18T03:19:39ZJonGoldQuicksearch "Name/Email" doesn't search emailI'm seeing this on both 5.8.0 and master.
QuickSearch, when set to "Name/Email" searches on name but not email. Basic/Advanced search "Name/Email" fields both work normally.I'm seeing this on both 5.8.0 and master.
QuickSearch, when set to "Name/Email" searches on name but not email. Basic/Advanced search "Name/Email" fields both work normally.5.8.2https://lab.civicrm.org/dev/core/-/issues/594WYSIWYG Editor affected in CiviCRM 5.8.02018-12-28T08:55:55Zvakeesan26WYSIWYG Editor affected in CiviCRM 5.8.0After changing Display preference Wysiwig Editor setting from Text-Area to CKEditor
the editor not loaded anywhere.
Also the Configure CKEditor button is not visible in display preference page.
![image](/uploads/bf12c40db9672e5b0ad876...After changing Display preference Wysiwig Editor setting from Text-Area to CKEditor
the editor not loaded anywhere.
Also the Configure CKEditor button is not visible in display preference page.
![image](/uploads/bf12c40db9672e5b0ad8767f211260e7/image.png)
**New Activity**
![image](/uploads/ba87691aaab34031a6f363e7a6136fc2/image.png)
**Manage Events**
![image](/uploads/c74efdd95f623d4eac15fd7735e350a1/image.png)5.9https://lab.civicrm.org/dev/core/-/issues/595On Edit Membership Status admin form, default value of Label field fails to p...2018-12-17T20:30:07ZdavejOn Edit Membership Status admin form, default value of Label field fails to populateOn Edit Membership Status form, Label field is empty when form loads. If left blank, get "This field is required" on submit. If filled in, it saves OK to db but when edit form is loaded again, it remains blank. So it's an issue of popula...On Edit Membership Status form, Label field is empty when form loads. If left blank, get "This field is required" on submit. If filled in, it saves OK to db but when edit form is loaded again, it remains blank. So it's an issue of populating the default value of the Label field in the admin form.
This is a fairly recent regression, couldn't see an existing bug report. Affects 5.8.0, 5.7.2 & 5.5.2 but not 5.4.1 .
5.8.2https://lab.civicrm.org/dev/core/-/issues/596Report export requires additional permission on report form2022-10-22T05:03:48ZjensschuppeReport export requires additional permission on report formA user without the permission "Edit reports" is not able to export reports as CSV/PDF from the report form at civicrm/report/instance/{report_id} using the action dropdown field, although those actions are contained within the field. The...A user without the permission "Edit reports" is not able to export reports as CSV/PDF from the report form at civicrm/report/instance/{report_id} using the action dropdown field, although those actions are contained within the field. The form is just submitting and no export happens.
However, using the link (civicrm/report/instance/{report_id}?output={csv|pdf}), e.g. on the report list on civicrm/report/list, this is possible as expected.https://lab.civicrm.org/dev/core/-/issues/597Financial Type get api action returns empty values when name parameter is used2018-12-17T20:30:23ZscardiniusFinancial Type get api action returns empty values when name parameter is usedAny parameters work fine except of `name`. I see such problems:
* it's not possible to find type by existing name
* it's not possible to find type by non-existing name (test for new financial type)
* `'DonationNew' is not a valid op...Any parameters work fine except of `name`. I see such problems:
* it's not possible to find type by existing name
* it's not possible to find type by non-existing name (test for new financial type)
* `'DonationNew' is not a valid option for field financial_type = Array`
Example:
```php
$result = civicrm_api3('FinancialType', 'get', [
'sequential' => 1,
'name' => "Donation",
]);
```
Result:
```json
{
"is_error": 0,
"version": 3,
"count": 0,
"values": []
}
```
This is a regression in those versions
* 5.5.3
* 5.6.0
It works fine in 5.3.25.8.2https://lab.civicrm.org/dev/core/-/issues/598Campaigns > conduct survey > reserve | search with Smart or Parent list doesn...2022-10-05T05:03:35ZkenCampaigns > conduct survey > reserve | search with Smart or Parent list doesn't return all contacts**Campaigns > conduct survey > reserve**
I can search for contacts by list, but if I use a Smart or Parent list then the returned contacts doesn't include all contacts.
I assume what is needed is to refresh the smart list cache.**Campaigns > conduct survey > reserve**
I can search for contacts by list, but if I use a Smart or Parent list then the returned contacts doesn't include all contacts.
I assume what is needed is to refresh the smart list cache.https://lab.civicrm.org/dev/core/-/issues/599Add Membership Renewal as Scheduled Reminder trigger option2022-09-24T05:03:38ZJoeMurrayAdd Membership Renewal as Scheduled Reminder trigger optionCurrently Scheduled Reminders can be based off membership join, start and end date. Renewal date is an important workflow event, and should be supported.
The existing three dates for membership are stored on the membership record. Renew...Currently Scheduled Reminders can be based off membership join, start and end date. Renewal date is an important workflow event, and should be supported.
The existing three dates for membership are stored on the membership record. Renewal date is not stored, and involves changing the end date.
civicrm_membership_log does not record what happened to prompt the new log record, ie a renewal.
A renewal can be (somewhat reliably) determined to have occurred at membership_log.modified_date when membership_log.end_date is increased by civicrm_membership_type.duration_unit * civicrm_membership_type.duration_interval compared to previous membership_log record for that membership. This can only be determined after the renewal has been processed.
Use a post-process validation to prevent configuration of a scheduled reminders based on a time BEFORE a renewal, only AFTER a renewal: "To schedule a reminder about an upcoming membership renewal, configure a message to be sent before the membership end date."
This algorithm will not work properly when the membership type duration and interval change between the time of the renewal and the sending of the reminder. As a work-around to avoid a schema change, when changes are made to the membership type duration or interval for a membership type that has a membership renewal triggered schedule reminder, display the following message: "Note: scheduled reminders for membership renewals of this membership type that have not been sent since the renewal will need to be done manually."EdselopezEdselopezhttps://lab.civicrm.org/dev/core/-/issues/601Can't add options to non-reserved group2018-12-16T06:15:55ZjohnffCan't add options to non-reserved groupOn 5.5.1 I am unable to add an option to a custom field's group option. The button to add a new option doesn't appear, but the message "The existing option choices for Funding Source group are listed below. You can add, edit or delete th...On 5.5.1 I am unable to add an option to a custom field's group option. The button to add a new option doesn't appear, but the message "The existing option choices for Funding Source group are listed below. You can add, edit or delete them from this screen." appears. There have been recent fixes in this area that may or may not be related: https://lab.civicrm.org/dev/core/issues/155.https://lab.civicrm.org/dev/core/-/issues/602PHP 7 notice: Only variables should be assigned by reference in CRM/Member/Fo...2018-12-18T01:04:04ZAndrew ThompsonPHP 7 notice: Only variables should be assigned by reference in CRM/Member/Form/Task.php, also applicable to Event, Grant, Pledge, CoreI get this e-notice when creating a PDF letter from a membership search task:
```
Notice: Only variables should be assigned by reference in <path>/CRM/Member/Form/Task.php on line 134
```
The offending code - I think it's just a matter ...I get this e-notice when creating a PDF letter from a membership search task:
```
Notice: Only variables should be assigned by reference in <path>/CRM/Member/Form/Task.php on line 134
```
The offending code - I think it's just a matter of removing the &
```php
public function setContactIDs() {
$this->_contactIds = &CRM_Core_DAO::getContactIDsFromComponent($this->_memberIds,
'civicrm_membership'
);
}
```
PR: https://github.com/civicrm/civicrm-core/pull/13295https://lab.civicrm.org/dev/core/-/issues/603DB error on Case Summary report2018-12-30T09:13:53ZmathavanDB error on Case Summary reportOn Case Summary report,
When run report without any changes are any filters then you would this warning message
![Warning_message](/uploads/d58a69dbbf72d9916ac87a3cde5c9583/Warning_message.png)
Then unselect the Staff Member Column and...On Case Summary report,
When run report without any changes are any filters then you would this warning message
![Warning_message](/uploads/d58a69dbbf72d9916ac87a3cde5c9583/Warning_message.png)
Then unselect the Staff Member Column and Relationship column on Column tab and run the report would end up with DB Error unknown column.
![unselectRelationshipFields](/uploads/78f1e4e8e732f70a4a65a7f266249c7a/unselectRelationshipFields.png)
![DB_Error](/uploads/ce1803449623eb3d62c539cfa06aa8a1/DB_Error.png)
I think is because of filter "Active Relationship" is set to "Yes" by default.
![Filter](/uploads/92151f98651b2deec706a7c2c06ee6ea/Filter.png)
Because there is no relationship table has been added in from clause based on this condition
![FromClause](/uploads/3126c43f0ebc4905fe368085d0ad0df0/FromClause.png)5.10https://lab.civicrm.org/dev/core/-/issues/604No release notes for 5.8.12018-12-20T02:16:36ZGhost UserNo release notes for 5.8.1Latest release is 5.8.1 and links to release notes that do not exist and it seems you guys usually do release notes for dot releases but did not in this case.
https://civicrm.org/blog/tags/release
https://github.com/civicrm/civicrm-core...Latest release is 5.8.1 and links to release notes that do not exist and it seems you guys usually do release notes for dot releases but did not in this case.
https://civicrm.org/blog/tags/release
https://github.com/civicrm/civicrm-core/tree/master/release-noteshttps://lab.civicrm.org/dev/core/-/issues/605Display of Test Transactions in CiviCRM2023-09-06T05:03:20Zmattwiremjw@mjwconsult.co.ukDisplay of Test Transactions in CiviCRMSee https://github.com/civicrm/civicrm-core/pull/12421 and https://github.com/civicrm/civicrm-core/pull/12385
There is quite a lot of inconsistency with displaying test transactions in CiviCRM. In some places they are shown, others not...See https://github.com/civicrm/civicrm-core/pull/12421 and https://github.com/civicrm/civicrm-core/pull/12385
There is quite a lot of inconsistency with displaying test transactions in CiviCRM. In some places they are shown, others not, sometimes the tab counts include them, sometimes not...
I propose that we add a setting (global or per-user?) to CiviCRM and test transactions are shown ONLY based on that setting, not on any other random variable we choose to latch onto (who knew that force=1 also means "don't show test transactions"!).https://lab.civicrm.org/dev/core/-/issues/606Wrong redirection when view/editing Option Groups inside a modal2018-12-18T20:26:39ZDavi AlexandreWrong redirection when view/editing Option Groups inside a modalThis seems like a regression caused by #259.
Before it, when opening the Option Group page via a modal, the behavior of clicking the "Done" button was to just close the modal so that people could continue filling the form:
![541](/uplo...This seems like a regression caused by #259.
Before it, when opening the Option Group page via a modal, the behavior of clicking the "Done" button was to just close the modal so that people could continue filling the form:
![541](/uploads/a1be12ccd111ef1c8a5926a6f0b3235c/541.gif)
After it, when clicking the "Done" button, the user is now redirected to the Option Groups page and lose all the data they might have already entered:
![581](/uploads/81741dc567d72fb1d583c43b045e7007/581.gif)5.9https://lab.civicrm.org/dev/core/-/issues/607Search Builder fails with an error when searching for State if the location t...2018-12-19T20:41:32ZkainukSearch Builder fails with an error when searching for State if the location type differs from the display name.To reproduce on the dmaster.
1. Goto https://dmaster.demo.civicrm.org/civicrm/admin/locationType?reset=1
1. Change the name of Other (nr 4) to other.
1. Start the search builder.
1. Create the following search ![screen01](/uploads/3cd446...To reproduce on the dmaster.
1. Goto https://dmaster.demo.civicrm.org/civicrm/admin/locationType?reset=1
1. Change the name of Other (nr 4) to other.
1. Start the search builder.
1. Create the following search ![screen01](/uploads/3cd4464f5e344f1a2866d0d2f4b3bc2d/screen01.jpg)
1. The search ends with a *DB Error - Syntax Error*5.10https://lab.civicrm.org/dev/core/-/issues/608Saving Search Settings cause losing Search Settings2018-12-18T21:09:33Zpal_urSaving Search Settings cause losing Search SettingsIf I save Administer >> Settings >> Search page, the values of "Contact autocomplete options" and "Contact reference options" are lost. The values in the corresponding database rows instead of string (eg. s:5:"12") a null length integer ...If I save Administer >> Settings >> Search page, the values of "Contact autocomplete options" and "Contact reference options" are lost. The values in the corresponding database rows instead of string (eg. s:5:"12") a null length integer (i:0).
CiviCRM 5.8.0, Drupal 7, MySQL 5.5.62https://lab.civicrm.org/dev/core/-/issues/609Can't view "Advanced Search" links on Mailing Report without "View All Contac...2019-02-05T14:07:11ZJonGoldCan't view "Advanced Search" links on Mailing Report without "View All Contacts" permissionIt appears that the "Advanced Search" link (see screenshot) doesn't appear on mailing reports unless you have the "View All Contacts" permission. This seems odd because the "Report" link is NOT restricted. The only reason I can think o...It appears that the "Advanced Search" link (see screenshot) doesn't appear on mailing reports unless you have the "View All Contacts" permission. This seems odd because the "Report" link is NOT restricted. The only reason I can think of for wanting to restrict this is to prevent someone thinking they have a complete list of contacts that received a mailing when they didn't. I'd argue that a) folks with access to less than the whole database typically understand this; b) the same issue would be present on reports.
I propose we remove [the permission check](https://github.com/civicrm/civicrm-core/blob/master/CRM/Mailing/BAO/Mailing.php#L2182) that controls the display of the "Advanced Search" link.
![Selection_721](/uploads/576ddcc9b35d34870056ef7316439d9b/Selection_721.png)https://lab.civicrm.org/dev/core/-/issues/610Page title displays twice if the activity type is set in Activity form2018-12-29T22:59:37ZyashodhaPage title displays twice if the activity type is set in Activity formSteps to replicate :
* Go to https://dmaster.demo.civicrm.org/civicrm/activity?reset=1&action=add&context=standalone&atype=2
* Page title displays twice
![activity_bug](/uploads/dcb4e9453ef30a5352b0755a471443c9/activity_bug.png)
It show...Steps to replicate :
* Go to https://dmaster.demo.civicrm.org/civicrm/activity?reset=1&action=add&context=standalone&atype=2
* Page title displays twice
![activity_bug](/uploads/dcb4e9453ef30a5352b0755a471443c9/activity_bug.png)
It shows properly if a new activity form doesn't have activity type set.
https://dmaster.demo.civicrm.org/civicrm/activity?reset=1&action=add&context=standalone5.10yashodhayashodha