Development issueshttps://lab.civicrm.org/groups/dev/-/issues2022-04-22T16:04:58Zhttps://lab.civicrm.org/dev/core/-/issues/3299Make alerts accessible2022-04-22T16:04:58ZJoeMurrayMake alerts accessibleFrom Clare comes a problem statement and some brainstorming ideas:
> A problem for our low vision users is alerts, their AT software doesn't recognise them, so they miss warnings and end up adding duplicates. It would be great to have s...From Clare comes a problem statement and some brainstorming ideas:
> A problem for our low vision users is alerts, their AT software doesn't recognise them, so they miss warnings and end up adding duplicates. It would be great to have some sort of per user control for setting how alerts display, perhaps even adding audio cues.
Use alert role approach suggested at https://www.w3.org/TR/2017/NOTE-wai-aria-practices-1.1-20171214/examples/alert/index.html as this will allow audio cues to be given to users of screen readers.
Note more details at https://www.w3.org/TR/2017/NOTE-wai-aria-practices-1.1-20171214/#alert and also https://www.w3.org/TR/2017/NOTE-wai-aria-practices-1.1-20171214/#alertdialog
https://www.w3.org/TR/UNDERSTANDING-WCAG20/time-limits-no-exceptions.html indicates that there should be no time limits like quickly disappearing alerts.
As a first pass, let's implement a site wide setting to disable alerts from disappearing. We don't have a good design pattern currently for per user preferences. When we do move to per user preferences, the default should be to have alerts not disappear.justinfreeman (Agileware)justinfreeman (Agileware)https://lab.civicrm.org/dev/core/-/issues/3297replace select2 with latest stable2022-04-22T16:04:56ZJoeMurrayreplace select2 with latest stableCurrently, Civi is using select2 3.5 which we need to upgrade to latest stable 4.0.5, maybe 4.0.6 (https://github.com/select2/select2/releases) and then resolve compatibility issues with CiviCRM.
The upgrade from 3.5 to 4.x contains num...Currently, Civi is using select2 3.5 which we need to upgrade to latest stable 4.0.5, maybe 4.0.6 (https://github.com/select2/select2/releases) and then resolve compatibility issues with CiviCRM.
The upgrade from 3.5 to 4.x contains numerous breaking changes that affect the calling code in CiviCRM.
Major issues:
1. Auto appending values doesn't work anymore
Error: Uncaught TypeError: Cannot read property 'prop' of undefined
LOC - https://github.com/civicrm/civicrm-core/blob/master/js/crm.searchForm.js#L9
Reference - https://select2.org/upgrading/migrating-from-35#select2-val
2. Placeholder broken
Error: Uncaught TypeError: Cannot read property 'id' of undefined
As per 3.5 - placeholderOption is used to set the placeholder value for select2 widget
As per 4.0.4 - placeholder option can now accept placeholder value both in string and object
Reference - https://select2.org/upgrading/migrating-from-35#more-flexible-placeholders
3. EntityRef select2 fields are broken
Error: Uncaught Error: No select2/compat/initSelection
As per 4.0.4 - Removed the requirement of 'initSelection'
Reference - https://select2.org/upgrading/migrating-from-35#removed-the-requirement-of-initselection
4. Navigation menu style is not applied
Error: Uncaught TypeError: Cannot read property 'prop' of undefined
As per 4.0.4 - $("select").val("1").trigger("change"); // instead of $("select").select2("val", "1");
Reference - https://select2.org/upgrading/migrating-from-35#select2-val
Minor issues
1. Multi select2 widget doesn't show downarrow placeholder icon
2. select2 css style isn't applied after upgrade
migration of old JIRA issue with some additional discussion at https://issues.civicrm.org/jira/browse/CRM-21263https://lab.civicrm.org/dev/financial/-/issues/3Migrate from one-2-one forms to many to one for payment & line items2018-03-19T00:01:10ZeileenMigrate from one-2-one forms to many to one for payment & line itemshttps://lab.civicrm.org/dev/financial/-/issues/4Add processor name to recurring contribution overview on Contribution tab2018-04-06T09:59:51Zmattwiremjw@mjwconsult.co.ukAdd processor name to recurring contribution overview on Contribution tabRequires changes in https://issues.civicrm.org/jira/browse/CRM-21784 so data is available to smarty.
The recurring section could do with quite a bit of refactoring to allow things such as sorting, optional columns etc. However, as it s...Requires changes in https://issues.civicrm.org/jira/browse/CRM-21784 so data is available to smarty.
The recurring section could do with quite a bit of refactoring to allow things such as sorting, optional columns etc. However, as it stands a two line change to the template allows us to add additional columns as it currently has less columns than the contribution tab. This PR adds the "processor name" column as this is probably one of the more common bits of useful information that all processors use.
Use case: It allows you to see at a glance who has direct debits setup, who has recurring payments with paypal etc. Currently this information is a bit awkward to find as you have to open each recurring contribution to look at the detail.
Before:
![localhost_8000_civicrm_contact_view_reset_1_cid_206__1_](/uploads/29850d8be3b37711fe398bb1d2b2c922/localhost_8000_civicrm_contact_view_reset_1_cid_206__1_.png)
After:
![localhost_8000_civicrm_contact_view_reset_1_cid_206](/uploads/a4c2c14bbcb7fe6c8dd92bdd6f8d8271/localhost_8000_civicrm_contact_view_reset_1_cid_206.png)https://lab.civicrm.org/dev/core/-/issues/6Add help text for "is public" setting on form to edit custom field sets2023-06-23T17:54:21ZSean ColsenAdd help text for "is public" setting on form to edit custom field setsThere's a new setting for making custom field sets public/private. I think it needs some help text.
![mockup](https://user-images.githubusercontent.com/42411/36987279-f763aae0-2069-11e8-99c8-b3dd9953a895.png)
How exactly does CiviCRM c...There's a new setting for making custom field sets public/private. I think it needs some help text.
![mockup](https://user-images.githubusercontent.com/42411/36987279-f763aae0-2069-11e8-99c8-b3dd9953a895.png)
How exactly does CiviCRM change its behavior based on this setting?
As far as I can tell, this setting has only two effects:
* Custom fields attached directly to *events* are hidden from the event info page if they are part of a private custom field set
* from https://github.com/civicrm/civicrm-core/pull/10028
* Custom fields attached to some other entities (e.g. participation, contribution, etc... *not sure of comprehensive list*) are displayed in the registration email sent to participants, but only when this email comes from a back-office registration. These fields will be hidden if they're part of a private set.
* from https://github.com/civicrm/civicrm-core/pull/106615.8https://lab.civicrm.org/dev/core/-/issues/7recurring authorize IPN results in contribution with incorrect payment_instru...2023-06-23T17:54:21Zjamierecurring authorize IPN results in contribution with incorrect payment_instrument_idIf you create a recurring contribution in authorize.net, the second time it goes through, it will result in a contribution with payment instrument type set to check, instead of credit card (or perhaps a different value if you have a diff...If you create a recurring contribution in authorize.net, the second time it goes through, it will result in a contribution with payment instrument type set to check, instead of credit card (or perhaps a different value if you have a different default payment instrument id).
This seems related to this issue: https://issues.civicrm.org/jira/browse/CRM-19186 which fixed it for paypal but not for authorize.net.https://lab.civicrm.org/dev/core/-/issues/8Fatal error on Print/Merge Document for Cases2023-06-23T17:54:21Zaydunsaidan.saunders@squiffle.ukFatal error on Print/Merge Document for Cases* Go to Search Cases
* Select cases
* Select Print/merge Document from Actions menu
* Result is fatal error
Possibly related to https://issues.civicrm.org/jira/browse/CRM-21382
Reproduced on dmaster.demo
```
Array
(
[callback] =>...* Go to Search Cases
* Select cases
* Select Print/merge Document from Actions menu
* Result is fatal error
Possibly related to https://issues.civicrm.org/jira/browse/CRM-21382
Reproduced on dmaster.demo
```
Array
(
[callback] => Array
(
[0] => CRM_Core_Error
[1] => handle
)
[code] => -19
[message] => DB Error: no such field
[mode] => 16
[debug_info] =>
SELECT contact_id
FROM civicrm_case
WHERE id IN ( 1,4 )
[nativecode=1054 ** Unknown column 'contact_id' in 'field list']
[type] => DB_Error
[user_info] =>
SELECT contact_id
FROM civicrm_case
WHERE id IN ( 1,4 )
[nativecode=1054 ** Unknown column 'contact_id' in 'field list']
[to_string] => [db_error: message="DB Error: no such field" code=-19 mode=callback callback=CRM_Core_Error::handle prefix="" info="
SELECT contact_id
FROM civicrm_case
WHERE id IN ( 1,4 )
[nativecode=1054 ** Unknown column 'contact_id' in 'field list']"]
)
```5.0.0https://lab.civicrm.org/dev/core/-/issues/3253Contribution Detail: selecting the "soft credits" colum results in fatal error2022-04-22T15:52:45ZbgmContribution Detail: selecting the "soft credits" colum results in fatal errorTo reproduce:
* Go to the Reports > Contribution Reports > Contribution Details
* In the "columns", select the "soft credit" column
* Click "preview"
Results in a fatal error.
![Capture_d_écran_de_2018-03-07_16-58-43](/uploads/b3f0480...To reproduce:
* Go to the Reports > Contribution Reports > Contribution Details
* In the "columns", select the "soft credit" column
* Click "preview"
Results in a fatal error.
![Capture_d_écran_de_2018-03-07_16-58-43](/uploads/b3f048038f56aef323c6b101838b5b89/Capture_d_écran_de_2018-03-07_16-58-43.png)https://lab.civicrm.org/dev/core/-/issues/9Custom include/exclude search is broken2023-06-23T17:54:21ZJchesterCustom include/exclude search is brokenToday (8 March 2018) on http://dmaster.demo.civicrm.org the custom include/exclude search gives a WSOD.
This was using **Include** Newsletter Subscribers and **exclude** Advisory Board.
This works correclty in 4.7.29 on Civihostings...Today (8 March 2018) on http://dmaster.demo.civicrm.org the custom include/exclude search gives a WSOD.
This was using **Include** Newsletter Subscribers and **exclude** Advisory Board.
This works correclty in 4.7.29 on Civihostings demo site. I don't have access to a 4.7.30 site to test on thathttps://lab.civicrm.org/dev/core/-/issues/10Enabling plugin in CKEditor Default doesn't enable it in Civimail despite sho...2023-06-23T17:54:21Zluke.stewartEnabling plugin in CKEditor Default doesn't enable it in Civimail despite showing it as enabledWhen enabling a CKEditor plugin at: civicrm/admin/ckeditor if you add it to "Default" and press save.
At this point the plugin shows up on all three tabs, (Default, Civimail, CiviEvent) however the plugin doesn't appear on a new mail des...When enabling a CKEditor plugin at: civicrm/admin/ckeditor if you add it to "Default" and press save.
At this point the plugin shows up on all three tabs, (Default, Civimail, CiviEvent) however the plugin doesn't appear on a new mail despite clearing caches, and force refreshing the browser.
Navigating to the "Civimail" tab and pressing save there as well gives the desired behaviour that the plugin is enabled.![CKEditor](/uploads/5c8b21a886fbf4b0eb27cd0a0ba0d09d/CKEditor.png)
Tested on 4.7.27 and 4.7.31RC
To reproduce:
1. Navigate to civicrm/admin/ckeditor
1. Select a plugin from the plugin dropdown on the default tab
1. Obeserve additional component appears in preview
1. Click Save
1. Clear caches civicrm/admin/setting/updateConfigBackend
1. Create an new email -> civicrm/mailing/send?reset=1
1. Observe additional component that it doesn't show in the toolbar.
1. Return to civicrm/admin/ckeditor
1. Shift to the Civi mail tab. Observe the plugin is listed.
1. Scratch head.
1. Press save.
1. Create a new mail.
1. You now have the required plugin.
I haven't tested behaviour with regards to the event tab.https://lab.civicrm.org/dev/core/-/issues/11Email - send now error screen should display earlier2023-06-23T17:54:21ZJchesterEmail - send now error screen should display earlierIn Advanced Search if you are displaying results as contacts and then:
* select more than 50 of the results
* select **Email - send now (to 50 or less)**
you see the Error message telling you that you can't email more than 50 contac...In Advanced Search if you are displaying results as contacts and then:
* select more than 50 of the results
* select **Email - send now (to 50 or less)**
you see the Error message telling you that you can't email more than 50 contacts this way and the process stops
However, if you display the results as contributions or as memberships then
* select more than 50 of the results
* select **Email - send now (to 50 or less)**
you are taken to the email set up page. It is not until you click on Send Email on that page that you see the Error message telling you that you can't email more than 50 contacts this way and the process is stopped.
It would be a better user experience if the error message always appeared when **Email - send now (to 50 or less)** was selected.5.9https://lab.civicrm.org/dev/core/-/issues/12Improvement: for crmUiWizard-driven workflows, scroll back to top between steps2023-06-23T17:54:21ZginkgofjgImprovement: for crmUiWizard-driven workflows, scroll back to top between stepsSome "steps" in a wizard are fairly long and require scrolling to reach all the required fields. See the CiviMail wizard (civicrm/a/#/mailing) for example.
Differences in height between the steps can make clicking the buttons that contr...Some "steps" in a wizard are fairly long and require scrolling to reach all the required fields. See the CiviMail wizard (civicrm/a/#/mailing) for example.
Differences in height between the steps can make clicking the buttons that control the workflow (back, forward, etc.) at the bottom of the wizard a jarring experience. Sometimes the next step is significantly shorter than the previous one, and the user is left looking at white space. Sometimes the next step is very similar to the previous step, and it is unclear that anything occurred after the user's click because the user's view hasn't changed.
In any case, a better user experience would be to move the user to the top of the wizard at each transition.5.0.0ginkgofjgginkgofjghttps://lab.civicrm.org/dev/core/-/issues/13rare recurring error: CiviMail will not send an empty mail body, Skipping2023-06-23T17:54:21Zmfbrare recurring error: CiviMail will not send an empty mail body, SkippingIt appears in a tiny fraction of mailing recipients (less than 0.01%), we are not sending the mailing because contact details are empty. The contact details contains custom tokens that we have added, but no actual core contact data, e.g...It appears in a tiny fraction of mailing recipients (less than 0.01%), we are not sending the mailing because contact details are empty. The contact details contains custom tokens that we have added, but no actual core contact data, e.g. preferred_mail_format (which is required to compose a message). To be clear, no contact data is present, it's not that preferred_mail_format is NULL.
Perhaps this is caused by a failed db query somewhere along the way. Will require further debugging to get to the bottom of it.https://lab.civicrm.org/dev/financial/-/issues/5If a currency has been disabled allow the form to be submitted2018-03-12T09:08:17Zmattwiremjw@mjwconsult.co.ukIf a currency has been disabled allow the form to be submittedIf you have contributions / recurring contributions in a specific currency and subsequently disable that currency in CiviCRM settings it is no longer possible to submit forms with an "amount" element that add the currency as a frozen val...If you have contributions / recurring contributions in a specific currency and subsequently disable that currency in CiviCRM settings it is no longer possible to submit forms with an "amount" element that add the currency as a frozen value (eg. recurring contribution updateSubscription).https://lab.civicrm.org/dev/drupal/-/issues/13Contact Image uploaded from Drupal Webform doesn't render on Drupal View as a...2021-09-08T11:25:32ZjitendraContact Image uploaded from Drupal Webform doesn't render on Drupal View as a thumbnail.This is an extension of a fix done recently via https://github.com/civicrm/civicrm-core/pull/11681. As it only contained the fix to render the image on the contact summary page, we also have this issue on a Drupal view which needs to be ...This is an extension of a fix done recently via https://github.com/civicrm/civicrm-core/pull/11681. As it only contained the fix to render the image on the contact summary page, we also have this issue on a Drupal view which needs to be addressed. To replicate, upload an image for a contact using a webform and try to render it as a thumbnail on a Drupal view.
Also, if the filename of the image has a space in it, it fails to load on the view.5.43.0https://lab.civicrm.org/dev/core/-/issues/14Creating a relationship fails for an organization contact which has NULL valu...2023-06-23T17:54:21ZEvanCreating a relationship fails for an organization contact which has NULL values in start/end/join fields of a membershipWhen creating a relationship between an Individual and an Organizational contact, the relationship fails to be created and throws the following error if the Organizational contact record has a membership with NULL values in the start/end...When creating a relationship between an Individual and an Organizational contact, the relationship fails to be created and throws the following error if the Organizational contact record has a membership with NULL values in the start/end/join fields, such as might happen if a payment failed and the membership was created in a "Pending" state:
`unknown relationship create error The membership cannot be saved because the status cannot be calculated for start_date: null end_date null join_date null as at 2018-03-09 16:43:22`
What's odd is that I wouldn't expect the relationships to be dependent on a membership object, but for some reason it is? I did some testing on a client's sandbox site and found that any membership with NULL start/end/join dates will cause a Relationship creation to fail. I found that deleting the membership with NULL dates fixes the issue i.e. allows the relationship to be created, as does simply adding dates to the membership in question.
**Backtrace:**
`Mar 09 16:43:23 [info] $backTrace = #0 /var/www/example.org/htdocs/sites/all/modules/civicrm/CRM/Core/Error.php(456): CRM_Core_Error::backtrace("backTrace", TRUE)
#1 /var/www/example.org/htdocs/sites/all/modules/civicrm/CRM/Core/Invoke.php(55): CRM_Core_Error::handleUnhandledException(Object(CRM_Core_Exception))
#2 /var/www/example.org/htdocs/sites/all/modules/civicrm/drupal/civicrm.module(345): CRM_Core_Invoke::invoke((Array:4))
#3 [internal function](): civicrm_invoke("contact", "view", "rel")
#4 /var/www/example.org/htdocs/includes/menu.inc(350): call_user_func_array("civicrm_invoke", (Array:3))
#5 /var/www/example.org/htdocs/index.php(17): menu_execute_active_handler()
#6 {main}`
**NB:** I am unable to manually re-create this scenario on the demo site (I tried) as a start date is required when creating a membership.https://lab.civicrm.org/dev/translation/-/issues/6Test translation issue2018-03-13T01:31:29ZbgmTest translation issueThis is a test for eileen/Product-maintenance#8, please ignore.This is a test for eileen/Product-maintenance#8, please ignore.https://lab.civicrm.org/dev/core/-/issues/3579Add pause/resume functionality to civicrm bulk mailing.2022-06-11T14:54:43ZjitendraAdd pause/resume functionality to civicrm bulk mailing.Scenario
Site admin is sending out a big blast but want to send out a press release without waiting for first job to end.Scenario
Site admin is sending out a big blast but want to send out a press release without waiting for first job to end.5.4.0https://lab.civicrm.org/dev/drupal/-/issues/14inactive optionvalues don't show up in participant exports2020-07-16T17:23:38ZJoostinactive optionvalues don't show up in participant exportsa participant field has a custom field containing option values. Participants choose one of these option values. The option value that the participants chose gets disabled after they chose it. In a participant export containing this cust...a participant field has a custom field containing option values. Participants choose one of these option values. The option value that the participants chose gets disabled after they chose it. In a participant export containing this custom field the participants who chose for the disabled option will have a blanc space in the table on that location. Expected is having the option they chose over there, all-tough it has been disabled, and isn't available to choose any more.
to recreate this on a demo site:
1. create a participant to the fall fundraiser dinner with a soup preference
2. go to custom fields and edit the food preference custom field
3. deactivate the soup selection you chose in step 1
4. find participants to the fall fundraiser dinner
5. select all participants and export them using 'select fields to export'
6. select the fields to export:
- individual - display name to find the person you gave the food selection to
- participant - food preference: soup selection the field we are interested in
7. open the exported file. The soup selection for the disabled field isn't in there. When there are participants who chose for a soup that is still active the soup selection is in there for themhttps://lab.civicrm.org/dev/core/-/issues/15Wrong parameter passing in LineItem.php2023-06-23T17:54:21ZjitendraWrong parameter passing in LineItem.phpFound an incorrect parameter supplied to getFieldValue() function in CRM/Price/BAO/LineItem.php.
Current Code from https://github.com/civicrm/civicrm-core/blob/master/CRM/Price/BAO/LineItem.php#L458-
$membershipId = CRM_Core_DAO::g...Found an incorrect parameter supplied to getFieldValue() function in CRM/Price/BAO/LineItem.php.
Current Code from https://github.com/civicrm/civicrm-core/blob/master/CRM/Price/BAO/LineItem.php#L458-
$membershipId = CRM_Core_DAO::getFieldValue('CRM_Member_DAO_MembershipPayment', 'contribution_id', $line['entity_id'], 'membership_id');
`getFieldValue()` accepts the following parameters which is not correctly fed in the above line
> * @param string $daoName
* Name of the DAO (Example: CRM_Contact_DAO_Contact to retrieve value from a contact).
> * @param int $searchValue
* Value of the column you want to search by.
> * @param string $returnColumn
* Name of the column you want to GET the value of.
> * @param string $searchColumn
* Name of the column you want to search by.
> * @param bool $force
* Skip use of the cache.