CiviCRM Core issueshttps://lab.civicrm.org/dev/core/-/issues2019-11-24T06:08:52Zhttps://lab.civicrm.org/dev/core/-/issues/892Replace Bower2019-11-24T06:08:52ZJKingsnorthReplace BowerCiviCRM uses Bower for (some) javascript package management.
However, even the Bower suggested migrating away from Bower.
It would be good to also use a tool that supports 'patch' management of projects, in a similar way to Composer?CiviCRM uses Bower for (some) javascript package management.
However, even the Bower suggested migrating away from Bower.
It would be good to also use a tool that supports 'patch' management of projects, in a similar way to Composer?https://lab.civicrm.org/dev/core/-/issues/3575regression (unreleased I think)2022-06-11T14:54:36Zeileenregression (unreleased I think)Sites with CiviMember disabled cannot create relations
Issue is getContactMembershipCount now checks permissions but on sites with civimember disabled the required permissions will not be held
This regressed due to recent changes in th...Sites with CiviMember disabled cannot create relations
Issue is getContactMembershipCount now checks permissions but on sites with civimember disabled the required permissions will not be held
This regressed due to recent changes in this function but I think the fix is not to call it when civimember is disabled5.35.0https://lab.civicrm.org/dev/core/-/issues/3284APIv4 Query Improvements2022-04-22T15:53:45Zjoshjosh@civicrm.orgAPIv4 Query ImprovementsThis project will expand the query language of APIv4 to increase functionality. Implementing this will enhance the capabilities of APIv4-based Smart Groups; without this their utility will be limited to simple queries. This is also a pre...This project will expand the query language of APIv4 to increase functionality. Implementing this will enhance the capabilities of APIv4-based Smart Groups; without this their utility will be limited to simple queries. This is also a prerequisite to the Search Builder UI project.
Tasks:
- Implement Having, Group By parameters.
- Enable use of SQL Functions like SUM().
- Implement explicit joins.
- Implement a way to add subquery expressions to an API call.
Related pull-requests:
* [#16947 - Support GROUP BY and aggregate functions](https://github.com/civicrm/civicrm-core/pull/16947) (merged)
* [#17047 - Api4 Explorer: Support SQL functions and HAVING clause ](https://github.com/civicrm/civicrm-core/pull/17047) (merged)colemanwcolemanw2020-06-30https://lab.civicrm.org/dev/core/-/issues/2455league/csv package a bit of a booby trap in waiting2023-07-06T05:03:19Zeileenleague/csv package a bit of a booby trap in waitingWe currently have v9.3 of csv/league on our wmf code and 9.2 in our civi code and have no issues - however we recently tried 9.6 in our CI and found it crashes when co-existing with 9.2 which civi has - due to this removal
https://githu...We currently have v9.3 of csv/league on our wmf code and 9.2 in our civi code and have no issues - however we recently tried 9.6 in our CI and found it crashes when co-existing with 9.2 which civi has - due to this removal
https://github.com/thephpleague/csv/commit/bbfb63b6c4df045353f095f842942038a529f69a#diff-fe65dcdace9cc44252b537bee79dd574edd1bccf6cee646cc860006a6ec50e8bL119
Although we have no specific reason to update to 9.6 at this stage we can assume that some WP sites might in the nearish future and I think we could mitigate the iminent pain by upgrading civi to a patched version of 9.6 that puts that function back & hence gets us past the transitional wobbles (we can unpatch later on)https://lab.civicrm.org/dev/core/-/issues/893Print Merge document from case search doesn't file on correct contact.2019-10-29T19:27:12ZRayWrightPrint Merge document from case search doesn't file on correct contact.With Record generated letters set to "Multiple activities (one per contact)" when you print/merge documents, they don't file on the correct contact.
Replicated on dmaster - Search for all cases (I created 3 random dummy cases) select a...With Record generated letters set to "Multiple activities (one per contact)" when you print/merge documents, they don't file on the correct contact.
Replicated on dmaster - Search for all cases (I created 3 random dummy cases) select all and then Print/merge document. I tested with a token in the letter so I could tell in what order the letters were being generated. The letters are generated in case ID order but they are filed in the order your search screen was last sorted.
For example, the letters are issued in this order:
* Case 1 - Lawrence Ivanov
* Case 2 - Carlos Jacobs
* Case 3 - Sanford Blackwell
But, the default sort if alpha by contact last name:
* Sanford Blackwell (gets Lawrence Ivanov's - case 1 activity)
* Lawrence Ivanov (gets Carlos Jacob's - case 2 activity)
* Carlos Jacobs (gets Sanford Blackwell's - case 3 activity)
![act02-printmergedoc](/uploads/0acbc34d41abfd3f09654dac4d808139/act02-printmergedoc.png)
![act03-incorrectcontact](/uploads/03e8d5b8daa9ec3096728a89f862b7cd/act03-incorrectcontact.png)5.20.0RayWrightRayWrighthttps://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/3243Search Builder UI2022-04-22T15:52:31Zjoshjosh@civicrm.orgSearch Builder UIThis project will create a unified interface that replaces the current Advanced Search and Search Builder forms. This requires the APIv4 Query Improvements project to be done (or at least underway). This is a prerequisite to the Form-Bui...This project will create a unified interface that replaces the current Advanced Search and Search Builder forms. This requires the APIv4 Query Improvements project to be done (or at least underway). This is a prerequisite to the Form-Builder-based reports and custom searches projects.
The mockup for this interface is available at the bottom of https://lab.civicrm.org/dev/report/-/wikis/Search-Builder-Overhaul
Tasks:
- Selection of base table + joins
- Drag-n-drop nested and/or where clauses supporting all fields and operators
- Controls for grouping and sorting
- Display and paging of search results
- Configurable output columns with drag-n-droppable table headers
- Selection of actions to act upon output rows (e.g. “Add Tags”)
- Button to save query as APIv4-based smart group.colemanwcolemanw2020-06-30https://lab.civicrm.org/dev/core/-/issues/894Cannot change event selections to remove price field in price set when sold out2021-05-08T20:35:07ZlarsssandergreenCannot change event selections to remove price field in price set when sold outWhen using a price set for an event registration with a max participants limit for a specific price field, once that price field reaches the limit, it isn't possible to remove the contact from that price set field from the backend. It ju...When using a price set for an event registration with a max participants limit for a specific price field, once that price field reaches the limit, it isn't possible to remove the contact from that price set field from the backend. It just shows sold out and doesn't allow you to remove the contact. This works the same if it is a checkbox or numerical value, etc.
![Screen_Shot_2019-04-23_at_11.57.29_AM](/uploads/14d6428be73966900887d265edee82ef/Screen_Shot_2019-04-23_at_11.57.29_AM.png)
Presumably, this is to prevent contacts being added to sold out events, but it should be possible to **remove** them from sold out events. The price field should only be disabled if the contact isn't registered for it. It should be enabled if the contact is registered, so that it can be removed. This would be more complex in the case of numerical value fields, but this would at least fix the issue for checkboxes, radio selects, etc.
Tested on demo on Drupal (5.14.alpha1) and 5.7.4 on Drupal.https://lab.civicrm.org/dev/core/-/issues/3577Mailings are public even when set to "User and User Admin only"2022-06-11T14:54:38Ztimo.kabschMailings are public even when set to "User and User Admin only"This is a Incident, because confidential internal information is easily accessible by calling https://www.example.com/civicrm/mailing/view/?id=3&reset=1 with random mailing ids.
Environment:
- Wordpress 5.6.2, 5.7
- CiviCRM 5.35.0, 5.35...This is a Incident, because confidential internal information is easily accessible by calling https://www.example.com/civicrm/mailing/view/?id=3&reset=1 with random mailing ids.
Environment:
- Wordpress 5.6.2, 5.7
- CiviCRM 5.35.0, 5.35.1
- CiviMail Classic, CiviMail Mosaico
Precondition:
- A Mailing with id 3 is setup with Mailing Visibility set to "User and User Admin Only"
Action:
- Open a private browser tab without being logged in
- Call URL: https://www.example.com/civicrm/mailing/view/?id=3&reset=1
Expected behavior:
- The mailing is not accessible.
Actual behavior:
- The mailing is accessible.https://lab.civicrm.org/dev/core/-/issues/3214Query scheduling & delivered results2022-04-30T09:08:20Zjoshjosh@civicrm.orgQuery scheduling & delivered resultsThis project will allow APIv4 queries to run in the background and notify or deliver results when complete. It supplements the Search-Builder UI project, making complex searches more manageable.
Tasks:
- Add background options to Search...This project will allow APIv4 queries to run in the background and notify or deliver results when complete. It supplements the Search-Builder UI project, making complex searches more manageable.
Tasks:
- Add background options to Search-Builder UI
- Implement queue runner service
- Implement delivery servicecolemanwcolemanwhttps://lab.civicrm.org/dev/core/-/issues/895relationship contact selection lost on form validation2022-10-27T05:03:46Zlcdwebrelationship contact selection lost on form validationto reproduce:
1. go to a contact's relationship tab and click to create a new relationship
2. select a relationship type and select a contact
3. add an end date and start date where the end date is prior to the start date. this will ...to reproduce:
1. go to a contact's relationship tab and click to create a new relationship
2. select a relationship type and select a contact
3. add an end date and start date where the end date is prior to the start date. this will trigger a form validation error.
4. submit the form
The error is thrown but the previously selected contact is lost. An examination of the console shows that the value of the selected contact(s) is still present, but it doesn't appear in the UI and will throw a validation error if you try to resubmit the form.https://lab.civicrm.org/dev/core/-/issues/3649Token renders in message preview and test message, not in final sent message2022-06-11T14:58:16ZChrisHardieToken renders in message preview and test message, not in final sent messageI'm on CiviCRM 5.35.1 with WordPress 5.7. Today I used CiviMail for the first time to send a mailing to a group of contacts. I used some tokens (custom contact fields) that rendered fine in my "preview HTML" view and in the generated mes...I'm on CiviCRM 5.35.1 with WordPress 5.7. Today I used CiviMail for the first time to send a mailing to a group of contacts. I used some tokens (custom contact fields) that rendered fine in my "preview HTML" view and in the generated message when I sent a test email to myself. However, in the final sent message that went out to recipients, they were not rendered and instead displayed as `{contact.custom_10}` and `{contact.custom_9}`. Other tokens were rendered just fine. The only thing that seems different about these two is that they are custom fields, and that they were in a bolded line of text.
Is this something I've missed in our configuration? Let me know if you need any other information. Thank you.https://lab.civicrm.org/dev/core/-/issues/3266Form-Builder-Based Custom Searches2022-04-22T15:53:12Zjoshjosh@civicrm.orgForm-Builder-Based Custom SearchesThis project will allow user-friendly search screens to be built with the Search-Builder UI. Presently, custom searches must be implemented via PHP code. Prerequisite is the Search Builder UI report#32
Tasks:
- Integrate custom search s...This project will allow user-friendly search screens to be built with the Search-Builder UI. Presently, custom searches must be implemented via PHP code. Prerequisite is the Search Builder UI report#32
Tasks:
- Integrate custom search schema with Form Builder UI
- Implement API for creating custom searches
- Bridge legacy custom searches with the new systemcolemanwcolemanwhttps://lab.civicrm.org/dev/core/-/issues/896Closing a case gives a warning notice2019-05-28T03:44:53ZDaveDClosing a case gives a warning noticeI can reproduce on dmaster.demo:
Notice: Undefined index: updateLinkedCases in CRM_Case_Form_Activity_ChangeCaseStatus::beginPostProcess() (line 148 of /srv/buildkit/build/dmaster/sites/all/modules/civicrm/CRM/Case/Form/Activity/ChangeCa...I can reproduce on dmaster.demo:
Notice: Undefined index: updateLinkedCases in CRM_Case_Form_Activity_ChangeCaseStatus::beginPostProcess() (line 148 of /srv/buildkit/build/dmaster/sites/all/modules/civicrm/CRM/Case/Form/Activity/ChangeCaseStatus.php).
To reproduce create a Change Case Status activity that sets the case status to Resolved. It's not specific to "Resolved", e.g. if you re-open a case you also get the warning.
I can look into making a PR.https://lab.civicrm.org/dev/core/-/issues/3563Include optional unsubscribe group field on regular mailings2024-02-13T05:03:23ZlarsssandergreenInclude optional unsubscribe group field on regular mailingsWhen you create a mailing from search results, you are required to add an unsubscribe group. When you create a regular mailing and add groups to the recipients, you can't specify the unsubscribe group. Sometimes, it would be helpful to b...When you create a mailing from search results, you are required to add an unsubscribe group. When you create a regular mailing and add groups to the recipients, you can't specify the unsubscribe group. Sometimes, it would be helpful to be able to specify an unsubscribe group that is different than the group the contact is a member of. For instance, if you send a mailing to a few groups based on your main mailing list, perhaps a set of smart group that are subsets of the main list, you may want contacts to unsubscribe from your main list instead of the smart group.
Proposal: Add an optional unsubscribe group to all mailings. If it is blank, unsubscribes work as they do now. If it is populated, all recipients are unsubscribed from the unsubscribe group (exactly as this works for a mailing based on a search now).
EDIT: On @JoeMurray's suggestion, contacts would be unsubscribed from both the original group that are recipients of the mailing and the specified unsubscribe group.
I can give this a go if there is support for the concept.https://lab.civicrm.org/dev/core/-/issues/3265APIv4-Based Reports2022-04-22T15:53:11Zjoshjosh@civicrm.orgAPIv4-Based ReportsThis project will allow report templates to be built with the Search-Builder UI. Presently, report templates must be implemented via PHP code. Prerequisite is the Search-Builder UI report#32
Tasks:
- Integrate report schema with Form B...This project will allow report templates to be built with the Search-Builder UI. Presently, report templates must be implemented via PHP code. Prerequisite is the Search-Builder UI report#32
Tasks:
- Integrate report schema with Form Builder UI
- Re-implement report system with APIv4 backend
- Implement API for creating report templates
- Bridge legacy report templates with the new systemcolemanwcolemanwhttps://lab.civicrm.org/dev/core/-/issues/897New Individual screen overflows to the right on a stock Drupal install using ...2019-11-24T20:41:36ZDaveDNew Individual screen overflows to the right on a stock Drupal install using Bartik themeIt looks fine on dmaster.demo because it's using Garland, but for example all the PR test sites load up with Bartik.
See screenshot.
![screenshot](/uploads/632d186733e58f4d4bf955b1a8a8cc51/screenshot.png)It looks fine on dmaster.demo because it's using Garland, but for example all the PR test sites load up with Bartik.
See screenshot.
![screenshot](/uploads/632d186733e58f4d4bf955b1a8a8cc51/screenshot.png)https://lab.civicrm.org/dev/core/-/issues/3616Should tracking pixel be placed at start of email for when Gmail clips messages?2024-02-18T05:03:26ZlarsssandergreenShould tracking pixel be placed at start of email for when Gmail clips messages?With Mosaico templates, it isn't that difficult to reach Gmail's limit of 96-102kB with an email newsletter, after which your email message is clipped and not displayed in full. This is unfortunate in itself, but it also breaks open trac...With Mosaico templates, it isn't that difficult to reach Gmail's limit of 96-102kB with an email newsletter, after which your email message is clipped and not displayed in full. This is unfortunate in itself, but it also breaks open tracking as the tracking pixel is only embedded at the very end of the message and thus isn't fetched unless the reader clicks "View entire message".
Would it be worthwhile to consider putting the tracking pixel at the start of the message to avoid this issue? Obviously, less than ideal for those who don't display images, but I'm not sure how these two might balance out or if there is a clever way to have the best of both worlds.
I'd be happy to provide a patch, but not sure what the best way forward is here.
(Was a former Flexmailer issue, reposted here as I think this is still important.)https://lab.civicrm.org/dev/core/-/issues/3235WMF Search Discovery2022-04-22T15:51:38ZcolemanwWMF Search DiscoveryThe Core Team has been commissioned to improve Search & Reporting in CiviCRM.
* [Statement of Work](https://docs.google.com/document/d/1dG-aRyRs-pTHpd0XMoqsIhTRDNLQqFkUSzrZXLOb4AQ/edit?usp=sharing)
* [Analysis by Eileen](https://docs.g...The Core Team has been commissioned to improve Search & Reporting in CiviCRM.
* [Statement of Work](https://docs.google.com/document/d/1dG-aRyRs-pTHpd0XMoqsIhTRDNLQqFkUSzrZXLOb4AQ/edit?usp=sharing)
* [Analysis by Eileen](https://docs.google.com/document/d/1OyEXfGHq0s8MWxCqTz5bzdA5a86O4ad3bVefpEDKXuw/edit?usp=sharing)
* [A mental health plan for search](https://lab.civicrm.org/dev/report/-/issues/37)https://lab.civicrm.org/dev/core/-/issues/898incorrect Drupal 8 login URL2019-05-26T00:07:12Zjohnkincorrect Drupal 8 login URLIf you create a public contribution page on a Drupal 8 site, it will include a login link for unauthenticated users, with parameters `?destination=...` to direct back to the contribution page after login. This link is broken with recent ...If you create a public contribution page on a Drupal 8 site, it will include a login link for unauthenticated users, with parameters `?destination=...` to direct back to the contribution page after login. This link is broken with recent Drupal versions, because it needs to go to /user/login instead of just /user.
I have a fix in my branch; will post the PR.5.15.0https://lab.civicrm.org/dev/core/-/issues/2569afform - how to refresh display on submit2023-08-01T05:03:26Zeileenafform - how to refresh display on submitI'm not sure if this is a feature request of a documentation request but I seem close to having configuration & display working via afform & search kit for my custom entity 'Monolog' 'out of the box'.
eg git clone https://github.com/ei...I'm not sure if this is a feature request of a documentation request but I seem close to having configuration & display working via afform & search kit for my custom entity 'Monolog' 'out of the box'.
eg git clone https://github.com/eileenmcnaughton/monolog.git
enable & go to
civicrm/monolog
You can see I have a display of configured monologs below a form that allows you to add a new monolog. What I'd like is that the bottom display refreshes once the first is submitted
![image](/uploads/677229d37558e2fca0d18224378f3bc9/image.png)
@totten @colemanwhttps://lab.civicrm.org/dev/core/-/issues/2567Afform - how to edit not obvious2022-03-17T02:43:51ZeileenAfform - how to edit not obviousAfter several attempts I'm still completely mystified as to how to create a simple afform and open in edit mode for a contact. I have tried on demo.dmaster.civicrm.org creating a basic individual form but cannot figure out how to add an ...After several attempts I'm still completely mystified as to how to create a simple afform and open in edit mode for a contact. I have tried on demo.dmaster.civicrm.org creating a basic individual form but cannot figure out how to add an id to the url
The biggest part of this is there is no documentation.
However I suspect this should be addressed with notes / links in the UI as well
@colemanw @totten @MikeyMJCO @seamusleecolemanwcolemanwhttps://lab.civicrm.org/dev/core/-/issues/3615<link> URLs are tracked and shouldn't be2022-06-13T09:15:05Zlarsssandergreen<link> URLs are tracked and shouldn't beIf you use <link href=URL> in a mailing template, for example to load a webfont, that URL is converted to a tracked URL. Presumably it shouldn't be as this makes a mess of the clickthrough statistics (every one of these links will be cou...If you use <link href=URL> in a mailing template, for example to load a webfont, that URL is converted to a tracked URL. Presumably it shouldn't be as this makes a mess of the clickthrough statistics (every one of these links will be counted as clicked as long as the user's mail client fetches the resource). In other words, a link being fetched in a not a click and shouldn't be counted as one.
Do we need to track any URLs that aren't inside an <a> tag? It might be easier to limit to <a... rather than trying to exclude <link.... The only valid way to write an <a> is with the tag right after the <, so I think we could just look for <a instead of <.
I can provide a patch if this approach is supported.https://lab.civicrm.org/dev/core/-/issues/3275A mental health plan for search2022-04-22T15:53:29ZeileenA mental health plan for searchI've been thinking a lot about how to move forwards with search functionality of late. When I think about the sorts of bugs and regressions we were dealing with 2 years ago versus today there are a lot of areas of the code that were cons...I've been thinking a lot about how to move forwards with search functionality of late. When I think about the sorts of bugs and regressions we were dealing with 2 years ago versus today there are a lot of areas of the code that were constantly breaking or requiring changes 2 years ago that we now rarely touch. We have added barrage of unit tests & retrofitted sanity into the code & eventually reached the end of the line on the whackamole in a lot of areas. Not so much searches & reports....
Part of the problem is that we were late to the party getting searches and reports under unit testing - or at least some of the more obscure search functionality. But much more of the problem is the poor underlying code structure for searches and the in-built reports. In addition search builder and advanced search expose much more functionality than actually works well - creating a back door for new tricky functionality. Compounding this, the original search code had a lot of security holes in it which have sent us into various cycles of whackamole.
When we talk about search people want to
- be able to retrieve data
- take actions on that data
- create groups based on the data
In many cases they can use a report or some custom form to retrieve a group of contacts but then they can't take the actions they want on those contacts. In particular it's currently impossible to create a smart group or utilise our bank of actions without working off the search framework. The problem with getting away from our quickform search structure is that we have a lot of assets tied up with it and so creating a non-quickform search quickly runs into the fact that various actions cannot be accessed and the lift involved in getting past that is too much - so we wind up with 'yet another custom search' or another change to core to bad code.
I don't think we can break the situation where we are spending a tonne of sunk time on search functionality in the short-term. I think adding thises & thats to search & custom searches and reports will continue at least for another year. The [data processor extension](https://lab.civicrm.org/extensions/dataprocessor/tree/master) by @jaapjansma does a pretty good of retrofitting sanity onto the quickform search structure, but I think we should set a goal that in a year's time quickform search structure and BAO_Query object are out of active development and there is a viable alternative.
We already have a pretty good alternative for retrieving the data - apiv4. When you look at apiv4 explorer if 'feels like' all you need to turn that into a replacement for search builder is a 'create smart group function'
Many of the things that work badly in search builder already work well in the apiv4 explorer but it is missing the ability to leverage our 'action-bank'. Going down the apiv4-as-smart-groups path also sets us up to offer the ability to have custom apiv4 apis that can also create smart groups and leverage actions.
That was a pretty long intro but the point of this ticket was more to spell out a path that I think allows us to start chipping away at this and to divert some of our 'product maintenance effort' towards breaking the cycle. These are the steps I think need taking (not necessarily in this order). Any of the steps, but in particular 3 & 4 would be suitable as funded CT work & that would speed them up & this whole process considerably, but I think there are things we can be doing now towards the end result.
1) create the ability to programaticially create a smart group based on an apiv4 explorer 'get' action. I think this is actually not that tricky. We would need to define the format of the array saved to 'form_values' - something like ['module' => 'apiv4', 'entity' => 'x', 'where' => [], 'select' => [], 'orderBy => []]. Perhaps ->createSavedSearch() would be an action that can be taken from apiv4? We would need to hobble UI functionality related to the smart group that might not work - ie suppress actions that don't work & the 'edit smart group search criteria' link in the group settings page - we can be a bit clunky on this in this step since it would not be exposed unless a developer exposed it. I feel like this step is pretty manageable & could be done in the next couple of releases. Since I think we should start on this I have created https://lab.civicrm.org/dev/core/issues/1107 for specific discussion on this issue
2) consider extending the above to cover other api actions - we talked about the idea of it being possible to create a smart group off a report. This is mostly a conversation about what sort of api an extension needs to create for it to be available for a saved search & what metadata is required. It would also involved creating a protocol to configure a url for 'edit smart group search criteria'. This could be done in conjunction with making smart groups possible from extended reports via an apiv4 action as experimental functionality. I don't see this as ever being a feature in core reports as I hope that by the time we've matured all of this we'll be figuring out how to leave them behind, but it seems like a way of opening up the transition process to leaping by extension.
3) tackle the search actions - figure out how to make them less tied to the QF architecture they sit on - could they be apis? Or just a much more sensible php interface? This is probably the deeper dive of this work and it might be a big lift but I also feel it's the sort of thing that we routinely chip away at in the product maintenance sphere & we could do that here. I suspect @mattwire has more idea than I do of that code at the moment...
4) Copy & adapt (or extract & componentise) the api v4 explorer to be search oriented. Mostly tie the search part of the interface with an action selector. Alternatively look at something like https://querybuilder.js.org/ - I feel like this piece is something CT should do as a dedicated chunk of work & which could be done at any point in the process by soliciting funding.
@totten @mattwire @colemanw @seamuslee @jitendra @monish.deb @pradeep @yashodha @bgm @lcdweb @johntwyman @mfb @pfigel @DaveD @justinfreemanhttps://lab.civicrm.org/dev/core/-/issues/899PCP is still active after contribution page is disabled.2023-11-15T05:03:17ZjitendraPCP is still active after contribution page is disabled.To replicate -
- Create a contribution page and enable PCP.
- User makes a donation from the live page and creates a PCP of his own.
- When an admin approves the PCP, a notification email is sent to the creator.
- Disable the Contributi...To replicate -
- Create a contribution page and enable PCP.
- User makes a donation from the live page and creates a PCP of his own.
- When an admin approves the PCP, a notification email is sent to the creator.
- Disable the Contribution page.
- PCP is kept as it is.
- When the live page is visited by the promoter or the user from the PCP link, a yellow message is displayed on the page
![image](/uploads/0b1710ed1f37bcce8b9b4d9c1779ee85/image.png)
Real problem seems to be - you have someone who has made a P2P contribution page who might have no clue the page has been disabled by a site admin and is out promoting the page!
Thoughts on expected behavior? @eileen @KarinG...
- Disable PCP when CP is disabled.
- Keep PCP as it is and change the error message on PCP load.
- Disable the PCP and send an email notification to the creator.
- The current error is perhaps the correct and enough response to be shown to the user :shrug:jitendrajitendrahttps://lab.civicrm.org/dev/core/-/issues/3211Country and State criteria disappear when editing smart group2023-12-23T05:03:23Zm robimorgan@palantetech.coopCountry and State criteria disappear when editing smart groupSteps to replicate:
* Run advanced search with Country + State (I used United States + Texas)
* Create smart group with the results
* View contacts in smart group, select "Edit Smart Group Criteria"
* United States + Texas are not popula...Steps to replicate:
* Run advanced search with Country + State (I used United States + Texas)
* Create smart group with the results
* View contacts in smart group, select "Edit Smart Group Criteria"
* United States + Texas are not populated on the search form.
Notes
* Replicated on wpmaster and dmaster
* Noticed the issue in a Wordpress site on 5.19.4
* The issue is also affecting existing smart groups.
* The groups themselves remain functional.
* Other address and other search criteria are saved. Just the country, and fields that depend on the country to be populated, are cleared.https://lab.civicrm.org/dev/core/-/issues/900Unselecting Premium doesn't hide Minimum Contribution Amount2022-10-26T05:03:43ZyashodhaUnselecting Premium doesn't hide Minimum Contribution AmountSteps to replicate :
* Go to Contribution form.
* Select *Premium* and *Minimum Contribution Amount* will appear.
* Unselect the *Premium* and Minimum Contribution Amount element is still showing on the form.
Suppress *Minimum Contribu...Steps to replicate :
* Go to Contribution form.
* Select *Premium* and *Minimum Contribution Amount* will appear.
* Unselect the *Premium* and Minimum Contribution Amount element is still showing on the form.
Suppress *Minimum Contribution Amount* when Premium has been un-selectedyashodhayashodhahttps://lab.civicrm.org/dev/core/-/issues/3195Exporting "Spouse of" or other relationship with matching labels only exports...2023-12-17T05:03:31ZtommyboboExporting "Spouse of" or other relationship with matching labels only exports the A>B relationshipWhen exporting a contact and their related contacts, the relationship type dropdown truncates all the "duplicate" relationship labels. So when you a user selects "Spouse Of" it only exports the A>B relationship.
If you were to export Jo...When exporting a contact and their related contacts, the relationship type dropdown truncates all the "duplicate" relationship labels. So when you a user selects "Spouse Of" it only exports the A>B relationship.
If you were to export John Doe(A) and James Doe(B), who are spouses, the export would be rendered as
| First | Last | Spouse of First | Spouse of Last |
| ------ | ------ | ------ | ------ |
| John | Doe | James | Doe |
| James | Doe | | |
This is an issue if you are trying to export a list of donors and spouses. If the primary donor is the B spouse you will end up with no spouse exported.
This appears to be an old issue.
https://civicrm.stackexchange.com/questions/27001/exporting-spouses-only-exports-one-side-of-relationshiphttps://lab.civicrm.org/dev/core/-/issues/901On Behalf Contributions should soft credit individual2022-10-28T05:03:33ZtommyboboOn Behalf Contributions should soft credit individualCurrently the only connections between a Individual and the Organization in an On Behalf Contribution is a permissioned relationship is created. This is difficult to track and report on especially when Organization have multiple relation...Currently the only connections between a Individual and the Organization in an On Behalf Contribution is a permissioned relationship is created. This is difficult to track and report on especially when Organization have multiple relationships.
A soft credit to the individual is the best way aid in reporting on who initiated the contribution.https://lab.civicrm.org/dev/core/-/issues/3238Graphs on Contribution Summary report replace final row with grand total value2022-04-22T15:51:46ZAndrew WestGraphs on Contribution Summary report replace final row with grand total valueGraphs on the Contribution Summary report will include the grand total in some circumstances. To replicate on demo site:
1. Using demo data, launch the Contribution Summary report
2. Leave all settings as default
3. Refresh results a...Graphs on the Contribution Summary report will include the grand total in some circumstances. To replicate on demo site:
1. Using demo data, launch the Contribution Summary report
2. Leave all settings as default
3. Refresh results and note the grand total. Current data shows this:
![Annotation_2020-05-20_211434](/uploads/17d1b5942dde265bf0076d857396e46b/Annotation_2020-05-20_211434.png)
4. Switch to a bar chart in the top right and click 'View'. Hover over the final column and you'll see it's the grand total number:
![barchart](/uploads/3454788b2eecfc7ea4b8d44538b371d6/barchart.png)
I'm not terribly familiar with reports, but my initial fix was to add this to the top of CRM_Report_Form_Contribute_Summary::buildChart()
if ($this->_rollup) {
array_pop($rows);
}
If this makes sense I can make it a PR.5.28.0https://lab.civicrm.org/dev/core/-/issues/902KAM keyboard shortcuts2024-03-28T15:46:04ZJoeMurrayKAM keyboard shortcutsAlthough there had been extensive testing of the KAM extension keyboard shortcuts (https://lab.civicrm.org/dev/accessibility/issues/1#note_11279), I'm not sure how extensive it was of the integration into core. This is a list of items th...Although there had been extensive testing of the KAM extension keyboard shortcuts (https://lab.civicrm.org/dev/accessibility/issues/1#note_11279), I'm not sure how extensive it was of the integration into core. This is a list of items that are needed to make the menu accessible according to WCAG 2.0 AA, so far as I can determine from various sites that provide suggestions on implementations for compliant menus, mainklyt WAI tutorials.
* [ ] The menu should receive the tab focus first, before other page elements. Currently, one has to tab through other page elements before entering the menu. On wpmaster, it takes 4 tabs, on dmaster it takes 24 tabs in order to get to QuickSearch.
* [ ] When focus is in QuickSearch, tab incorrectly moves next to browser address line. It should move forward to the menu item represented by the CiviCRM icon (I don't know its name).
Previous notes from when tabbing worked in the menu:
* [ ] When on a menu item with submenu open, space and return as well as escape should close it. Not a priority, but behaviour seems to be non-standard.
* [ ] 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. Not a huge priority for usability.https://lab.civicrm.org/dev/core/-/issues/3200Contributions search result summary not correct2023-12-19T05:03:24ZhfarooqContributions search result summary not correctCMS: Drupal 7.69
CiviCRM: 5.21.3
If contributions with status complete and for "Contributions OR Soft Credits?" field, select "Both" (both contributions and soft credits), in result summary there is a discrepancy seen; Number of total r...CMS: Drupal 7.69
CiviCRM: 5.21.3
If contributions with status complete and for "Contributions OR Soft Credits?" field, select "Both" (both contributions and soft credits), in result summary there is a discrepancy seen; Number of total results does not match with the sum of total contributions and soft credits, please see attached screenshot. I was able to replicate it on [dmaster demo](https://dmaster.demo.civicrm.org/) site at some point back few days but not anymore.
![image](/uploads/655780b5f00f98abf880697baac2aa9c/image.png)https://lab.civicrm.org/dev/core/-/issues/903When adding activity, a double click submits twice2019-05-07T23:05:09ZlarynWhen adding activity, a double click submits twiceWhen adding an activity to a contact (e.g. a phone call), some users double click the submit button which ends up submitting the activity twice.When adding an activity to a contact (e.g. a phone call), some users double click the submit button which ends up submitting the activity twice.https://lab.civicrm.org/dev/core/-/issues/3263Only in WORDPRESS: REST.php ---> Unable to decode supplied JSON2022-04-22T15:53:06ZRTaglientoOnly in WORDPRESS: REST.php ---> Unable to decode supplied JSONThis is my first post for CiviCRM.
Hi to all.
I have seen others post related and nowadays the problem remain.
Different from this post:
https://civicrm.stackexchange.com/questions/6585/rest-api-unable-to-decode-supplied-json
- with...This is my first post for CiviCRM.
Hi to all.
I have seen others post related and nowadays the problem remain.
Different from this post:
https://civicrm.stackexchange.com/questions/6585/rest-api-unable-to-decode-supplied-json
- with wordpress I got always the same response "**Unable to decode supplied JSON**".
I tried clear installation with Joomla and also Backdrop, and both works correctly.
I am not a good programmer but I tried to do some stuff myself, here you what I prepared on my little server:
WordPress+CiviCRM with the problem: [link clear installation](http://144.91.105.68/cms/wordpress/wp-content/plugins/civicrm/civicrm/extern/rest.php?entity=Contact&action=get&api_key=a42bfc2b33cf13184711bff14fe1fb19&key=a42bfc2b33cf13184711bff14fe1fb19&json={%22sequential%22:1})
WordPress+CiviCRM fixed myself: [custom](http://144.91.105.68/cms/cust/wordpress/wp-content/plugins/civicrm/civicrm/extern/rest.php?entity=Contact&action=get&api_key=a42bfc2b33cf13184711bff14fe1fb19&key=a42bfc2b33cf13184711bff14fe1fb19&json={%22sequential%22:1})
Here you what I modified to the file REST.php...
after line 326
```php
if (array_key_exists('json', $requestParams) && $requestParams['json'][0] == "{") {
$params = json_decode($requestParams['json'], TRUE);
```
my modification start here
```php
$new_requestParams = $requestParams['json'];
$new_requestParams = str_replace("\\", "", $new_requestParams);
$new_requestParams = str_replace("\\", "", $new_requestParams);
$params = json_decode($new_requestParams, TRUE);
```
I practically saw a lot of "\\" before the JSON DECODE.
So removing this "\\" now works regularly.
If you wish can check directly on both sites:
Clear ----> http://144.91.105.68/cms/wordpress
Custom ---> http://144.91.105.68/cms/cust/wordpress
The user and password are both same: **admin** / **admin**
And also siteKey and api_key are always: **a42bfc2b33cf13184711bff14fe1fb19**
Regards Roberto T.
https://lab.civicrm.org/dev/core/-/issues/904PR 13333 breaks the Save and New button on a new case2019-05-07T23:05:09ZDaveDPR 13333 breaks the Save and New button on a new caseIf I take out the second "submitOnce" line in CRM/Case/Form/Activity/OpenCase.php then it works again.If I take out the second "submitOnce" line in CRM/Case/Form/Activity/OpenCase.php then it works again.5.13.0https://lab.civicrm.org/dev/core/-/issues/3260Icon in status message after saving a civireport is misleading2022-04-22T15:53:01ZDaveDIcon in status message after saving a civireport is misleadingIt's the 'alert' icon instead of success.
1. Go to any CiviReport.
1. From the Actions dropdown choose Save.
1. Icon indicates a warning but it's all good.
Also for "save a copy".It's the 'alert' icon instead of success.
1. Go to any CiviReport.
1. From the Actions dropdown choose Save.
1. Icon indicates a warning but it's all good.
Also for "save a copy".5.29.0https://lab.civicrm.org/dev/core/-/issues/905Better support in core for token payment processing2023-02-16T05:03:39ZeileenBetter support in core for token payment processingOver time token payments have become the preferred way of handling recurring payments. A while back we added the payment_token table for storage but we still have a situation where various processor extensions are solving the same proble...Over time token payments have become the preferred way of handling recurring payments. A while back we added the payment_token table for storage but we still have a situation where various processor extensions are solving the same problems separately (with varying degrees of maintainability). If we can converge on some improvements in core to better support this we can add tests in core & make the whole thing more reliable. Use of new methods would be recommended rather than required.
The focus here is on the regular scheduled job that finds recurring contributions that need to be charged, charges them and updates them in CiviCRM. I'm imagining we would add additional functions to the CRM_Core_Payment class that can be used and overridden by the various processors. We might visually separate them into a trait but I think it would be 'used' by CRM_Core_Payment.
The basic flow is
- getDuePayments
- preProcessDuePayments
- submitDuePaymentsToGateway
- updateSuccessfulPayments OR updateFailedPayments
Potentially status reporting - e.g emailing an administrator or logging to system log fits in at the end - I'm gonna leave that out of scope for now.
**Get Due Payments**
There are 2 types of payments here - those that are naturally due and those that are due to be retried due to previous failure. I think we should have 2 methods
- getDueScheduledPayments &
- getDueFailureRetryPayments
**Preprocess due payments**
Generally we create a pending contribution here (repeattransaction, status-pending)
We also attempt to 'lock' the recurring contribution so that it won't be retried the same day if the script fails or if there is a concurrent process. I'm imagining the functions to be
- createPendingTokenPayment
- lockRecurringContribution (more on this down below)
** Submit payments to gateway***
This generally uses 'doPayment'
** Update Successful Payments Update Failed Payment**
We call completetransaction for success & unlock the recurring contribution. Fails is the area we are trying to converge on
**Locking recurrings**
The main ways currently in use for 'locking recurrings' are to
- change the status on the recurring contribution
- add a pending contribution (& use the presence of that in a pending state as a blocker to further processing)
- push out the next_sched_contribution_date and failure_retry_date before starting so it won't be retried again before the schedule is due
After some thought I think we should do more with the status on the recurring contribution. My main reservation at the moment is that processors that use that method are overloading the 'Pending' status which actually means 'no payment yet received' - but I think that stems back to another design decision that I think was a mistake. Originally contribution, contribution_recur, pledge & pledge status were set up to share an option group. This causes a bunch of issues & hacky handling & as of now only contribution & contribution recur share statuses. I think we should separate them out into 2 option groups & then have some extra statuses that reflect the lock situation e.g
- 'Processing' - this would be our 'locked' status & nothing more would happen until that is resolved
- 'Failing' - this would mean one or more fails have happened but we haven't given up yet
This would mean that to be processed the next_sched_contribution_date needs to be now AND the status needs to not be 'Processing' OR the status needs to be 'Failing' and the failure_retry_date needs to be now.
Note that separating out the option group also addresses some other issues so I will likely do it in a 'numbers are all still the same' way sooner rather than later and we will be in a better position later.
**Unlocking recurring**
Success is easy - we just complete the transaction & push next_sched_contribution_date & null our failure_count & failure_retry_date
Failure is hard. The fails could be
- script does not complete. In this case the contribution is left in the 'Processing' status - in some cases people will manually intervene here and in some cases audit information from the processor will update the recurring. However, if, after a month it is still in Processing then it should be tried again. This feels like the case for pushing out next_sched_contribution_date BEFORE attempting payment
- payment fails with a temporary error related to the server (server says come back later)
- payment fails with a temporary error related to the user (card is overdrawn)
- payment fails with a permanent error (card is cancelled, stolen)
- payment fails with a permanent user error because they have cancelled the token at the gateway
Generally in a temporary error we will try again (using the failure_retry_date) and in a permanent error we will cancel the recurring contribution, in the case of the user-cancel it might make more sense for some sites to set it to completed....
**Next steps**
Overall I think if we start to get to some agreed additional functionality to support in core / add to the interface & keep tested that is a good thing. I feel like I need to ponder it for a bit & this will be an ongoing thing. But there are 2 things I think are worth doing now
1) add 4 new exception classes to core (all extending PaymentProcessorException)
- PermanentTokenPaymentException
- TemporaryServerTokenPaymentException
- TemporaryUserTokenPaymentException
- TokenCancelledByUserException
2) create a new contribution_recur_status_id option group - ensure the values exactly match the contribution option group & chip away at updating the various code places to use it (they should still work if using the old one as the numbers will be the same - this is how we managed it on pledges)
Initial discussion at https://github.com/iATSPayments/com.iatspayments.civicrm/pull/273
"Related" issues:
* https://lab.civicrm.org/dev/financial/issues/57
* https://lab.civicrm.org/dev/financial/issues/53
EDIT NOTE - 'Being processed' has been updated in this test to 'Processing' - since that was what was agreed. Comments below may be confusing without realising the text used to refer to Being Processedhttps://lab.civicrm.org/dev/core/-/issues/3259Add the possibility to use the hook_civicrm_alterReportVar('sql') in all reports2022-04-22T15:53:00ZrubofvilAdd the possibility to use the hook_civicrm_alterReportVar('sql') in all reportsSome reports have rewrited the method "buildQuery" from class CRM_Report_Form. Not in all reports is included the line to launch the hook `hook_civicrm_alterReportVar` -> `CRM_Utils_Hook::alterReportVar('sql', $this, $this);`
Example
h...Some reports have rewrited the method "buildQuery" from class CRM_Report_Form. Not in all reports is included the line to launch the hook `hook_civicrm_alterReportVar` -> `CRM_Utils_Hook::alterReportVar('sql', $this, $this);`
Example
https://github.com/civicrm/civicrm-core/blob/abc4afe890add20796585a2a997bc3d832815abe/CRM/Report/Form/Member/ContributionDetail.php#L552https://lab.civicrm.org/dev/core/-/issues/906Views not created when enabling logging in multi language site2022-11-02T05:03:41ZalainbViews not created when enabling logging in multi language siteWhen you enable logging, a table called log_TABLE_NAME is created for every table.
But in a multi language environment, the views log_TABLE_NAME_en_US, log_TABLE_NAME_fr_FR... should be created as well.
I noticed errors like "nativecode...When you enable logging, a table called log_TABLE_NAME is created for every table.
But in a multi language environment, the views log_TABLE_NAME_en_US, log_TABLE_NAME_fr_FR... should be created as well.
I noticed errors like "nativecode=1146 ** Table 'log_civicrm_group_nl_NL' doesn't exist" in ConfigAndLog log files.
By creating these views manually, the error disappeared.
This bug affects all versions of CiviCRM, I guess.https://lab.civicrm.org/dev/core/-/issues/3280Ability to Search Smart or Normal Group using additional filter on Manage Gro...2022-04-22T15:53:39ZsunilAbility to Search Smart or Normal Group using additional filter on Manage Group pageAbility to Search Smart or Normal Group using additional filter on Manage Group page
Overview
----------------------------------------
Ability Search Smart or Normal Group using additional filter on Manage Group page
Before
-----------...Ability to Search Smart or Normal Group using additional filter on Manage Group page
Overview
----------------------------------------
Ability Search Smart or Normal Group using additional filter on Manage Group page
Before
----------------------------------------
There was not filter to show only Smart Group or Normal Group
After
----------------------------------------
There is Filter with Select Option : Normal Group, Smart Group
PR : https://github.com/civicrm/civicrm-core/pull/18246https://lab.civicrm.org/dev/core/-/issues/907[php 7.2 support] deprecation notice in cli.clas2019-04-30T09:24:54Zeileen[php 7.2 support] deprecation notice in cli.clasThis won't cause any issues but gives a deprecation notice & needs fixing
PHP Deprecated: The each() function is deprecated. This message will be suppressed on further calls in
/home/kaiva276/menscommission.in/wp-content/plugins/civi...This won't cause any issues but gives a deprecation notice & needs fixing
PHP Deprecated: The each() function is deprecated. This message will be suppressed on further calls in
/home/kaiva276/menscommission.in/wp-content/plugins/civicrm/civicrm/bin/cli.class.php
(row appears to have changed as that is 5.10)
https://github.com/civicrm/civicrm-core/blob/62bf1e4237e6332b29aace76c1c5fbaf8a52bdff/bin/cli.class.php#L1495.13.0https://lab.civicrm.org/dev/core/-/issues/3257REST api error after upgrade to 5.28.32022-04-22T15:52:57ZRTaglientoREST api error after upgrade to 5.28.3Hi,
I updated wordpress to 5.5 and CiviCRM to 5.28.3 and I am getting a new strange error on rest api.
It work correctly with XML format
[OK](https://www.yogapause.it/civicenter/wp-json/civicrm/v3/rest?entity=Contact&action=get&api_...Hi,
I updated wordpress to 5.5 and CiviCRM to 5.28.3 and I am getting a new strange error on rest api.
It work correctly with XML format
[OK](https://www.yogapause.it/civicenter/wp-json/civicrm/v3/rest?entity=Contact&action=get&api_key=YWpYNlhWYUR4bWhsaTl1OVJ0cGVL&key=6d8984d9bc0f9c2c7121db065e094e51)
[same URL with only "&json={"sequential":1}"](https://www.yogapause.it/civicenter/wp-json/civicrm/v3/rest?entity=Contact&action=get&api_key=YWpYNlhWYUR4bWhsaTl1OVJ0cGVL&key=6d8984d9bc0f9c2c7121db065e094e51&json={%22sequential%22:1})
I got this error:
**{"code":"rest_invalid_param","message":"Parametro(i) non valido(i): json","data":{"status":400,"params":{"json":"json non \u00e8 del tipo integer."}}}**
in english must be somthing like
**{"code":"rest_invalid_param","message":"Parameter(i) not valid(i): json","data":{"status":400,"params":{"json":"json is not an integer type."}}}**
Using the parameter json=1 works, but I use the chain query mode :/
[adding "&json=1&id=2&return=email" works](https://www.yogapause.it/civicenter/wp-json/civicrm/v3/rest?entity=Contact&action=get&api_key=dDA4VjROSkpLWm9EU0hIbFFyaHBj&key=6d8984d9bc0f9c2c7121db065e094e51&json=1&id=2&return=email)
May you check what's going on?https://lab.civicrm.org/dev/core/-/issues/908CiviCRM Case, if you submit a new Case and click back then try to submit agai...2020-09-17T09:45:28Zjustinfreeman (Agileware)CiviCRM Case, if you submit a new Case and click back then try to submit again an error is shownCiviCRM Case, if you submit a new Case and click back then try to submit again an error is shown.
For example, when using this type of URL /civicrm/case/add?reset=1&action=add&cid=3847&context=case
```
Sorry, due to an error, we are un...CiviCRM Case, if you submit a new Case and click back then try to submit again an error is shown.
For example, when using this type of URL /civicrm/case/add?reset=1&action=add&cid=3847&context=case
```
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.
Required parameter missing for OpenCase - end post processing
Return to home page.
```
Reported for CiviCRM 5.11. Reproducible on **CiviCRM 5.16.alpha**
Agileware Ref: CIVICRM-1192
![CiviCRM-Issue-908](/uploads/0b38699bb3f92788ed0f18898d41b9a3/CiviCRM-Issue-908.gif)seamusleeseamusleehttps://lab.civicrm.org/dev/core/-/issues/3255Book keeping Report : Add Time field for Transaction Date and Receive Date field2022-04-22T15:52:54ZsunilBook keeping Report : Add Time field for Transaction Date and Receive Date fieldSame issue : https://lab.civicrm.org/dev/report/-/issues/7 ,with some solution : https://github.com/civicrm/civicrm-core/pull/13571
But not its not working ..., Reason Parent Class `CRM_Utils_Type::T_DATE + CRM_Utils_Type::T_TIME` Time ...Same issue : https://lab.civicrm.org/dev/report/-/issues/7 ,with some solution : https://github.com/civicrm/civicrm-core/pull/13571
But not its not working ..., Reason Parent Class `CRM_Utils_Type::T_DATE + CRM_Utils_Type::T_TIME` Time handling changed.
Add Time Time and Add Sort on Contribution Receive Date and Transaction Date.
![Screenshot_2020-08-27_at_10.31.17_PM](/uploads/5b3ab509542d99720f8d40cd67796187/Screenshot_2020-08-27_at_10.31.17_PM.png)5.30.0https://lab.civicrm.org/dev/core/-/issues/909Ability to find contribution using Billing name2022-10-27T05:03:46ZsunilAbility to find contribution using Billing nameOnline registration process, Billing Contact details may differ with Primary contact information. (Billing Name is stored in civicrm_address table.)
There is no way to Search contribution using Billing Name and Also Billing Name is not ...Online registration process, Billing Contact details may differ with Primary contact information. (Billing Name is stored in civicrm_address table.)
There is no way to Search contribution using Billing Name and Also Billing Name is not exportable Field.
we can add these field Contribution Search form and make Billing Name field available in Export List.
I will Provide PR for this shortly.https://lab.civicrm.org/dev/core/-/issues/3252View Payment owned by Different contact on Membership and Participant View.2022-04-22T15:52:43ZsunilView Payment owned by Different contact on Membership and Participant View.Overview
----------------------------------------
Using Webform, we can set that, contribution assigned to contact A and Membership record will be assigned to Contact B and C (based on number Contact selected in webform). IF we visit the...Overview
----------------------------------------
Using Webform, we can set that, contribution assigned to contact A and Membership record will be assigned to Contact B and C (based on number Contact selected in webform). IF we visit the Membership Record of B and C, we can not see the linked Payment, because its owned by another contact. and there is NO way to check who own the payment record.
Current behaviour
----------------------------------------
Currently it does not show linked payment record if payment is not present on same contact.
Expected behaviour
----------------------------------------
Linked Payment record should show, irrespective of who own the payment record as long as payment is belong the respective Membership.
In this case, webform create membership payment link between each contact membership and contribution id in `civicrm_membership_payment` table.
As long as we have linking between membership and contribution id, then it shows linked payment on Membership View. Same apply to participant.
----------------------------------------
https://github.com/civicrm/civicrm-core/pull/182815.31.0https://lab.civicrm.org/dev/core/-/issues/910Ability to Search contribution record using Transaction Date vs Date Received2022-11-08T05:03:39ZsunilAbility to Search contribution record using Transaction Date vs Date ReceivedRight now we can search contribution using 'Date Received' Field, But when Payment is received via check/ or paid through offline credit card (after few days) then the Transaction Date and Date Received may not be same.
During the Recor...Right now we can search contribution using 'Date Received' Field, But when Payment is received via check/ or paid through offline credit card (after few days) then the Transaction Date and Date Received may not be same.
During the Record your payment process, We keep old Receive Date as it is and add new entry in 'civicrm_financial_trxn' table with 'trxn_date' as current date.
If we want to search record when actual Transaction date then expected contribution record does not show in result.
e.g. cross check the payment processor transaction date and civicrm contribution record. transaction date will get matched with processor record and receive date is quite old (when record is created).https://lab.civicrm.org/dev/core/-/issues/3250Add custom field groups to Membership Contribution Detail report2022-04-22T15:52:41ZJonGoldAdd custom field groups to Membership Contribution Detail reportEvery other report template that has `Contact` in the `$_customGroupExtends` array also includes individual contact types - "Individual" almost always, "Organization" and "Household" where relevant.
This PR adds the contact types to the...Every other report template that has `Contact` in the `$_customGroupExtends` array also includes individual contact types - "Individual" almost always, "Organization" and "Household" where relevant.
This PR adds the contact types to the `$_customGroupExtends` array.5.31.0JonGoldJonGoldhttps://lab.civicrm.org/dev/core/-/issues/911Can't view a bulk email in the browser without being logged in2023-08-03T05:03:25ZUpperholmeCan't view a bulk email in the browser without being logged inWhen sending a bulk email via CiviMail it is possible to set the visibility of a web-viewable version of the email message to either "Public Pages" or "User & Admin only". When set to public, and with the relevant permission set for anon...When sending a bulk email via CiviMail it is possible to set the visibility of a web-viewable version of the email message to either "Public Pages" or "User & Admin only". When set to public, and with the relevant permission set for anonymous users, it should be possible to view the mailing in a browser window.
I've tried this now with two different sites (both running 5.11.0) and when viewing the mailing URL without being logged in I get a fatal error. I initially assumed that this might be linked to Mosaico, but the same is also true when trying to view a mailing sent using the traditional CiviMail UI.
I'll update both sites to the current stable version (5.12.4 at the time of writing) and see if this improves.https://lab.civicrm.org/dev/core/-/issues/3199Searching on address custom field for shared address2023-12-19T05:03:24ZMartinSearching on address custom field for shared addressFound this on Drupal 7 / Civi 5.28.3. We have a custom group on the Address entity with one custom field, and we often use shared addresses for our contacts (for example, an individual uses the address configured on a household contact)....Found this on Drupal 7 / Civi 5.28.3. We have a custom group on the Address entity with one custom field, and we often use shared addresses for our contacts (for example, an individual uses the address configured on a household contact).
For the contact using the shared address (i.e. the individual in the example above):
- The custom field does appear for them, for example on their contact summary page.
- The custom field does not get associated with them when doing any sort of searching (tested in advanced search and search builder).
I tested and confirmed this in dmaster (5.31.alpha1) with the following steps:
1. Created custom group for Address, with custom alphanumeric field as a select input with 3 options.
1. Created individuals test1 and test2, with relationship between them (I think actually the relationship is not needed, but anyways..).
1. Created address on test1 with "opt2" selected on custom field. On test2 selected this address to use as a shared address.
1. At this point both contact summary pages display the correct complete address with opt2 showing.
1. Do advanced search for address custom field opt2. Only contact test1 shows up.
1. Do search builder search for parameter Contacts -> Addr customgroup:customfield -> Primary -> equals -> opt2. Only contact test1 shows up.https://lab.civicrm.org/dev/core/-/issues/912change payment instrument when pending payment paid through credit card2020-09-11T05:41:51Zsunilchange payment instrument when pending payment paid through credit cardCreate Pending Record through online form. (civicrm_contribution: payment_instrument_id : check)
then visit contact and make Record payment using credit card (offline mode).
'civicrm_contribution': payment_instrument_id and 'civicrm_fin...Create Pending Record through online form. (civicrm_contribution: payment_instrument_id : check)
then visit contact and make Record payment using credit card (offline mode).
'civicrm_contribution': payment_instrument_id and 'civicrm_financial_trxn': payment_instrument_id value should change to 'Credit Card' from 'Check'
After paying amount and if expand contribution record for details, you will see 'Payment Method' as 'Check (Visa: 1111)'5.31.0https://lab.civicrm.org/dev/core/-/issues/3217[Feature] Please give us the option to disable subtotals for Soft Credit Cont...2023-12-26T05:03:25Zswebervna[Feature] Please give us the option to disable subtotals for Soft Credit Contribution ReportsCurrently, Soft Credit Contribution Reports always output subtotal: ![image](https://lab.civicrm.org/dev/mail/uploads/39254fd8a1be8b42d9889da4230d91d0/image.png)
I think it would be nice to disable this as an option, so we can remove th...Currently, Soft Credit Contribution Reports always output subtotal: ![image](https://lab.civicrm.org/dev/mail/uploads/39254fd8a1be8b42d9889da4230d91d0/image.png)
I think it would be nice to disable this as an option, so we can remove the subtotal if we don't need them.https://lab.civicrm.org/dev/core/-/issues/913Autogenerated .htaccess is for apache 2.22019-05-28T03:46:09ZDaveDAutogenerated .htaccess is for apache 2.2Interestingly it works anyway because it returns a 500 error if you try to access files, so it doesn't seem like a security issue, but it's obviously not what's intended.
In CRM_Utils_File::restrictaccess it creates a default .htaccess ...Interestingly it works anyway because it returns a 500 error if you try to access files, so it doesn't seem like a security issue, but it's obviously not what's intended.
In CRM_Utils_File::restrictaccess it creates a default .htaccess file that uses the Order directive. This doesn't work in apache 2.4.
Not sure if apache 2.2 is officially supported. It doesn't say in the Requirements documentation. But even if it is I'm thinking 2.4 should be the default anyway. Something like "Require all denied"?https://lab.civicrm.org/dev/core/-/issues/3198Can't see Soft Credit fields on a Contribution Detail Report?2023-12-18T05:03:27ZswebervnaCan't see Soft Credit fields on a Contribution Detail Report?When I add Soft Credit columns to a Contribution Detail Report, the data doesn't show - they're just empty cells:
![image](/uploads/63ee33909c9e1a3b9e314bbd3cd0308e/image.png)
(That first row/entry you see is in fact a contribution with...When I add Soft Credit columns to a Contribution Detail Report, the data doesn't show - they're just empty cells:
![image](/uploads/63ee33909c9e1a3b9e314bbd3cd0308e/image.png)
(That first row/entry you see is in fact a contribution with a soft credit, I checked.)https://lab.civicrm.org/dev/core/-/issues/914submitOnce revisited2021-03-22T11:50:00ZDaveDsubmitOnce revisited@mattwire
Follow-on to PR 13333 to make it work with multiple submit buttons.
WIP at https://github.com/civicrm/civicrm-core/compare/master...demeritcowboy:submit-once-again
Have minimally tested. Will give it some more testing but wor...@mattwire
Follow-on to PR 13333 to make it work with multiple submit buttons.
WIP at https://github.com/civicrm/civicrm-core/compare/master...demeritcowboy:submit-once-again
Have minimally tested. Will give it some more testing but works for the new case screen at least.https://lab.civicrm.org/dev/core/-/issues/3291Activity Type and Case Type not being combined correctly in Advanced Search2022-04-22T15:53:58ZalistairjamesActivity Type and Case Type not being combined correctly in Advanced SearchSteps to create (5.29)
- Create CaseType1 containing a Meeting
- Create CaseType2 containing a Meeting
- Create a Case for Contact_A of CaseType1
- Create a Case for Contact_A of CaseType2
Advance Search: Display: Activities, Logical_Op...Steps to create (5.29)
- Create CaseType1 containing a Meeting
- Create CaseType2 containing a Meeting
- Create a Case for Contact_A of CaseType1
- Create a Case for Contact_A of CaseType2
Advance Search: Display: Activities, Logical_Operator: AND, Activity Type: Meeting, Case Type:CaseType1
Search description displayed:
Activity Type ID In Meeting ...AND...
Activity targeted to ...AND...
Case Type(s) In CaseType1 ...AND...
Case = All Cases
Actual Result (two meetings returned instead of one):
Meeting (from CaseType1)
Meeting (from CaseType2)
Nothing I tried enabled me to exclude the Meeting in CaseType2. If a Contact had Cases of both CaseType1 and CaseType2 all their Meetings were reported in the results and the Case Type filter did not work.5.37.0https://lab.civicrm.org/dev/core/-/issues/915Notes tab still shows despite unchecked in permission2019-05-01T07:11:09ZtapashNotes tab still shows despite unchecked in permissionNotes tab still shows despite unchecked in drupal permission. I have tested this on CiviCRM 5.11 & 5.12, drupal 7.xNotes tab still shows despite unchecked in drupal permission. I have tested this on CiviCRM 5.11 & 5.12, drupal 7.xhttps://lab.civicrm.org/dev/core/-/issues/3249Activity Type + Activity Status + Case Type not being Combined Correctly in S...2022-04-22T15:52:40ZalistairjamesActivity Type + Activity Status + Case Type not being Combined Correctly in Search BuilderThis issue has the same outcome in the Search builder as noted for the Advanced Search in https://lab.civicrm.org/dev/report/-/issues/53 which is the main focus of my attention.
A search for contacts with scheduled meetings in one case ...This issue has the same outcome in the Search builder as noted for the Advanced Search in https://lab.civicrm.org/dev/report/-/issues/53 which is the main focus of my attention.
A search for contacts with scheduled meetings in one case type incorrectly includes contacts who have completed meetings in the case type of interest but also have scheduled meetings in the other case type.
Steps to create (in 5.31)
- Create CaseType1 containing a Meeting
- Create CaseType2 containing a Meeting
- Create a Case of CaseType1 for Alice and mark the Meeting as Completed
- Create a Case of CaseType1 for Bob and leave the Meeting as Scheduled
- Create a Case of CaseType2 for Alice and leave the Meeting as Scheduled
- Create a Case of CaseType2 for Bob and mark the Meeting as Completed
A table of the Meeting status for Alice and Bob in the different Cases
| Contact | CaseType1 | CaseType2 |
| ------ | ------ | ------ |
| Alice | Completed | Scheduled |
| Bob | Scheduled | Completed |
Use the Search Builder to search for Contacts with Meetings Scheduled in CaseType1.
Activity, Activity Type = Meeting
Activity, Activity Status = Scheduled
Case, Case Type = CaseType1
Result: Alice and Bob are both returned when only Bob satisfies the given search criteria.
The SQL query ($sql) displayed by CiviCRM in civicrm/CRM/Contact/Selector.php
public function fillupPrevNextCache($sort, $cacheKey, $start = 0, $end = self::CACHE_SIZE)
(Line 1019 in 5.31)
is as follows:
SELECT contact_a.id as id FROM civicrm_contact contact_a
LEFT JOIN civicrm_case_contact
   ON civicrm_case_contact.contact_id = contact_a.id
INNER JOIN civicrm_case
   ON civicrm_case_contact.case_id = civicrm_case.id
LEFT JOIN civicrm_activity_contact
   ON ( civicrm_activity_contact.contact_id = contact_a.id )
LEFT JOIN civicrm_activity
   ON ( civicrm_activity.id = civicrm_activity_contact.activity_id
   AND civicrm_activity.is_deleted = 0
   AND civicrm_activity.is_current_revision = 1 )
INNER JOIN civicrm_contact
   ON ( civicrm_activity_contact.contact_id = civicrm_contact.id and civicrm_contact.is_deleted != 1 )
LEFT JOIN civicrm_case_type
   ON civicrm_case.case_type_id = civicrm_case_type.id
   WHERE ( ( civicrm_activity.activity_type_id = 1
      AND civicrm_activity.status_id = 1
      AND civicrm_case.case_type_id = 3 ) )
   AND (contact_a.is_deleted = 0)
   AND (civicrm_activity.activity_type_id IN (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 58, 60, 62, 64, 66, 67, 68))
GROUP BY contact_a.id
ORDER BY \`contact_a\`.\`sort_name\` asc, \`contact_a\`.\`id\`
LIMIT 0, 500https://lab.civicrm.org/dev/core/-/issues/916Minimum Contribution Amount shows even after the premium has been unselected2022-10-28T05:03:34ZyashodhaMinimum Contribution Amount shows even after the premium has been unselectedPremium Information - Once the premium is selected (in this cas a mug) the Minimum Contribution Amount value fills in (in this case $5). When the premium is unselected, the $5 value remains and cannot be changedPremium Information - Once the premium is selected (in this cas a mug) the Minimum Contribution Amount value fills in (in this case $5). When the premium is unselected, the $5 value remains and cannot be changedhttps://lab.civicrm.org/dev/core/-/issues/3248Add "created_date" to report filters2022-04-22T15:52:38ZphilipkasoAdd "created_date" to report filters**Use Case**: Report on all contacts created <period>.
**Background/Ask**: "created_date" can only be used via Change Log in Advance Search. We would like to be able to use the "Change Log" created date as a filter in standard reporting...**Use Case**: Report on all contacts created <period>.
**Background/Ask**: "created_date" can only be used via Change Log in Advance Search. We would like to be able to use the "Change Log" created date as a filter in standard reporting to satisfy the stated use case.https://lab.civicrm.org/dev/core/-/issues/917Error when importing contacts2020-10-19T00:45:42ZtapashError when importing contactsOn Civi 5.12.4, Php 7.2
Warning: count(): Parameter must be an array or an object that implements Countable in HTML_QuickForm_hierselect->setValue() (line 262 of /home/webadmin/public_html/sites/all/modules/civicrm/packages/HTML/QuickFo...On Civi 5.12.4, Php 7.2
Warning: count(): Parameter must be an array or an object that implements Countable in HTML_QuickForm_hierselect->setValue() (line 262 of /home/webadmin/public_html/sites/all/modules/civicrm/packages/HTML/QuickForm/hierselect.php).https://lab.civicrm.org/dev/core/-/issues/3219Error when trying to generate thank-you letters for contributions2023-12-26T05:03:26ZswebervnaError when trying to generate thank-you letters for contributionsI'm getting an error "Invalid activity id" when I go to generate thank-you letters based on the search results from my Advanced Search.
I got to Advanced Search, displaying results as Contributions, set all my filters, and then search f...I'm getting an error "Invalid activity id" when I go to generate thank-you letters based on the search results from my Advanced Search.
I got to Advanced Search, displaying results as Contributions, set all my filters, and then search for results. I then select all the results and select the option to make thank-you letters:
![image](/uploads/7871b2abf7e72c092eb1f8eb53e8c681/image.png)
At the next screen, I then choose my message template and click Make Thank-you letters at the bottom, to which I get this error after:
![image](/uploads/be66a1af0e52028de2ccb4b12f63eb93/image.png)
This issue seems to happen regardless of the filters I set for the contribution results, or what's in my message template. It's failing altogether, no matter what, to generate the thank-you letters.
Here's the fatal error description from Civi that my hosting provider gave me:
> $Fatal Error Details = array(3) { ["message"]=> string(19) "Invalid Activity Id" ["code"]=> NULL ["exception"]=> object(CiviCRM_API3_Exception)#2113 (8) { ["extraParams":"CiviCRM_API3_Exception":private]=> array(5) { ["error_code"]=> int(0) ["entity"]=> string(8) "Activity" ["action"]=> string(6) "create" ["is_error"]=> int(1) ["error_message"]=> string(19) "Invalid Activity Id" } ["message":protected]=> string(19) "Invalid Activity Id" ["string":"Exception":private]=> string(0) "" ["code":protected]=> int(0) ["file":protected]=> string(51) "/var/www/html/sites/all/modules/civicrm/api/api.php" ["line":protected]=> int(133) ["trace":"Exception":private]=> array(15) { [0]=> array(4) { ["file"]=> string(81)
**Things I've tried:**
1. Performing the process on only Individuals, and not all 3 - issue persists.
2. Performing the process on a smaller number of contributions (i.e. 60), issue persists regardless of size.
3. Performing the process without a template - issue persists.
**Similiar Issues:**
1. https://civicrm.stackexchange.com/questions/38540/invalid-currency-error-when-using-custom-template?noredirect=1#comment44099_38540
2. https://lab.civicrm.org/dev/core/-/issues/2344
3. https://github.com/civicrm/civicrm-core/pull/19481https://lab.civicrm.org/dev/core/-/issues/918Error randomly appearing when Financial type ACL is enanled2019-05-01T11:27:10ZtapashError randomly appearing when Financial type ACL is enanledNotice: Undefined index: status in CRM_Utils_Check_Component_FinancialTypeAcls::checkFinancialAclReport() (line 39 of /home/webadmin/public_html/cmm-uat/sites/all/modules/civicrm/CRM/Utils/Check/Component/FinancialTypeAcls.php).
on this...Notice: Undefined index: status in CRM_Utils_Check_Component_FinancialTypeAcls::checkFinancialAclReport() (line 39 of /home/webadmin/public_html/cmm-uat/sites/all/modules/civicrm/CRM/Utils/Check/Component/FinancialTypeAcls.php).
on this links
LOCATION https://abc.com/civicrm/ajax/rest
REFERRER https://abc.com/civicrm/a/
Also, in system status keep saying Extension missing, although its installed.5.14.0https://lab.civicrm.org/dev/core/-/issues/3246Error when installing extensions2022-04-22T15:52:36ZElin.WaringError when installing extensionsEvery time I install an extension I get this message:
> An error has occurred.
> 0 Argument 1 passed to CRM_Admin_Page_Extensions::createExtendedInfo() must be an instance of CRM_Extension_Info, null given, called in /mnt/data/vhosts/xxx...Every time I install an extension I get this message:
> An error has occurred.
> 0 Argument 1 passed to CRM_Admin_Page_Extensions::createExtendedInfo() must be an instance of CRM_Extension_Info, null given, called in /mnt/data/vhosts/xxxxxxxx/administrator/components/com_civicrm/civicrm/CRM/Admin/Form/Extensions.php on line 63
And the page is redirected to
administrator/?option=com_civicrm&task=civicrm/admin/extensions
The extension is actually correctly installed but it's still strange to get this message.
This is on Joomla and I just did it again updating to CiviCRM 5.33.2.https://lab.civicrm.org/dev/core/-/issues/919CiviEvent Cart seems broken completely. Any chance of fixing it?2019-06-14T19:13:48ZtapashCiviEvent Cart seems broken completely. Any chance of fixing it?CiviEvent Cart seems broken completely on 5.x . Any chance of fixing it please? thanksCiviEvent Cart seems broken completely on 5.x . Any chance of fixing it please? thankshttps://lab.civicrm.org/dev/core/-/issues/3205Search Kit terminology and help2022-04-22T18:13:08ZJoeMurraySearch Kit terminology and helpI hope this is the right project for feedback on Search Kit.
In the recent demo that we were all very excited about (great progress and functionality!!), there were one or two things that struck me as not as good in terms of usability.
...I hope this is the right project for feedback on Search Kit.
In the recent demo that we were all very excited about (great progress and functionality!!), there were one or two things that struck me as not as good in terms of usability.
There is wonderful support for creating very complex queries. Most of the UI terminology is based on the SQL clauses. There were, however, a few places where a different term was introduced, perhaps in an effort to make it more user friendly for non-programmers. So while there is a WHERE term in the interface, instead of HAVING there are FILTERs. I think the primary UI should just stick to standard SQL throughout, rather than only 95% of the time. Attempts to make it less technical or more understandable by changing away from SQL could be done in mouseover or other documentation.
Adding an explanation for each of these elements, maybe with some samples or links to samples, would be a great way to turn tech savvy non-developers into power users of this tool.
@dtarrant had a useful idea for documentation for join options he shared with me yesterday, and may post here. It's based on what MS Access presents to its users, who can be tech savvy but not programmers, similar to the target users of Search Kit:
![Image_Pasted_at_2021-2-10_17-47](/uploads/5ea62735afb38d711f956c3ca64a13ca/Image_Pasted_at_2021-2-10_17-47.png)colemanwcolemanwhttps://lab.civicrm.org/dev/core/-/issues/9205.13 release apiv4 + Contact Layout Editor2019-05-02T04:31:35Zeileen5.13 release apiv4 + Contact Layout EditorI'm seeing regressions with apiv4 & CLE - ie if I have the latest of each and I have contact layouts configured I'm not seeing the contact screen load with authorization errors.
I don't know if there is a real current issue with the 5....I'm seeing regressions with apiv4 & CLE - ie if I have the latest of each and I have contact layouts configured I'm not seeing the contact screen load with authorization errors.
I don't know if there is a real current issue with the 5.13 rc + whatever apiv4 will ship with it but I'm logging this here so it will at least be checked before the 5.13 release goes out tomorrow
https://github.com/civicrm/org.civicrm.api4/issues/123https://lab.civicrm.org/dev/core/-/issues/3233Address location type search errors when using a search profile2022-04-22T15:51:34ZMonish DebAddress location type search errors when using a search profileSteps to replicate the issue:
1. Create a profile for use as a search view. The fields I have used - address name, phone, city, state
2. Go to Advanced Search
3. Trigger a search using that profile, and select an address location type.
...Steps to replicate the issue:
1. Create a profile for use as a search view. The fields I have used - address name, phone, city, state
2. Go to Advanced Search
3. Trigger a search using that profile, and select an address location type.
_Environment details_
```
CiviCRM ver - 5.37.alpha1 / master
CMS - Drupal 7.78
```
Error:
```
DB Error: no such field
$Fatal Error Details = Array
(
[callback] => Array
(
[0] => CRM_Core_Error
[1] => exceptionHandler
)
[code] => -19
[message] => DB Error: no such field
[mode] => 16
[debug_info] => SELECT DISTINCT LEFT(contact_a.sort_name, 1) as sort_name
FROM civicrm_contact contact_a LEFT JOIN civicrm_address ON ( contact_a.id = civicrm_address.contact_id )
LEFT JOIN civicrm_location_type `1-location_type` ON ( ( `1-address`.location_type_id = `1-location_type`.id ) )
WHERE ( civicrm_address.location_type_id IN (5) ) AND ( 1 ) AND (contact_a.is_deleted = 0) [nativecode=1054 ** Unknown column '1-address.location_type_id' in 'on clause']
[type] => DB_Error
[user_info] => SELECT DISTINCT LEFT(contact_a.sort_name, 1) as sort_name
FROM civicrm_contact contact_a LEFT JOIN civicrm_address ON ( contact_a.id = civicrm_address.contact_id )
LEFT JOIN civicrm_location_type `1-location_type` ON ( ( `1-address`.location_type_id = `1-location_type`.id ) )
WHERE ( civicrm_address.location_type_id IN (5) ) AND ( 1 ) AND (contact_a.is_deleted = 0) [nativecode=1054 ** Unknown column '1-address.location_type_id' in 'on clause']
[to_string] => [db_error: message="DB Error: no such field" code=-19 mode=callback callback=CRM_Core_Error::exceptionHandler prefix="" info="SELECT DISTINCT LEFT(contact_a.sort_name, 1) as sort_name
FROM civicrm_contact contact_a LEFT JOIN civicrm_address ON ( contact_a.id = civicrm_address.contact_id )
LEFT JOIN civicrm_location_type `1-location_type` ON ( ( `1-address`.location_type_id = `1-location_type`.id ) )
WHERE ( civicrm_address.location_type_id IN (5) ) AND ( 1 ) AND (contact_a.is_deleted = 0) [nativecode=1054 ** Unknown column '1-address.location_type_id' in 'on clause']"]
)
Mar 10 08:47:38 [debug] $backTrace = #0 /Users/monish/src/civicrm-core/CRM/Core/Error.php(942): CRM_Core_Error::backtrace("backTrace", TRUE)
#1 /Users/monish/src/civicrm-core/vendor/pear/pear-core-minimal/src/PEAR.php(922): CRM_Core_Error::exceptionHandler(Object(DB_Error))
#2 /Users/monish/src/civicrm-core/vendor/pear/db/DB.php(998): PEAR_Error->__construct("DB Error: no such field", -19, 16, (Array:2), "SELECT DISTINCT LEFT(contact_a.sort_name, 1) as sort_name\n FROM civicr...")
#3 /Users/monish/src/civicrm-core/vendor/pear/pear-core-minimal/src/PEAR.php(575): DB_Error->__construct(-19, 16, (Array:2), "SELECT DISTINCT LEFT(contact_a.sort_name, 1) as sort_name\n FROM civicr...")
#4 /Users/monish/src/civicrm-core/vendor/pear/pear-core-minimal/src/PEAR.php(223): PEAR->_raiseError(Object(DB_mysqli), NULL, -19, 16, (Array:2), "SELECT DISTINCT LEFT(contact_a.sort_name, 1) as sort_name\n FROM civicr...", "DB_Error", TRUE)
#5 /Users/monish/src/civicrm-core/vendor/pear/db/DB/common.php(1928): PEAR->__call("raiseError", (Array:7))
#6 /Users/monish/src/civicrm-core/vendor/pear/db/DB/mysqli.php(936): DB_common->raiseError(-19, NULL, NULL, "SELECT DISTINCT LEFT(contact_a.sort_name, 1) as sort_name\n FROM civicr...", "1054 ** Unknown column '1-address.location_type_id' in 'on clause'")
#7 /Users/monish/src/civicrm-core/vendor/pear/db/DB/mysqli.php(406): DB_mysqli->mysqliRaiseError()
#8 /Users/monish/src/civicrm-core/vendor/pear/db/DB/common.php(1234): DB_mysqli->simpleQuery("SELECT DISTINCT LEFT(contact_a.sort_name, 1) as sort_name\n FROM civicr...")
#9 /Users/monish/src/civicrm-core/packages/DB/DataObject.php(2696): DB_common->query("SELECT DISTINCT LEFT(contact_a.sort_name, 1) as sort_name\n FROM civicr...")
#10 /Users/monish/src/civicrm-core/packages/DB/DataObject.php(1829): DB_DataObject->_query("SELECT DISTINCT LEFT(contact_a.sort_name, 1) as sort_name\n FROM civicr...")
#11 /Users/monish/src/civicrm-core/CRM/Core/DAO.php(454): DB_DataObject->query("SELECT DISTINCT LEFT(contact_a.sort_name, 1) as sort_name\n FROM civicr...")
#12 /Users/monish/src/civicrm-core/CRM/Core/DAO.php(1565): CRM_Core_DAO->query("SELECT DISTINCT LEFT(contact_a.sort_name, 1) as sort_name\n FROM civicr...", TRUE)
#13 /Users/monish/src/civicrm-core/CRM/Contact/BAO/Query.php(4988): CRM_Core_DAO::executeQuery("SELECT DISTINCT LEFT(contact_a.sort_name, 1) as sort_name\n FROM civicr...")
#14 /Users/monish/src/civicrm-core/CRM/Contact/Selector.php(1194): CRM_Contact_BAO_Query->alphabetQuery()
#15 /Users/monish/src/civicrm-core/CRM/Utils/PagerAToZ.php(92): CRM_Contact_Selector->alphabetQuery()
#16 /Users/monish/src/civicrm-core/CRM/Utils/PagerAToZ.php(121): CRM_Utils_PagerAToZ::getDynamicCharacters(Object(CRM_Contact_Selector), FALSE)
#17 /Users/monish/src/civicrm-core/CRM/Utils/PagerAToZ.php(36): CRM_Utils_PagerAToZ::createLinks(Object(CRM_Contact_Selector), NULL, FALSE)
#18 /Users/monish/src/civicrm-core/CRM/Contact/Form/Search.php(853): CRM_Utils_PagerAToZ::getAToZBar(Object(CRM_Contact_Selector), NULL)
#19 /Users/monish/src/civicrm-core/CRM/Contact/Form/Search/Advanced.php(305): CRM_Contact_Form_Search->postProcess()
#20 /Users/monish/src/civicrm-core/CRM/Core/Form.php(526): CRM_Contact_Form_Search_Advanced->postProcess()
```
Screencast:
![before](/uploads/38cc7c6898e1b2e9e89b279a6c40ea6a/before.gif)5.37.0Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/921Register token event not available2021-10-12T02:21:28ZjaapjansmaRegister token event not availableWith the `TokenProcessor` implementation one could register tokens with the `registerToken` event. See the docs: https://docs.civicrm.org/dev/en/latest/framework/token/#token-events-v47
However the `registerToken` event doesn't do anyth...With the `TokenProcessor` implementation one could register tokens with the `registerToken` event. See the docs: https://docs.civicrm.org/dev/en/latest/framework/token/#token-events-v47
However the `registerToken` event doesn't do anything. Also the class `CRM_Activity_Tokens` provide custom field tokens of activities for scheduled reminders. But those tokens don't show up in the token list when composing a scheduled reminder.
I would propose two things:
1. Make the `registerToken` event working
2. Make sure the activity tokens are visible in the list with tokens when composing a scheduled reminder. (This is possibly fixed when we fix 1.
Btw tested this in CiviCRM 5.8.0 and CiviCRM 5.12jaapjansmajaapjansmahttps://lab.civicrm.org/dev/core/-/issues/3218CSV exports does not respect localization configuration2023-10-19T14:38:19ZmarcusmCSV exports does not respect localization configurationWhen creating CSV exports from searches the e. g. money or date fields are not exported with the configured localization formats.
Configure language: German, decimal separator: ",", thousands sep.: "."
The export looks like this:
```...When creating CSV exports from searches the e. g. money or date fields are not exported with the configured localization formats.
Configure language: German, decimal separator: ",", thousands sep.: "."
The export looks like this:
```
| Nettobetrag |
|-------------|
| 135.00 |
| 20.00 |
| 50.00 |
| 1,130.00 |
should be
| Nettobetrag |
|-------------|
| 135,00 |
| 20,00 |
| 50,00 |
| 1.130,00 |
```
and an example for a date field:
```
| Geburtsdatum |
|--------------|
| 1942-05-02 |
| 1983-06-01 |
should be
| Geburtsdatum |
|--------------|
| 02.05.1942 |
| 01.06.1983 |
```
The export was created with a contribution search.https://lab.civicrm.org/dev/core/-/issues/922Update Api3DocTrait::callAPIAndDocument for short array syntax2019-05-01T20:09:36ZDaveDUpdate Api3DocTrait::callAPIAndDocument for short array syntaxSeems low priority but what happens is that when you run certain tests it overwrites the already converted api/v3/examples files with the ~~better~~ longer syntax so that your tree shows modified files in that folder.
The actual file th...Seems low priority but what happens is that when you run certain tests it overwrites the already converted api/v3/examples files with the ~~better~~ longer syntax so that your tree shows modified files in that folder.
The actual file that controls this seems to be tests/templates/documentFunction.tplhttps://lab.civicrm.org/dev/core/-/issues/3189Search-kit offer actions when grouped by an entity2023-12-15T05:03:27ZeileenSearch-kit offer actions when grouped by an entityWhen we have a search with an entity as group by we should offer actions for that entity
eg.
```
SELECT contact_id, SUM(total_amount) as totes FROM civicrm_contribution GROUP BY contact_id HAVING totes > 2000;
```
Should have contact...When we have a search with an entity as group by we should offer actions for that entity
eg.
```
SELECT contact_id, SUM(total_amount) as totes FROM civicrm_contribution GROUP BY contact_id HAVING totes > 2000;
```
Should have contact actions & the ability to create a smart groups
See https://github.com/civicrm/civicrm-core/pull/19936
@colemanwhttps://lab.civicrm.org/dev/core/-/issues/923Error when creating profile or accessing profile2020-03-25T02:16:30ZtapashError when creating profile or accessing profileNotice: Undefined variable: otherModuleString in CRM_UF_Form_Group->getOtherModuleString() (line 430 of /home/webadmin/public_html/cmm-uat/sites/all/modules/civicrm/CRM/UF/Form/Group.php).Notice: Undefined variable: otherModuleString in CRM_UF_Form_Group->getOtherModuleString() (line 430 of /home/webadmin/public_html/cmm-uat/sites/all/modules/civicrm/CRM/UF/Form/Group.php).5.25.0https://lab.civicrm.org/dev/core/-/issues/2554hook_civicrm_tokenValues inconsistent data2021-09-20T20:18:36Zjaapjansmahook_civicrm_tokenValues inconsistent dataThe `hook_civicrm_tokenValues` has the following parameter signature:
* `&$values` an array containing the data to be replaced. The array has an index by contact id.
* `$contactIDs` an array of all contact ids
* `$jobID` id of the mai...The `hook_civicrm_tokenValues` has the following parameter signature:
* `&$values` an array containing the data to be replaced. The array has an index by contact id.
* `$contactIDs` an array of all contact ids
* `$jobID` id of the mailing job
* `$tokens` array of tokens to be replaced
* `$context` the calling class
However the `$values` and `$contactIds` have a inconsistent markup. The inconsistency is visible when one does a search on cases and then select **Print/Merge document** from the action list and creates a PDF.
At that point the `$values` also hold data for the contact with the same ID as the case ID.
And at that point the `$contactIds` is an array containing the following: `$contactIds[´contact_id´] = 1; $contactIds[´case_id´] = 2`
**Proposal / Expected behaviour**
* Only expect the affected contacts in `$values`
* The `$contactIds` should hold the contactIds and the case ID should be moved to $values.
I discovered this whilst writing https://docs.civicrm.org/dev/en/latest/step-by-step/create-custom-case-token/5.43.0https://lab.civicrm.org/dev/core/-/issues/2536Empty extension requires tag misevaluated2023-07-26T05:03:26ZeileenEmpty extension requires tag misevaluatedI'm seeing
![image](/uploads/9ca2d57e51026f71ccf522fc6a6d55cc/image.png)
In the UI it seems to be the carriage return in the tag causing the issue
![image](/uploads/19c9c8f5e5fb469af62f846a747b9180/image.png)
But contactlayoutedit xm...I'm seeing
![image](/uploads/9ca2d57e51026f71ccf522fc6a6d55cc/image.png)
In the UI it seems to be the carriage return in the tag causing the issue
![image](/uploads/19c9c8f5e5fb469af62f846a747b9180/image.png)
But contactlayoutedit xml is unchangedhttps://lab.civicrm.org/dev/core/-/issues/2534ugly error message - what does it mean (apiv4 ++)2023-07-22T05:03:29Zeileenugly error message - what does it mean (apiv4 ++)@totten @colemanw I've seen this before but it wasn't replicable - however I now can.
I was trying to replicate the api call in https://github.com/eileenmcnaughton/deduper/pull/11 to figure out the error 'API error: No option list found...@totten @colemanw I've seen this before but it wasn't replicable - however I now can.
I was trying to replicate the api call in https://github.com/eileenmcnaughton/deduper/pull/11 to figure out the error 'API error: No option list found for 'saved_search_id'
However, I get a new and also ugly error in the api explorer
![image](/uploads/d1f87f1b3cfbe4ac39d94796cf883dfa/image.png)
![image](/uploads/6fdaed4b9b5f58c1862e9519ccc76d52/image.png)
Note that I did the following
1) opened search kit & created a search
2) attempted to create a search display in api explorer with JUST the search ID
I assume the underlying error is that I failed to provide all the mandatory fields - but the error just looks nasty
https://dmaster.demo.civicrm.org/civicrm/api4#/explorer/SearchDisplay/create?values=%5B%5B%22saved_search_id%22,%221%22%5D%5Dhttps://lab.civicrm.org/dev/core/-/issues/2533Afform - include Generic.html by default2021-04-25T21:00:40ZeileenAfform - include Generic.html by defaultI had a go at adding an afform in an extension today for a simple entity in the extension. I had to do 2 things to expose it
1) Add this file
https://github.com/eileenmcnaughton/deduper/commit/2ca0de29f66401584b966dcf42cd299b98af09a7
2...I had a go at adding an afform in an extension today for a simple entity in the extension. I had to do 2 things to expose it
1) Add this file
https://github.com/eileenmcnaughton/deduper/commit/2ca0de29f66401584b966dcf42cd299b98af09a7
2) hack a file similar to this one into core
https://github.com/civicrm/civicrm-core/compare/master...eileenmcnaughton:grantaff?expand=1#diff-e15ef3dc8f2633f790b8b2b34384aba83b9b5114e01a8f851e9e059273ae42d1
I think 2 could be addressed by fixing this line
https://github.com/civicrm/civicrm-core/blob/a191be25440e213fc29679584d2b62f5076369c2/ext/afform/admin/ang/afGuiEditor/afGuiEntity.html#L59 to include the specified file if exists else Generic.html
Note that simply downloading & enabling the master version of deduper if enough to get to the point where you can attempt to create the afform for ContactNamePair. It DOES work but the options section doesn't render
![image](/uploads/0a862ce216ac61045e9ef180d376abf6/image.png)
As a secondary issue, I couldn't figure out how to construct an edit url for ithttps://lab.civicrm.org/dev/core/-/issues/2532Regression (5.36) - can't find soft-credit contact by contact id2021-04-14T04:10:13ZeileenRegression (5.36) - can't find soft-credit contact by contact idWe just pushed out 5.37 & a user has reported that contact id has gone missing from
![no_contact](https://phab.wmfusercontent.org/file/data/xq6tods7o3flmitss5s7/PHID-FILE-ggor3hyhsee7kairhdqk/preview-Screen_Shot_2021-04-13_at_2.38.43_PM...We just pushed out 5.37 & a user has reported that contact id has gone missing from
![no_contact](https://phab.wmfusercontent.org/file/data/xq6tods7o3flmitss5s7/PHID-FILE-ggor3hyhsee7kairhdqk/preview-Screen_Shot_2021-04-13_at_2.38.43_PM.png)
It was removed in
https://github.com/civicrm/civicrm-core/commit/9f61f456e9802f9734158ff74387bb8cd2886017
in order to improve the selectors elsewhere (angular I think). However, typing a contact id doesn't work without selecting that or if I just put that one line back either now
@colemanw I think it needs to go back in the list for congruousness with other items in the listhttps://lab.civicrm.org/dev/core/-/issues/2528upgrade error2021-04-15T19:41:20Zeileenupgrade error5.35 to 5.37
* ERROR USERINFO: ALTER TABLE civicrm_group ADD CONSTRAINT `FK_civicrm_group_saved_search_id` FOREIGN KEY (`saved_search_id`) REFERENCES `civicrm_saved_search`(`id`) ON DELETE CASCADE [nativecode=1005 ** Can't create table...5.35 to 5.37
* ERROR USERINFO: ALTER TABLE civicrm_group ADD CONSTRAINT `FK_civicrm_group_saved_search_id` FOREIGN KEY (`saved_search_id`) REFERENCES `civicrm_saved_search`(`id`) ON DELETE CASCADE [nativecode=1005 ** Can't create table `civicrm`.`civicrm_group` (errno: 121 "Duplicate key on write or update")]5.37.0https://lab.civicrm.org/dev/core/-/issues/3277When Merging Contacts Related Tags are Missing2022-04-22T15:53:35ZmenachemWhen Merging Contacts Related Tags are Missinghttps://lab.civicrm.org/dev/core/-/issues/924Advanced search: activity tags should use select22019-06-05T15:24:08ZMonish DebAdvanced search: activity tags should use select2Steps to replicate:
1. add a tag and flag it as available to activities.
2. load advanced search and expand the activity panel.
Note that the activity field is the old format -- checkbox list. It should use select2. See the case panel ...Steps to replicate:
1. add a tag and flag it as available to activities.
2. load advanced search and expand the activity panel.
Note that the activity field is the old format -- checkbox list. It should use select2. See the case panel for comparison.5.12.0Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/925Activity report: include case activities filter ignored2020-03-05T20:45:12ZMonish DebActivity report: include case activities filter ignoredYou can see in the where clause case-activity filter field is always set to NULL.You can see in the where clause case-activity filter field is always set to NULL.5.12.0Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/927Cancel first contribution associated to membership, cancels the membership2021-04-09T18:47:41Zsluc23Cancel first contribution associated to membership, cancels the membershipFollowing this old topic:
https://civicrm.stackexchange.com/questions/2482/membership-sets-to-cancelled-when-contribution-fails-why
https://issues.civicrm.org/jira/browse/CRM-18177
current CiviCRM behavior is when a Contribution a...Following this old topic:
https://civicrm.stackexchange.com/questions/2482/membership-sets-to-cancelled-when-contribution-fails-why
https://issues.civicrm.org/jira/browse/CRM-18177
current CiviCRM behavior is when a Contribution associated with a membership is Cancelled, if this membership has only this Contribution, the membership is cancelled too.
Same when the Contribution gets to "Failed", if it's the first Contribution associated with the membership, it is set to "Expired" status.
https://github.com/civicrm/civicrm-core/blob/5.13/CRM/Contribute/BAO/Contribution.php#L1784
We use Membership for many Organizations with *manual/offline* payment processors, like direct debit, where the first Contribution can be Cancelled (i.e.: the member has no funds in his bank account) but this doesn't mean that the membership has to be cancelled too. The ORG will reattempt to charge this contribution later, and this same Contribution can be later Completed or a new one charged.
This ticket is meant to reopen the discussion about this topic with other users, and if it worth it, to rework on a solution where this behavior of cancelling memberships is not mandatory
Other areas of the code where similar things happen:
* https://github.com/civicrm/civicrm-core/blob/5.13/CRM/Contribute/BAO/ContributionRecur.php#L2985.35.0https://lab.civicrm.org/dev/core/-/issues/928Membership and Auto-Renew issues2023-11-23T07:09:31Zmattwiremjw@mjwconsult.co.ukMembership and Auto-Renew issuesOverview
WORK IN PROGRESS Parts of this are gradually being extracted into smaller, easier to review PRs. Once this is fully reviewed and merged documentation will also need updating.
Ref: https://github.com/civicrm/civicrm-core/pull/123...Overview
WORK IN PROGRESS Parts of this are gradually being extracted into smaller, easier to review PRs. Once this is fully reviewed and merged documentation will also need updating.
Ref: https://github.com/civicrm/civicrm-core/pull/12315
This is mostly code cleanup and an attempt to understand exactly what happens when a membership is automatically renewed!
# Fixes (and this needs adding to Civi docs somewhere as it's currently undocumented and unclear what it does):
## Before
* Membership will be renewed when contribution is in ANY state except "Pending."
* All parameters of recurring contribution are ignored, ie installments, frequency mismatch (eg. monthly recurring, annual membership) so every new contribution will trigger a membership renewal.
* When repeattransaction is called ONLY the membership linked to the original contribution will be renewed (if the contribution is in the correct state (ie. Completed - see Before/After)). loadRelatedObjects only loads one membership but the code is expected all memberships to be loaded so does handle multiple memberships if passed in.
## After
* Membership will be renewed ONLY when contribution is in state "Completed".
* Membership will be renewed ONLY if the recurring and membership type frequencies match. Installments parameter has no effect.
* When repeattransaction is called: If the contribution has a recurring contribution ID then ALL memberships linked to that recurring contribution will be renewed. If the contribution has no recurring contribution then the membership linked to the original contribution will be renewed (if the contribution is in the correct state (ie. Completed - see Before/After) AND the other conditions are met (ie. state, frequency)).
## Documentation (After)
* Membership will be renewed ONLY when contribution is in state "Completed" - https://github.com/civicrm/civicrm-core/pull/12315 (5.5.0)
* Membership will be renewed ONLY if the recurring and membership type frequencies match (Installments are ignored).
* When repeattransaction is called any linked memberships will be renewed if the contribution is in the correct state. If there is a recurring contribution then the frequencies must also match (installments are ignored).
* A recurring contribution can be linked to multiple memberships and all memberships will be updated/renewed if all other conditions are met - https://github.com/civicrm/civicrm-core/pull/12542 (pending merge)https://lab.civicrm.org/dev/core/-/issues/929Allow membership type to be configured in different currencies2022-10-30T05:03:28ZyashodhaAllow membership type to be configured in different currenciesCurrently, there is no way to configure membership type fee with different currencies. We would need to either have to configure the currency at membership level or allow the currency to be saved when recording the membership payment. Ch...Currently, there is no way to configure membership type fee with different currencies. We would need to either have to configure the currency at membership level or allow the currency to be saved when recording the membership payment. Check screenshots.
Thoughts?![mem_type](/uploads/8e9a32c89936251dc190e6b5bc1f8fab/mem_type.png)![membership](/uploads/2489c4353150f801142c7cd7170caafc/membership.png)yashodhayashodhahttps://lab.civicrm.org/dev/core/-/issues/930Performance issue with advanced search result count when searching on several...2022-11-21T05:03:26ZlolcodePerformance issue with advanced search result count when searching on several groups and one or more is a Smart groupIn advanced search we are searching for all users in any one of 3 groups. One of those groups is a fairly large smart group.
One of the slow queries observed and checked in the slow query log (over 60 seconds) is the one for getting the ...In advanced search we are searching for all users in any one of 3 groups. One of those groups is a fairly large smart group.
One of the slow queries observed and checked in the slow query log (over 60 seconds) is the one for getting the total number of results.
```
SELECT count(DISTINCT contact_a.id) as rowCount
FROM civicrm_contact contact_a
LEFT JOIN civicrm_group_contact civicrm_group_contact-2032325,930575
ON (contact_a.id = civicrm_group_contact-2032325,930575.contact_id AND civicrm_group_contact-2032325,930575.status IN ('Added'))
LEFT JOIN civicrm_group_contact_cache civicrm_group_contact_cache_2031143
ON contact_a.id = civicrm_group_contact_cache_2031143.contact_id
WHERE (
(
( civicrm_group_contact-2032325,930575.group_id IN ( 2032325,930575 ) )
OR
( civicrm_group_contact_cache_2031143.group_id IN ("2031143") )
)
)
AND (contact_a.is_deleted = 0);
```
MySQL EXPLAIN gives us a query_cost for this of 5505518.60
I came up with an alternate query at a much lower cost but I don't know enough about the Contact Query code to try it out and test it.
```
SELECT count(DISTINCT c.id) as rowCount
FROM civicrm_contact c
LEFT JOIN
(
select group_id, contact_id
from civicrm_group_contact_cache
WHERE group_id IN (2031143)
UNION
select group_id, contact_id
from civicrm_group_contact
WHERE group_id IN (2032325,930575) AND status IN ('Added')
) G
ON G.contact_id = c.id
WHERE
c.is_deleted = 0 and G.group_id IS NOT NULL
```
MySQL EXPLAIN gives us a query_cost for this one of only 102510.43
![Image_Pasted_at_2019-5-2_11-50](/uploads/b79c15b4b3c565259b4759a56ca6d14c/Image_Pasted_at_2019-5-2_11-50.png)
![Image_Pasted_at_2019-5-2_10-24](/uploads/fdf295fdb7435d156096e578544db0ee/Image_Pasted_at_2019-5-2_10-24.png)https://lab.civicrm.org/dev/core/-/issues/931Civi 5.13.0 fails to upgrade on multilingual sites2019-07-10T16:02:55ZJonGoldCivi 5.13.0 fails to upgrade on multilingual sitesThe backtrace is below. It seems like we can't add a column to a multilingual table if the table wasn't multilingual prior to upgrade.
```
May 02 11:21:35 [info] $Fatal Error Details = Array
(
[callback] => Array
(
...The backtrace is below. It seems like we can't add a column to a multilingual table if the table wasn't multilingual prior to upgrade.
```
May 02 11:21:35 [info] $Fatal Error Details = Array
(
[callback] => Array
(
[0] => CRM_Core_Error
[1] => handle
)
[code] => -18
[message] => DB Error: no such table
[mode] => 16
[debug_info] => SHOW COLUMNS FROM civicrm_payment_processor_en_US LIKE 'title' [nativecode=1146 ** Table 'nasco_dev_civi.civicrm_payment_processor_en_US' doesn't exist]
[type] => DB_Error
[user_info] => SHOW COLUMNS FROM civicrm_payment_processor_en_US LIKE 'title' [nativecode=1146 ** Table 'nasco_dev_civi.civicrm_payment_processor_en_US' doesn't exist]
[to_string] => [db_error: message="DB Error: no such table" code=-18 mode=callback callback=CRM_Core_Error::handle prefix="" info="SHOW COLUMNS FROM civicrm_payment_processor_en_US LIKE 'title' [nativecode=1146 ** Table 'nasco_dev_civi.civicrm_payment_processor_en_US' doesn't exist]"]
)
May 02 11:21:35 [info] $backTrace = #0 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/CRM/Core/Error.php(236): CRM_Core_Error::backtrace("backTrace", TRUE)
#1 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/packages/PEAR.php(921): CRM_Core_Error::handle(Object(DB_Error))
#2 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/packages/DB.php(985): PEAR_Error->__construct("DB Error: no such table", -18, 16, (Array:2), "SHOW COLUMNS FROM civicrm_payment_processor_en_US LIKE 'title' [nativecode=11...")
#3 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/packages/PEAR.php(575): DB_Error->__construct(-18, 16, (Array:2), "SHOW COLUMNS FROM civicrm_payment_processor_en_US LIKE 'title' [nativecode=11...")
#4 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/packages/PEAR.php(223): PEAR->_raiseError(Object(DB_mysqli), NULL, -18, 16, (Array:2), "SHOW COLUMNS FROM civicrm_payment_processor_en_US LIKE 'title' [nativecode=11...", "DB_Error", TRUE)
#5 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/packages/DB/common.php(1907): PEAR->__call("raiseError", (Array:7))
#6 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/packages/DB/mysqli.php(933): DB_common->raiseError(-18, NULL, NULL, "SHOW COLUMNS FROM civicrm_payment_processor_en_US LIKE 'title' [nativecode=11...", "1146 ** Table 'nasco_dev_civi.civicrm_payment_processor_en_US' doesn't exist")
#7 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/packages/DB/mysqli.php(403): DB_mysqli->mysqliRaiseError()
#8 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/packages/DB/common.php(1216): DB_mysqli->simpleQuery("SHOW COLUMNS FROM civicrm_payment_processor_en_US LIKE 'title'")
#9 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/packages/DB/DataObject.php(2415): DB_common->query("SHOW COLUMNS FROM civicrm_payment_processor_en_US LIKE 'title'")
#10 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/packages/DB/DataObject.php(1607): DB_DataObject->_query("SHOW COLUMNS FROM civicrm_payment_processor_en_US LIKE 'title'")
#11 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/CRM/Core/DAO.php(439): DB_DataObject->query("SHOW COLUMNS FROM civicrm_payment_processor_en_US LIKE 'title'")
#12 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/CRM/Core/DAO.php(1414): CRM_Core_DAO->query("SHOW COLUMNS FROM civicrm_payment_processor_en_US LIKE 'title'", TRUE)
#13 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/CRM/Core/BAO/SchemaHandler.php(632): CRM_Core_DAO::executeQuery("SHOW COLUMNS FROM civicrm_payment_processor LIKE '%1'", (Array:1), TRUE, NULL, FALSE, TRUE)
#14 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/CRM/Upgrade/Incremental/Base.php(159): CRM_Core_BAO_SchemaHandler::checkIfFieldExists("civicrm_payment_processor", "title")
#15 /home/jon/local/nasco/htdocs/sites/all/modules/civicrm/CRM/Queue/Task.php(88): CRM_Upgrade_Incremental_Base::addColumn(Object(CRM_Queue_TaskContext), "civicrm_payment_processor", "title", "text COMMENT 'Payment Processor Descriptive Name.'", TRUE, "5.13.alpha1")
#16 /usr/local/bin/cvsrc/src/Util/ConsoleQueueRunner.php(76): CRM_Queue_Task->run(Object(CRM_Queue_TaskContext))
#17 /usr/local/bin/cvsrc/src/Command/UpgradeDbCommand.php(133): Civi\Cv\Util\ConsoleQueueRunner->runAll()
#18 /usr/local/bin/cvsrc/vendor/symfony/console/Command/Command.php(257): Civi\Cv\Command\UpgradeDbCommand->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#19 /usr/local/bin/cvsrc/vendor/symfony/console/Application.php(850): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#20 /usr/local/bin/cvsrc/vendor/symfony/console/Application.php(193): Symfony\Component\Console\Application->doRunCommand(Object(Civi\Cv\Command\UpgradeDbCommand), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#21 /usr/local/bin/cvsrc/src/Application.php(48): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#22 /usr/local/bin/cvsrc/vendor/symfony/console/Application.php(124): Civi\Cv\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#23 /usr/local/bin/cvsrc/src/Application.php(17): Symfony\Component\Console\Application->run()
#24 /usr/local/bin/cvsrc/bin/cv(27): Civi\Cv\Application::main("/usr/local/bin/cvsrc/bin")
#25 {main}
```5.13.1https://lab.civicrm.org/dev/core/-/issues/932Dedupe screen: single "flip" and multi-selected-flip have no effect2019-05-12T23:27:12ZbgmDedupe screen: single "flip" and multi-selected-flip have no effectHow to reproduce on dmaster:
* Go to: Contacts > Find and merge duplicates
* Select the "Name and address" rule, which brings you here: https://dmaster.demo.civicrm.org/civicrm/contact/dedupefind?reset=1&action=update&rgid=7#
Then noti...How to reproduce on dmaster:
* Go to: Contacts > Find and merge duplicates
* Select the "Name and address" rule, which brings you here: https://dmaster.demo.civicrm.org/civicrm/contact/dedupefind?reset=1&action=update&rgid=7#
Then notice that)
1. when we click on "flip" for a single entry, it seems to flip, but the "merge" link is the same, so doing the actual merge does not flip the direction.
2. if we click the checkbox for the result, then click the "Flip selected duplicates", nothing happens.
![civicrm-dedupe-flip](/uploads/712aaa8949e7f0d7b9018bdb78e148ea/civicrm-dedupe-flip.jpg)5.15.0https://lab.civicrm.org/dev/core/-/issues/933Flash-based charts missing in Chrome because the "click to enable" button is ...2019-10-10T18:48:37ZjohnkFlash-based charts missing in Chrome because the "click to enable" button is not visible on the pageJust go to Contributions Dashboard in Chrome. Charts do not show up. The issue is that in the default mode for Chrome, there should be a "click to enable" button coming up, but this chart or its javascript is in some way not compatible.
...Just go to Contributions Dashboard in Chrome. Charts do not show up. The issue is that in the default mode for Chrome, there should be a "click to enable" button coming up, but this chart or its javascript is in some way not compatible.
There is a well known workaround of manually enabling Flash for the site, which I've instructed our staff on. I still thought I'd open it as an issue. This Chrome-specific regression may be due to the use of SWFObject; see #270.
The Contributions chart is one of the best ways of showcasing all the hard work of setting up and importing data into ones fancy new CRM! So it's kind of a bummer to have the Chrome bug right there, is all.5.20.0https://lab.civicrm.org/dev/core/-/issues/934Regression - faster activity tab in 5.13 won't sort by source_name now2019-05-07T22:41:38ZeileenRegression - faster activity tab in 5.13 won't sort by source_name nowThe activity tab now uses the api in order to not take forever to load but I just discovered source_name sorting is broken :-( (We've had this in prod for months & never noticed).
Target & assignee are unavailable to we can do a join as...The activity tab now uses the api in order to not take forever to load but I just discovered source_name sorting is broken :-( (We've had this in prod for months & never noticed).
Target & assignee are unavailable to we can do a join assuming 1->1
![Screenshot_2019-05-03_13.32.15](/uploads/7aef5c145a5fdb69798ceb9abe84b441/Screenshot_2019-05-03_13.32.15.png)5.13.2https://lab.civicrm.org/dev/core/-/issues/935Event tickets NOT showing sold out in the backend, but online it does.2022-10-29T05:03:41ZtapashEvent tickets NOT showing sold out in the backend, but online it does.I have tested this on 5.11 and 5.13.1 and seems to be consistent with the problem. I had issue with participant being double booked due to this. a question is opened on stackexchange https://civicrm.stackexchange.com/questions/30499/how-...I have tested this on 5.11 and 5.13.1 and seems to be consistent with the problem. I had issue with participant being double booked due to this. a question is opened on stackexchange https://civicrm.stackexchange.com/questions/30499/how-to-avoid-double-booking-in-civievent
Is it supposed to be like this? or would it be considered a bug? any help to resolve this would be appreciated. Thanks
EDIT: I was able to replicate this on https://dmaster.demo.civicrm.org
![Screenshot_2019-05-04_at_18.41.02](/uploads/f7dc4b4ca0a7508815f591d75ae660d1/Screenshot_2019-05-04_at_18.41.02.png)
![Screenshot_2019-05-04_at_18.41.51](/uploads/71f45affc8688d1d047b9d1dd34019a1/Screenshot_2019-05-04_at_18.41.51.png)https://lab.civicrm.org/dev/core/-/issues/936CiviEvent - cannot register same participant multiple times from backoffice2022-11-04T05:03:28ZtapashCiviEvent - cannot register same participant multiple times from backofficeI have checked "**Same email address**" so that same person can book multiple times with an event that has multiple session and some might want to register other session at later time. From online registration it works, however it does n...I have checked "**Same email address**" so that same person can book multiple times with an event that has multiple session and some might want to register other session at later time. From online registration it works, however it does not work from backend and keep gives me error "**This contact has already been assigned to this event.**". How can I resolve this issue please? I am on civi 5.13.1, also tested on 5.11 . Thanks
EDIT: I was able to replicate this on https://dmaster.demo.civicrm.org
![Screenshot_2019-05-04_at_19.36.13](/uploads/5bff50eb46be8a3c23304b366eafc1f0/Screenshot_2019-05-04_at_19.36.13.png)https://lab.civicrm.org/dev/core/-/issues/937Comments about CRM_Utils_Array::value when used as a replacement for empty/isset2019-05-28T03:50:28ZDaveDComments about CRM_Utils_Array::value when used as a replacement for empty/isset1) Its name isn't very descriptive of what it does and I find sometimes makes code LESS readable. A better name might be something like getElementByKeyOrDefault. And the order of parameters is backwards from the typical array element syn...1) Its name isn't very descriptive of what it does and I find sometimes makes code LESS readable. A better name might be something like getElementByKeyOrDefault. And the order of parameters is backwards from the typical array element syntax: value($b, $a) vs $a[$b].
2) It has the potential to create some strange bugs. For example what would someone who's maybe copying and pasting code from different spots expect the final output of this code to be? They'd intuitively be wrong.
```
$contact = <some CRM_Contact_BAO_Contact object from somewhere>;
/* Let's say it looks something like:
var_dump($contact);
class CRM_Contact_BAO_Contact#518 (76) {
public $id =>
string(3) "100"
public $contact_type =>
string(10) "Individual"
public $sort_name =>
string(13) "Smith, John"
public $display_name =>
string(12) "John Smith"
... etc ...
}
*/
if (CRM_Utils_Array::value('contact_type', $contact) == 'Individual') {
echo "It's an individual";
} else {
echo "Not an individual";
}
```
The answer is it outputs "Not an individual", even though the contact_type member is "Individual";
3) A very very very minor thing, but CRM_Utils_Array::value is slower than just using ?: with isset() or empty(). My own benchmarking a loop of 10000 iterations gives an average 500 milliseconds vs 200 milliseconds. It's tiny and inconsequential, but just for the record it is consistently slower.https://lab.civicrm.org/dev/core/-/issues/938Possible timing issue with test phpunit/api/v3/AttachmentTest::testCreate2019-09-05T02:02:11ZDaveDPossible timing issue with test phpunit/api/v3/AttachmentTest::testCreateWhat I think is happening is that when it first calls `$this->callAPISuccess('Attachment', 'create'...` the fcs hash is generated using the current value of time(). Then lower down when it calls `$this->callAPISuccess('Attachment', 'get'...What I think is happening is that when it first calls `$this->callAPISuccess('Attachment', 'create'...` the fcs hash is generated using the current value of time(). Then lower down when it calls `$this->callAPISuccess('Attachment', 'get',...` the fcs hash gets generated again via _civicrm_api3_attachment_format_result() which calls CRM_Core_BAO_File::generateFileHash() again, and so the returned value will depend on the value of time() at that point.
While almost all the time those two values of time() will be the same because it's very fast, if it happens to cross over the second boundary the second value will be different than the first and the test fails.5.18.0https://lab.civicrm.org/dev/core/-/issues/939Viewing contact summary screen results in 'Error' and 'The website encountere...2019-05-05T19:59:20ZAndy ClarkViewing contact summary screen results in 'Error' and 'The website encountered an unexpected error. Please try again later. 'In Civi 5.13.1 viewing the contact summary screen always results in a white screen with 'Error' and 'The website encountered an unexpected error. Please try again later.'. See the the attached backtrace[Backtrace.txt](/uploads/fbc68d2f7...In Civi 5.13.1 viewing the contact summary screen always results in a white screen with 'Error' and 'The website encountered an unexpected error. Please try again later.'. See the the attached backtrace[Backtrace.txt](/uploads/fbc68d2f7a031cb0e3583ad111056231/Backtrace.txt). I tried disabling the Contact Layout Editor extension & also the API V4 extension - to no avail. Cleared caches etc. Fails 100%https://lab.civicrm.org/dev/core/-/issues/940Email processor filing all emails as .unknown attachments2019-05-20T22:16:22ZDaveDEmail processor filing all emails as .unknown attachmentsSee also https://civicrm.stackexchange.com/questions/30511/auto-filing-e-mails-on-cases-mail-content-not-shown-under-details-and-attachmen
The reporter was using Thunderbird and 5.13.1 but I'm able to reproduce it locally on master with...See also https://civicrm.stackexchange.com/questions/30511/auto-filing-e-mails-on-cases-mail-content-not-shown-under-details-and-attachmen
The reporter was using Thunderbird and 5.13.1 but I'm able to reproduce it locally on master with both gmail and thunderbird generated emails.
I think I saw there was something done with the third-party Mail package recently, moving its location. Not sure if there were any other related changes?5.13.2seamusleeseamusleehttps://lab.civicrm.org/dev/core/-/issues/941Updated 5.13.1 to 5.13.2 but not showing on System Status Screen2019-05-14T15:44:20ZsbyrneUpdated 5.13.1 to 5.13.2 but not showing on System Status ScreenHi, today we updated from 5.13.1 to 5.13.2 and completed the database update that went with this, but our status screen is still showing we need to complete the update to 5.13.2. The db update was done using civicrm/upgrade?reset=1
We h...Hi, today we updated from 5.13.1 to 5.13.2 and completed the database update that went with this, but our status screen is still showing we need to complete the update to 5.13.2. The db update was done using civicrm/upgrade?reset=1
We had a similar problem jumping from 5.12 (I forget which patch exactly) to 5.13.1. But that database update was done via drush and the command quit unexpectedly so I assumed the database had only been partially upgraded. We got rid of the message saying we still needed to update the first time by reloading an older version of the database and updating it again using the civicrm/upgrade?reset1 screen. Seems strange it's happened again. We've cleared the caches so seemingly no troubles there.
![image](/uploads/2467441a735a4afc85afba0ebbe4c9f6/image.png)https://lab.civicrm.org/dev/core/-/issues/942"n/a" appearing instead of named members when viewing activities on a member ...2019-05-14T19:48:37Zsbyrne"n/a" appearing instead of named members when viewing activities on a member profileWe've noticed since upgrading to 5.13 that when viewing "activities" under a members profile "n/a" has stated appearing under some records in the "added by", "with" and "assigned" columns. Usually these would be the names of the appropri...We've noticed since upgrading to 5.13 that when viewing "activities" under a members profile "n/a" has stated appearing under some records in the "added by", "with" and "assigned" columns. Usually these would be the names of the appropriate people on the database. This isn't affecting our Dashboard, we are using the "Activities (Last 7 days) dashlet and here activities are displaying with the appropriate names. The activity type and subject line are also appearing in the right people's profiles.
![image](/uploads/b7983be921ad26a69c50bb2eefbcbf37/image.png)5.13.3https://lab.civicrm.org/dev/core/-/issues/943When creating a new activity, it double-creates the activity (5.12+)2021-03-22T11:50:00ZtottenWhen creating a new activity, it double-creates the activity (5.12+)Steps to reproduce:
* __Variations__: (a.1) Open site in Chrome; (a.2) Open site in Firefox
* In "Admin => Display Pref", enable AJAX forms. (This is the default.)
* Navigate to "View Contact" for some contact record
* Choose "Actions =...Steps to reproduce:
* __Variations__: (a.1) Open site in Chrome; (a.2) Open site in Firefox
* In "Admin => Display Pref", enable AJAX forms. (This is the default.)
* Navigate to "View Contact" for some contact record
* Choose "Actions => Meeting"
* In the dialog, enter a "Subject"
* __Variations__: (b.1) Use the mouse-pointer to click the "Save" button; (b.2) Press "Enter" to submit.
* __Observe__: The dialog will close. One activity *should* be created. However, depending on the variation of procedure and the revision of code, there may be two activities created.
Additional notes:
* Observed on 5.12, 5.13, and master using `drupal-clean` build type. But 5.11 seemed OK.
* At first, it seemed a bit random - so one may need to retry a couple times to reproduce it. However, I think I've narrowed it down:
* The problem *does* manifest if you submit the AJAX form by using the mouse-pointer to click the "Save" button
* The problem does *not* manifest if you submit the AJAX form by using the keyboard to press "Enter".
* The problem does *not* manifest with traditional/non-AJAX/full-page forms.
* On 5.12, reverting https://github.com/civicrm/civicrm-core/pull/13342/ fixes the issue. (I've not yet tried reverting on 5.13 or master.)
* (*Note: Should re-check this. At the time when this was tested, I hadn't figured out that it was appropriate to control for keyboard "Enter" versus mouse "Save".*)
* On 5.13, applying https://github.com/civicrm/civicrm-core/pull/14196/commits/0b35176b3eaef3710d40b3c6ab7a0ff83eaf722b or
https://github.com/civicrm/civicrm-core/commit/bd756b532fae718ed3516ec49d7baf914acc0a56 does not produce better errors or fix the issue. (So I think they're dealing with a different aspect of submitOnce)
Related history: There have been several patches/issues in this space in recent months. Here's a snapshot at the time of writing:
* **Make submitOnce() button js into a button parameter** (no gitlab)
* [(PR 13333)](https://github.com/civicrm/civicrm-core/pull/13333) **Make submitOnce() button js into a button parameter** (Dec 20 - Feb 7) (*First Published: 5.12.0*)
* [(PR 13342)](https://github.com/civicrm/civicrm-core/pull/13342) **Remove activitystatus js. Add submitOnce handler for activity create** (Dec 21 - Feb 11) (*First Published: 5.12.0*)
* [(dev/core#903)](https://lab.civicrm.org/dev/core/issues/903) **When adding activity, a double click submits twice** (Apr 26-29) (*Closed dupe as resolved ^^^*)
* [(dev/core#904)](https://lab.civicrm.org/dev/core/issues/904) **PR 13333 breaks the Save and New button on a new case**
* [(PR 14145)](https://github.com/civicrm/civicrm-core/pull/14145) **undo part of 13333** (Apr 26-29) (*First published: 5.13.0*)
* [(dev/core#914)](https://lab.civicrm.org/dev/core/issues/914) **submitOnce revisited** (Apr 29-now)
* [(PR 14196)](https://github.com/civicrm/civicrm-core/pull/14196) **avoid multiple submitOnce buttons until better way** (May 1-now) (*Not yet merged*)5.14.1https://lab.civicrm.org/dev/core/-/issues/944Report doesn't show value for disabled options in results2022-11-01T05:03:33ZyashodhaReport doesn't show value for disabled options in resultsSteps to replicate:
* Create a contribution with custom data *Donor Information* with field *How long have you been a donor?* with seleted option *Less than 1 year*
* Disable *Less than 1 year* option.
* The option should still be pre...Steps to replicate:
* Create a contribution with custom data *Donor Information* with field *How long have you been a donor?* with seleted option *Less than 1 year*
* Disable *Less than 1 year* option.
* The option should still be present in report results though not on edit/create screens.
I was able to replicate this on dmaster as well. It is confusing to the users who may have disabled some options due to not being valid anymore(legacy options), but still would want to see them in search results.
Thoughts?