CiviCRM Core issueshttps://lab.civicrm.org/dev/core/-/issues2022-06-11T14:50:35Zhttps://lab.civicrm.org/dev/core/-/issues/3545Make it possible to make a copy of a draft mailing2022-06-11T14:50:35ZlarsssandergreenMake it possible to make a copy of a draft mailingIt would be quite useful to be able to make a copy of a draft mailing. As it stands currently, if you want to duplicate a draft email (for instance, if you want to send two slightly different mailings), you have to send it first and then...It would be quite useful to be able to make a copy of a draft mailing. As it stands currently, if you want to duplicate a draft email (for instance, if you want to send two slightly different mailings), you have to send it first and then reuse it.
I'm not sure if this would be complicated or simple to implement (essentially the same as re-using a mailing or something more complex). Does anyone have thoughts?5.38.0https://lab.civicrm.org/dev/core/-/issues/3293Make menu more accessible2022-04-22T16:04:20ZJoeMurrayMake menu more accessiblePreliminary tasks, many from https://lab.civicrm.org/dev/accessibility/issues/1#note_4855 below:
1. [x] Hide D7 menubar
1. [x] Fix for D8
1. [x] After getting focus into top menu, tabbing and back-tabbing revealed there was something hid...Preliminary tasks, many from https://lab.civicrm.org/dev/accessibility/issues/1#note_4855 below:
1. [x] Hide D7 menubar
1. [x] Fix for D8
1. [x] After getting focus into top menu, tabbing and back-tabbing revealed there was something hidden between Quick Search textbox and the CiviCRM icon. Opening submenus and back-tabbing revealed it was the search options for the Quick Search textbox. Please remove this from tab order.
1. [x] After getting focus into top menu, Space did not open (and when repeated, close) child menu on current item. It should act similarly to Return.
1. [x] When focus is on an item that could be selected to navigate somewhere, Return worked fine but Space did not replicate this.
1. [x] When on an open sub-submenu (eg Contributions > Accounting Batches with Open Batches with focus), using left arrow correctly moved focus to Accounting Batches, but it did not close the sub-submenu.
1. [x] When on a submenu, using left arrow should close the submenu and move focus to parent item. Instead it moved focus to menu item to left of parent item. The submenu was left open when it should have been closed.
~~1. [ ] When on a sub-submenu, escape should only close that level of menu but closes both the sub-submenu and the submenu.~~
1. [ ] "First item in menu bar should be in the tab order (tabindex=0)." (https://staff.washington.edu/tft/tests/menus/index.html). This may be a bit of work to implement in all CMSes but I think tabindex=0 for CiviCRM menu makes sense as the default on CiviCRM pages on default CMS installs. The CiviCRM Menu left item should be considered the QuickSearch. There appears to be an item for a div around the textarea and a separate way to focus on the textarea itself. The div around the textarea should be tabindex=0.
1. [ ] The cited spec is relatively silent, but other accessible menus have different implementations on the following: 1) When focus is on top menu item and its submenu is open, left and right cycle focus to left and right top menu items and shift which submenu is open to the one under the top menu focussed item. 2a) When focus is on a submenu item left closes the submenu, cycles focus to left on top menu and opens that top menu's submenu. 2b) When focus is on a submenu item without a subsubmenu, right similarly closes submenu, cycles focus right on top menu and opens that top menu item's submenu. 2c) When focus is on a submenu item with a subsubmenu, right opens the subsubmenu. Let's change behaviour 1), 2a) and 2b) to not opening new submenu. Leave 2c) as is.
~~1. [ ] When focus is not on the menu, cursor hovering over a menu item brings focus to it and opens submenu. Submenu should not open until click, return or space.~~
A user should be able to navigate the menu bar by use of the keyboard:
1. [ ] The menu bar should occupy one tab stop
1. [ ] When focused on a menu at the top level:
1. [ ] The right arrow key should move the user to the next top-level menu
1. [ ] The left arrow key should move the user to the previous top level menu
1. [ ] User focus should wrap to the beginning if the user advances past the final menu item. Likewise, if the user tries to navigate to the previous item from the first menu, focus should wrap to the last menu.
1. [ ] The down-arrow and ENTER keys should expand a child menu and focus the user on the first item
~~1. [ ] When a character is typed, the next menu item starting with that letter receives the focus, circling around to first when there are no more. If no menu item starts with the typed character, focus does not move. (deprecated by HTML 5.2 accesskey standard)~~
1. [ ] When focused on a child menu
1. [ ] The down arrow key should move the user to the next menu item
1. [ ] The up arrow key should move the user to the previous menu item
1. [ ] The right arrow key should expand a menu item with a submenu and place user focus on the first item in that submenu. If there is no submenu, then no action is taken.
1. [ ] The left arrow key should collapse a submenu and place user focus on the parent of that submenu
1. [ ] The ESC key should close the active child menu, and any submenus, and return user focus to the parent menu at the top level.
~~1. [ ] When a character is typed, the next child menu item starting with that letter receives the focus, circling around to first when there are no more. If no child menu item starts with the typed character, focus does not move. (deprecated by HTML 5.2 accesskey standard)~~
Test the menu works on default installs (ie default theme!) on
1. [x] Drupal 7
1. [x] WordPress
1. [x] Joomla
1. [x] Backdrop
1. [x] Drupal 8
(NB: deliberately ignoring support for Drupal 6.)
Test the menu works on:
1. [x] Drupal 7 site with shoreditch theme installed
1. [x] Drupal 7 site with mosaico installed, on a CiviMail mosaico page.
A more detailed functional spec is provided at http://lists.w3.org/Archives/Public/wai-xtech/2007Dec/att-0025/index.html#menu
A good implementation that might be useful for its implementation details (seeing View Source) is https://staff.washington.edu/tft/tests/menus/simplyaccessible/index.html. As there are no sub-submenus, I imagine the code implementation needs to be extended to opening sub-submenus properly.
Was https://issues.civicrm.org/jira/browse/CRM-20824
Original description from https://civicrm.stackexchange.com/questions/17735/access-for-blind-users-to-civicrm/17752#17752
The menu bar is keyboard accessible, but awkwardly. Generally I find it best to focus on the first item then TAB (as opposed to arrowing) to the top level menu the user wants to interact with before pressing ENTER to activate the pop-up menu. You will then have to locate the HTML list element containing the menu choices. Often this element appears after the menu bar, or at the bottom of the virtual document (sometimes depending on the CMS theme, sometimes depending on, seemingly, the browser’s mood). In either case, it will not appear immediately “under” the activated menu.https://lab.civicrm.org/dev/core/-/issues/1647Make packages and bower_components tokens compataible with the CiviCRM Core R...2022-09-29T17:40:08ZseamusleeMake packages and bower_components tokens compataible with the CiviCRM Core Reources URL settingOne of the things that has been hightlighted by dev/Financial#120 is that since this commit https://github.com/civicrm/civicrm-core/commit/1143a7815b1abbcb7cfc0cab6c754e499d11d064#diff-ff63186dcddd8213d6b992efd57d70a4 from @totten not al...One of the things that has been hightlighted by dev/Financial#120 is that since this commit https://github.com/civicrm/civicrm-core/commit/1143a7815b1abbcb7cfc0cab6c754e499d11d064#diff-ff63186dcddd8213d6b992efd57d70a4 from @totten not all resources urls are treated the same. What that causes is that all bower_components and packages urls now are relative to the CiviCRM Core root path as calculated by getCiviSourceStorage rather than the CiviCRM Core Resources URL setting. Where as assets loaded from the root folder e.g. js/common.js etc would all still continue to respect the setting. This ticket is about unifying them back together in a way that is sensible. Or at least we should update the documentation and other respects to indicate that the setting no longer applies to packages and bower_components urlshttps://lab.civicrm.org/dev/core/-/issues/3783Make Recent Items available providers an option group so extensions can exten...2022-08-10T04:17:03ZherbdoolMake Recent Items available providers an option group so extensions can extend itOverview
----------------------------------------
I would like my custom entities to be available to the Recent Items block.
In `CRM_Utils_Recent::getProviders()` there's a comment to make the hard-coded list into an Open Group. I agree...Overview
----------------------------------------
I would like my custom entities to be available to the Recent Items block.
In `CRM_Utils_Recent::getProviders()` there's a comment to make the hard-coded list into an Open Group. I agree. Let's make it so.
Current behaviour
----------------------------------------
Hard-coded list of some core entities.
Proposed behaviour
----------------------------------------
Create an option group and call it from this method.5.53.0https://lab.civicrm.org/dev/core/-/issues/1257Make Relationship Description searchable (Paid Feature2019-10-16T13:44:06Zfabian_SYSTOPIAMake Relationship Description searchable (Paid Feature**Overview**
Relationships provide a "description" field which is nicely displayed in the relationship tab of a contact. However, it is currently not possible to search for those descriptions using any regular CiviCRM search.
**Scope**...**Overview**
Relationships provide a "description" field which is nicely displayed in the relationship tab of a contact. However, it is currently not possible to search for those descriptions using any regular CiviCRM search.
**Scope**
User should have the possibility to search for contacts with certain descriptions in the relationship. The advanced search should offer a possibility to search for relationship descriptions.
**Note**
I originally posted this on CiviCRM's Jira but it probably git lost in migration so I am re-posting it here. We have a customer who may fund this so it would be great to get an estimate from the core team. We would be able to test the improvement.https://lab.civicrm.org/dev/core/-/issues/2944Make report column groups hookable2023-10-13T05:03:24ZyashodhaMake report column groups hookableProvide a way to manipulate column groups in report to change the order of the column checkboxes in the _Columns_ tab.Provide a way to manipulate column groups in report to change the order of the column checkboxes in the _Columns_ tab.yashodhayashodhahttps://lab.civicrm.org/dev/core/-/issues/1077Make report listing actions links hookable2020-08-12T14:56:34ZyashodhaMake report listing actions links hookableMake report listing actions hookable. All the other action links in CRM are exposed to links hook.
![report_action](/uploads/0163d968e46b47ae3fbe41bdf96e7875/report_action.png)Make report listing actions hookable. All the other action links in CRM are exposed to links hook.
![report_action](/uploads/0163d968e46b47ae3fbe41bdf96e7875/report_action.png)yashodhayashodhahttps://lab.civicrm.org/dev/core/-/issues/2821Make row limit configurable2021-09-07T22:51:03ZKurund JalmiMake row limit configurableThere are 2 page limits defined in Civi, one for normal searches
CRM/Utils/Pager.php, ROWCOUNT = 50
and another one for the reports
CRM/Report/Form.php, ROW_COUNT_LIMIT = 50
It would be good to make it configurable via UI and add th...There are 2 page limits defined in Civi, one for normal searches
CRM/Utils/Pager.php, ROWCOUNT = 50
and another one for the reports
CRM/Report/Form.php, ROW_COUNT_LIMIT = 50
It would be good to make it configurable via UI and add this to 'Search Preferences'
Any thoughts?
Happy to work on PR.https://lab.civicrm.org/dev/core/-/issues/3457Make SearchKit available to non-admin users2022-06-04T04:07:12ZcolemanwMake SearchKit available to non-admin usersThis is a sponsored issue to make SearchKit available to non-admins by adding a new permission.This is a sponsored issue to make SearchKit available to non-admins by adding a new permission.colemanwcolemanwhttps://lab.civicrm.org/dev/core/-/issues/3298Make select2 widgets accessible2022-04-22T16:04:58ZMonish DebMake select2 widgets accessibleFrom https://civicrm.stackexchange.com/questions/17735/access-for-blind-users-to-civicrm/17752#17752
Civi makes use of the Select2 library in a number of places to generate certain pop-up lists. Basically, the library creates an edit-co...From https://civicrm.stackexchange.com/questions/17735/access-for-blind-users-to-civicrm/17752#17752
Civi makes use of the Select2 library in a number of places to generate certain pop-up lists. Basically, the library creates an edit-combo box (one where you have both a pre-defined list of options, but can also type in to narrow this list). While these elements are keyboard accessible, there are occasionally focus issues. As an example, choosing a date range filter on searches offers selections like, “previous year,” but also allows the user to choose a date range. When selecting the choose a date range option edit fields appear next to the dropdown allowing the user to enter a start and end date range. However, for a screen reader user, pressing TAB after selecting this option will focus on the next group of fields, bypassing the date range fields. Although they don’t use Select2, this behavior is also observed with combo boxes that dynamically populate other combo boxes (like on the import data screens).
Tech spec to come.https://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/2239Make submitting of A/B mailing atomic2024-03-24T05:03:29ZromainMake submitting of A/B mailing atomicThe [API function that submits A/B mailings](https://github.com/civicrm/civicrm-core/blob/master/api/v3/MailingAB.php#L100) performs the following actions:
1. submits mailing A (= set scheduled date to now)
2. submits mailing B
3. di...The [API function that submits A/B mailings](https://github.com/civicrm/civicrm-core/blob/master/api/v3/MailingAB.php#L100) performs the following actions:
1. submits mailing A (= set scheduled date to now)
2. submits mailing B
3. distribute recipients between A and B
4. set status of the A/B mailing from Draft to Testing, regardless of what happened in previous steps
I can see 3 problems in this code:
- Recipients distribution happens after submitting mailing. So if we are unlucky (i.e. if a mailing job picks up the mailings right at that moment) the mailing sender can start sending the mailings before the distribution has happened
- None of the steps checks whether the earlier steps reported any error
- The change is not atomic: if an error happens, there is no attempt to undo the earlier steps
These problems can have various consequences, from my experience:
- The submitting works but setting the status fails: the A/B mailing is being sent but this has status Draft. Opening it will display a report but it will not be possible to pick the Final
- The submitting fails but setting the status works: the A/B mailing is not sent but has status Testing. Opening it will display the composer but it will not be possible to submit the mailing.
- In any of the previous cases, if the distribution worked fine any attempt to send again the mailing without precaution will cause the distribution to happen again, which means that recipients of mailing A will be reset to whole target group and mailing B and C will receive due percentage of that group, **without removing the recipients they already got in previous submit**, hence duplicate sendings. That one can be even worse when the error is a deadlock, and the query is retried.
I *think* that making all 4 steps happen in a single DB transaction would solve all the problems I mention here.
Would that be a good approach? If so, does it make sense to put the whole function in a transaction regardless of the target status, or shall the function be re-organised a bit to have the status setting done in the case statement and make only the `Testing` use case atomic?
With those answers, I'm happy to work on a PR.https://lab.civicrm.org/dev/core/-/issues/88Make sure financial_type_id is set when a contribution is created2018-06-18T20:13:30Zmattwiremjw@mjwconsult.co.ukMake sure financial_type_id is set when a contribution is createdOverview
----------------------------------------
When a contribution is created via a contribution page (with a confirmation page) the parameter `financial_type_id` is not set if the contribution is not being created with a recurring co...Overview
----------------------------------------
When a contribution is created via a contribution page (with a confirmation page) the parameter `financial_type_id` is not set if the contribution is not being created with a recurring contribution.
PR: https://github.com/civicrm/civicrm-core/pull/11907
Before
----------------------------------------
`financial_type_id` is not set when a non-recurring contribution is submitted via a contribution page (with a confirmation page). But it is set when a recurring contribution is being created at the same time.
After
----------------------------------------
`financial_type_id` is always set for contribution params when submitted via a contribution page (with a confirmation page).
This makes it more consistent for use in payment processor extensions etc.5.4.0https://lab.civicrm.org/dev/core/-/issues/1567Make sure mailing titles are always rendered properly2023-02-09T05:03:28ZyashodhaMake sure mailing titles are always rendered properlyMake sure mailing titles are always rendered properly so that 'TITLE' is replaced by mail subject when viewing the mailing public link.Make sure mailing titles are always rendered properly so that 'TITLE' is replaced by mail subject when viewing the mailing public link.yashodhayashodhahttps://lab.civicrm.org/dev/core/-/issues/952Make the "redirect back to event info page" a configurable link on the event ...2023-04-21T05:03:27ZJamie Novick - CompucoMake the "redirect back to event info page" a configurable link on the event configuration**Use case:**
In many situations organisations may wish to use CiviEvent with their CMS. In those situations often a CMS content page is presented to the public as the event information page rather then the default CiviCRM event informa...**Use case:**
In many situations organisations may wish to use CiviEvent with their CMS. In those situations often a CMS content page is presented to the public as the event information page rather then the default CiviCRM event information page (often as it is easier to style). Some links back to the event information page are hardcoded however and it would be preferable if they were configurable.
**How it works currently:**
Whenever you:
- Complete a registration
- If you return to an event that you have already registered for and chose not to register a further participant
you will be offered a link back to the CiviCRM event information page.
**How it should (could 😉) work:**
Add a configuration option on the Online registration tab of the event with label:
"Specify a different event information page"
Type: Checkbox
Help text: "CiviCRM by default will create an event information page with basic details of the event for any event which allows online registration. Users are presented with a link to this page when participants complete their registration, or if they have already registered for an event. If you wish to provide a different link to users then you can enter a different link here."
Label: External event information page link
Type: Text (single line)https://lab.civicrm.org/dev/core/-/issues/1039Make the contact summary details popup on merge screen non bold a la contact ...2019-06-18T04:19:18ZseamusleeMake the contact summary details popup on merge screen non bold a la contact summary screenWhen on a contact merge screen there is now ability to mouse over and see the basic information popup like you see on search results or on a contact summary screen when you mouse over a person icon. The difference in the merge screen is ...When on a contact merge screen there is now ability to mouse over and see the basic information popup like you see on search results or on a contact summary screen when you mouse over a person icon. The difference in the merge screen is that it gets bolded content rather than normal text as it is in a header row of a table and the css is inheriting from the header row5.16.0seamusleeseamusleehttps://lab.civicrm.org/dev/core/-/issues/3479make the hook usable by passing the sql2024-02-04T05:03:25Zyashodhamake the hook usable by passing the sqlCurrently, we are not passing the sql in the _alterReportVar_ hook.
`CRM_Utils_Hook::alterReportVar('sql', $this, $this);`
Objective is to make the hook usable by passing the sql instead of redundant params.Currently, we are not passing the sql in the _alterReportVar_ hook.
`CRM_Utils_Hook::alterReportVar('sql', $this, $this);`
Objective is to make the hook usable by passing the sql instead of redundant params.yashodhayashodhahttps://lab.civicrm.org/dev/core/-/issues/1022Manage Case search filter "Deleted Activities" no longer working2023-07-11T16:09:44ZDaveDManage Case search filter "Deleted Activities" no longer workingOn manage case expand the search filters section just above the activities. There's a checkbox there to show deleted activities. It's no longer working. I think I can see the problem - will make a PR.On manage case expand the search filters section just above the activities. There's a checkbox there to show deleted activities. It's no longer working. I think I can see the problem - will make a PR.yashodhayashodhahttps://lab.civicrm.org/dev/core/-/issues/2542Manage Events - Configure options have class disabled if no settings entered ...2023-05-30T22:24:47ZlarsssandergreenManage Events - Configure options have class disabled if no settings entered - causes Bootstrap issuesOn the Manage Events page, the Configure drop down options have class .disabled or .enabled depending on if any settings have been set for the specific option. Normally, all this does is make the option grey, but still clickable. But if ...On the Manage Events page, the Configure drop down options have class .disabled or .enabled depending on if any settings have been set for the specific option. Normally, all this does is make the option grey, but still clickable. But if Bootstrap is in play (i.e. using Shoreditch), then .disabled makes the link unclickable with no cursor change on hover. I looked at changing this in Shoreditch, but I wonder if it makes more sense to change in Core. After all, the link is not actually disabled, so maybe the disabled class is not appropriate here. Is there another class already in use that might make sense or is would it make sense to add a new class that just makes these links grey? Is disabled in use elsewhere for the same purpose?https://lab.civicrm.org/dev/core/-/issues/3171Manage Extensions - Hide nag for core exts2022-04-15T01:25:16ZtottenManage Extensions - Hide nag for core extsOverview
----------------------------------------
The "Manage Extensions" screen has a nag about whether to trust extensions. It should be toggled (or at least rephrased) for core extensions.
This issue is based on [MM comment/observat...Overview
----------------------------------------
The "Manage Extensions" screen has a nag about whether to trust extensions. It should be toggled (or at least rephrased) for core extensions.
This issue is based on [MM comment/observation](https://chat.civicrm.org/civicrm/pl/96c4howrttyetk8d45at78uesr) from @colemanw
Example use-case
----------------------------------------
1. Navigate to "Administer => System Settings => Extensions"
1. Choose "Install" for any core extension
Current behaviour
----------------------------------------
The screen shows this message:
> Installing this extension will provide you with new functionality.<br/>
> Please make sure that the extension you're installing comes from a trusted source. <br/>
> Do you want to continue?
Proposed behaviour
----------------------------------------
If the extension lives in `civicrm-core` (or specifically the [civiroot extension dir](https://github.com/civicrm/civicrm-core/blob/5.48/CRM/Extension/System.php#L118-L123)), then either:
* Just show first+third sentences. (Skip the middle sentence.)
* Don't show the warning