Development issueshttps://lab.civicrm.org/groups/dev/-/issues2023-10-30T05:03:24Zhttps://lab.civicrm.org/dev/core/-/issues/2988Civi Scss compliler is autoloaded, and its (old) verion conflict with more re...2023-10-30T05:03:24ZjbonlineaCivi Scss compliler is autoloaded, and its (old) verion conflict with more recent ones causing fatail errorsHi there,
It seems there is a issue / conflict between CiviCRM Scss compiler and my wordpress theme (gantry 5) Scss compiler.
We've discussed it [here](https://chat.civicrm.org/civicrm/pl/mfsmpmhewjyd7p7srbe1h9cyfa) where I've linked w...Hi there,
It seems there is a issue / conflict between CiviCRM Scss compiler and my wordpress theme (gantry 5) Scss compiler.
We've discussed it [here](https://chat.civicrm.org/civicrm/pl/mfsmpmhewjyd7p7srbe1h9cyfa) where I've linked what put me on track to think is was due to Civi Scss compiler.
A workaround is to rename the folder `civicrm/civicrm/vendor/scssphp`
Let me know if you want more detail
Cheers
PHP 7.4
WP 5.8.2
Civi 5.40.2
Gantry 5.5.6 (theme I use that also bundle an scss compiler, but there are many others)https://lab.civicrm.org/dev/core/-/issues/3225SearchKit/Form: exposing a Date custom field has invalid year range2022-04-22T15:51:14ZbgmSearchKit/Form: exposing a Date custom field has invalid year rangeTo reproduce on dmaster:
1) Create a new Custom Field (ex: Lucky Day), type 'Date', searchable, by range.
![image](/uploads/06c2a53ea2ca237bf3b1e2a6332dc5cd/image.png)
Optionally you can update a contact, so that at least one has a Lu...To reproduce on dmaster:
1) Create a new Custom Field (ex: Lucky Day), type 'Date', searchable, by range.
![image](/uploads/06c2a53ea2ca237bf3b1e2a6332dc5cd/image.png)
Optionally you can update a contact, so that at least one has a Lucky Day, but it is not a requirement to reproduce the bug. For extra luck, I used 2021-08-13.
2) Create a SearchKit that lists Contacts, and display the field
3) Create a Form for that Search, and expose the Lucky Day field as a filter. Give the form an URL to view the page.
![image](/uploads/5ee592a6a1b483797d01b8712eb68761/image.png)
Then go view the form, and notice how the date filter only lets you select dates in 2021:
![image](/uploads/b7ce2b3f40df756fb8347586a9c4d0b4/image.png)
If you go back to the custom field configuration, and set a number of years in the "Dates may be up to" prior/after, then the filter works correctly. However, having these fields empty usually means that there are no restrictions (or they default to -20/+10 years).5.46.0https://lab.civicrm.org/dev/core/-/issues/2986PCP: Account creation profile does not support contact image2023-10-28T05:03:27ZKurund JalmiPCP: Account creation profile does not support contact image## Steps to replicate
* Create a profile with contact image field (Image URL)
* Include this profile as a part of PCP account creation process
* Contact image is never uploaded.## Steps to replicate
* Create a profile with contact image field (Image URL)
* Include this profile as a part of PCP account creation process
* Contact image is never uploaded.https://lab.civicrm.org/dev/core/-/issues/2985Original value is displayed after setting custom event field blank2023-01-21T04:07:10ZBobSOriginal value is displayed after setting custom event field blankOverview
----------------------------------------
Attempting to change the value of a custom event field from non-blank to blank results in the original value being populated in the form after the form is saved. If the form is subsequent...Overview
----------------------------------------
Attempting to change the value of a custom event field from non-blank to blank results in the original value being populated in the form after the form is saved. If the form is subsequently saved again, then the original non-blank value is written to the DB.
Reproduction steps
----------------------------------------
1. Create a custom event fieldset.
1. Add a custom field of type Alphanumeric, Single line input field. Accept all default settings.
1. Edit an event.
1. Set the new custom field to a non-blank value and save the event.
1. Set the new custom field to a blank value and save the event.
Current behaviour
----------------------------------------
The custom field displays the non-blank value. If the form is saved, the blank value currently in the DB is overwritten with the non-blank value.
Expected behaviour
----------------------------------------
The custom field should display the last saved value: blank.
Environment information
----------------------------------------
<!-- Some of the items below may not be relevant for every bug - if in doubt please include more information than you think is neccessary. -->
* __Browser:__ Chrome Version 96.0
* __CiviCRM:__ _5.45.alpha1_ <!-- If this problem relates to an upgrade, then specify both old and new versions -->
* __PHP:__ _7.4_
* __CMS:__ _Drupal 7.82_
* __Database:__ _MariaDB 10.4_
* __Web Server:__ _Apache 2.4_
Comments
----------------------------------------
Confirmed on dmaster.demo.civicrm.org5.59.0https://lab.civicrm.org/dev/core/-/issues/2984APIv4: Confusing error when calling CaseType API2021-12-09T21:08:05ZtottenAPIv4: Confusing error when calling CaseType APIOverview
----------------------------------------
`CaseType.get` API has a confusing disposition.
Reproduction steps
----------------------------------------
1. Disable CiviCase
1. Call `cv api4 CaseType.get`
Current behavior
--------...Overview
----------------------------------------
`CaseType.get` API has a confusing disposition.
Reproduction steps
----------------------------------------
1. Disable CiviCase
1. Call `cv api4 CaseType.get`
Current behavior
----------------------------------------
The call to `CaseType.get` begins executing - but it fails in the middle of query-building.
```
cv api4 CaseType.get -v
Entity: CaseType
Action: get
Params: {
"version": 4,
"checkPermissions": false
}
[Symfony\Component\Debug\Exception\FatalThrowableError]
Type error: array_merge(): Argument #1 must be of type array, null given
Exception trace:
() at /home/m/bknix/build/tmp/web/sites/all/modules/civicrm/Civi/Api4/Query/Api4SelectQuery.php:223
array_merge() at /home/m/bknix/build/tmp/web/sites/all/modules/civicrm/Civi/Api4/Query/Api4SelectQuery.php:223
Civi\Api4\Query\Api4SelectQuery->buildSelectClause() at /home/m/bknix/build/tmp/web/sites/all/modules/civicrm/Civi/Api4/Query/Api4SelectQuery.php:149
Civi\Api4\Query\Api4SelectQuery->getSql() at /home/m/bknix/build/tmp/web/sites/all/modules/civicrm/Civi/Api4/Query/Api4SelectQuery.php:165
Civi\Api4\Query\Api4SelectQuery->run() at /home/m/bknix/build/tmp/web/sites/all/modules/civicrm/Civi/Api4/Generic/DAOGetAction.php:111
Civi\Api4\Generic\DAOGetAction->getObjects() at /home/m/bknix/build/tmp/web/sites/all/modules/civicrm/Civi/Api4/Generic/DAOGetAction.php:99
Civi\Api4\Generic\DAOGetAction->_run() at /home/m/bknix/build/tmp/web/sites/all/modules/civicrm/Civi/Api4/Provider/ActionObjectProvider.php:68
Civi\Api4\Provider\ActionObjectProvider->invoke() at /home/m/bknix/build/tmp/web/sites/all/modules/civicrm/Civi/API/Kernel.php:149
Civi\API\Kernel->runRequest() at /home/m/bknix/build/tmp/web/sites/all/modules/civicrm/Civi/Api4/Generic/AbstractAction.php:234
Civi\Api4\Generic\AbstractAction->execute() at /home/m/bknix/build/tmp/web/sites/all/modules/civicrm/api/api.php:85
civicrm_api4() at phar:///home/m/bknix/bin/cv/src/Command/Api4Command.php:145
Civi\Cv\Command\Api4Command->execute() at phar:///home/m/bknix/bin/cv/vendor/symfony/console/Command/Command.php:257
Symfony\Component\Console\Command\Command->run() at phar:///home/m/bknix/bin/cv/vendor/symfony/console/Application.php:850
Symfony\Component\Console\Application->doRunCommand() at phar:///home/m/bknix/bin/cv/vendor/symfony/console/Application.php:193
Symfony\Component\Console\Application->doRun() at phar:///home/m/bknix/bin/cv/src/Application.php:46
Civi\Cv\Application->doRun() at phar:///home/m/bknix/bin/cv/vendor/symfony/console/Application.php:124
Symfony\Component\Console\Application->run() at phar:///home/m/bknix/bin/cv/src/Application.php:15
Civi\Cv\Application::main() at phar:///home/m/bknix/bin/cv/bin/cv:27
require() at /home/m/bknix/bin/cv:14
```
Expected behavior
----------------------------------------
Either:
* Allow `CaseType` API calls to work. Return the list of case types.
* OR... Disallow `CaseType` API calls. Give a clear error; eg
* `CaseType.get API is unavailable.`
* `Cannot process request. CiviCase is disabled.`https://lab.civicrm.org/dev/core/-/issues/2983On "My Contact Dashboard", what is the Manage Case link in the relationships ...2024-02-26T05:03:22ZDaveDOn "My Contact Dashboard", what is the Manage Case link in the relationships section supposed to do?At civicrm/user, in the relationships section, if you have a relationship to a case there's a link under More at the right that says Manage Case. But clicking it does nothing. Also there's an error on the page because it's trying to crea...At civicrm/user, in the relationships section, if you have a relationship to a case there's a link under More at the right that says Manage Case. But clicking it does nothing. Also there's an error on the page because it's trying to create the link as CRM_Core_Action::NONE but there is no offset 0 in the $links array, but I'm not sure if that's the full reason it fails.
It looks like it's supposed to do a popup-y version of manage case? Except it looks like the link if it were working would be e.g. civicrm/case/ajax/details?caseId=1&cid=3&snippet=4, which just gives a little table.
I'm just wondering if it's worth trying to fix or to just remove it. I have no idea when it broke - never even knew it existed.https://lab.civicrm.org/dev/core/-/issues/2981Pledge improvements2023-11-15T05:03:18ZyashodhaPledge improvementsCiviPledge improvements
-------------------------
There are frequent discrepancies between received and pledged payments, the following specifications detail each of the suggested improvements.
Technical Specifications
-----------------...CiviPledge improvements
-------------------------
There are frequent discrepancies between received and pledged payments, the following specifications detail each of the suggested improvements.
Technical Specifications
-------------------------
- Delete pledge behavior
When a pledge is deleted, currently all associated payments are also deleted. Instead, only delete the records in the civicrm_pledge and civicrm_pledge_payment tables.
- Unlink pledge payment
In the View Payment pop-up window associated with a pledge payment, add a button ‘Unlink’ next to the ‘Delete’ button.
![unlink](/uploads/9844b5fdddc9456508af0560266d5f12/unlink.png)
Pressing this button will reset the pledge_payment record (ie. reset contribution_id, actual_amount, and status_id fields to blank/null), but not delete the contribution itself.
- Delete scheduled payment
In the Edit Scheduled Payment pop-up window associated with scheduled pledge payments, add a button ‘Delete’ next to the ‘Save’ button.
![del](/uploads/4c5aa52d6d471d8ebfd583720b1bb969/del.png)
Pressing this button will delete the scheduled pledge payment and reduce the pledge amount (ie. civicrm_pledge.amount) by the corresponding amount.
- Add scheduled payment
In the Edit Scheduled Payment pop-up window associated with scheduled pledge payments, add a button ‘Save and New’ next to the ‘Save’ button.
![add](/uploads/1fcb8f2ee9bb03e91745bdc842b15398/add.png)
Pressing this button will save the existing screen and reset it to create a new Scheduled Payment. The Scheduled Date is preset to one period after the last scheduled payment, and the amount the same as the original scheduled amount (ie. all calculated from the information in the civicrm_pledge record, we are basically extending by one installment).
UI behaviours:
- [ ] Pressing Save and New, then Cancel should not create a new scheduled payment
- [ ] Pressing Save and New, then Delete should not result in an error
Adding a scheduled pledge payment needs to augment the pledge amount by the amount of the new scheduled payment.
- Link Existing payment
In the Edit Scheduled Payment pop-up window associated with scheduled pledge payments, add a selector in order to link unmatched existing payments with this scheduled payment.
![link](/uploads/f35e26f50f5f4660602f2db553cd00c2/link.png)
The drop-down is populated with all completed, non-test payments from the same contact that are not linked to any pledge payments through the civicrm_pledge_payment table.
Each payment is displayed as: {date} {financial_type} {amount}
UI behaviours:
- [ ] When selecting a payment, protect the scheduled amount control and replace the scheduled amount with the contribution amount
- [ ] If the payment amount is not the same as the scheduled amount, then open the controls below Adjust Selected Amount and pre-select first option:
![link1](/uploads/922fbce25b325334d4fa87cd43e58379/link1.png)
- [ ] The Save action will trigger updates the same schedule / amount / adjustment updates to the civicrm_pledge_payment record, but also link with any selected payment (ie. fields contribution_id, actual_amount and status_id).
- [ ] Resetting the Link with Payment drop-down to “ -- select --” will restore the Scheduled Amount control to the initially scheduled amount and close the Adjustment controls.yashodhayashodhahttps://lab.civicrm.org/dev/core/-/issues/2980Automated Messages (mostly) don't respect is_active, default2022-04-07T15:07:59ZJonGoldAutomated Messages (mostly) don't respect is_active, defaultMany automated messages (unsubscribe, resubscribe, etc.) ignore the "is_default" and "is_active" flags on `civicrm_mailing_component`.
### Steps to Replicate
* Go to **Mailings » Headers, Footers, Automated Messages**.
* Disable the Uns...Many automated messages (unsubscribe, resubscribe, etc.) ignore the "is_default" and "is_active" flags on `civicrm_mailing_component`.
### Steps to Replicate
* Go to **Mailings » Headers, Footers, Automated Messages**.
* Disable the Unsubscribe message.
* Unsubscribe from a mailing.
### Expected Behavior
No email.
### Actual Behavior
Email.
Once I dug in, I saw that *some* code was filtering for is_active/is_default, but the copy/paste nature meant most weren't. I refactored the automated messages to take advantage of a common retrieval function.JonGoldJonGoldhttps://lab.civicrm.org/dev/core/-/issues/2979Proposal to remove the limit of 15 max values for multiple values can also be...2021-12-09T16:28:04ZyashodhaProposal to remove the limit of 15 max values for multiple values can also be retrieved from url in reportsWe send the parameters as string so that multiple values can also be retrieved from url in reports
for e.g url like - "memtype_in=in&memtype_value=1,2,3
However, there is a restriction for 15 values esp when you search for activity type...We send the parameters as string so that multiple values can also be retrieved from url in reports
for e.g url like - "memtype_in=in&memtype_value=1,2,3
However, there is a restriction for 15 values esp when you search for activity types which can be numerous. In this this case, if the values exceeds 15 the criteria are not respected.
Proposal to remove the limit of 15 max values.
https://github.com/civicrm/civicrm-core/blob/master/CRM/Report/Utils/Get.php#L1735.46.0yashodhayashodhahttps://lab.civicrm.org/dev/core/-/issues/2978usability: checkboxes weren't visible until I added a valid URL in formbuilder2023-10-28T05:03:26ZMichael McAndrewusability: checkboxes weren't visible until I added a valid URL in formbuilder![image](/uploads/160c8b7d3d79a06624b36be8754b2a38/image.png)
I was trying to work out how to make a form accessible from the front end of a site.
The checkbox I was looking for was hidden until I added a valid URL which is bad for dis...![image](/uploads/160c8b7d3d79a06624b36be8754b2a38/image.png)
I was trying to work out how to make a form accessible from the front end of a site.
The checkbox I was looking for was hidden until I added a valid URL which is bad for discoverability of functionality.
It might be better handled in validation.
See https://chat.civicrm.org/civicrm/pl/zswjsq6hgfftfda1o5asg8wxyh for more.https://lab.civicrm.org/dev/core/-/issues/2977When adding custom data set change default selected option2021-12-14T22:43:19ZBarijohnWhen adding custom data set change default selected optionOverview
----------------------------------------
Currently when adding a custom data set I always swap the default settings for showing the set. So I untick the Collapse this set on initial display and tick Collapse this set in Advanced...Overview
----------------------------------------
Currently when adding a custom data set I always swap the default settings for showing the set. So I untick the Collapse this set on initial display and tick Collapse this set in Advanced Search.
In my experience if I kept the default settings my Advanced Search can get out of control quite quickly but when looking at a summary page I have to keep clicking to open up the data set.
Current behaviour
----------------------------------------
![Screenshot_2021-12-02_at_13.32.34](/uploads/0ddb75a1bfa2571771c69fdd1a923e17/Screenshot_2021-12-02_at_13.32.34.png)
Proposed behaviour
----------------------------------------
![Screenshot_2021-12-02_at_13.32.57](/uploads/3de94103ee8053082d5da96bac3f092c/Screenshot_2021-12-02_at_13.32.57.png)
Comments
----------------------------------------
This might be something unique to how I like to set custom data sets up. So would be good to find the community consensus.5.46.0https://lab.civicrm.org/dev/core/-/issues/2975Drupal8/composer: upgrading do not move vendor files to the library folder2024-03-25T05:03:19ZcalbasiDrupal8/composer: upgrading do not move vendor files to the library folderOverview
----------------------------------------
I've upgraded from civicrm 5.36 to 5.43 using composer. I have no composer nor database errors but website menu, panels, etc. are not shown.
It seems some library files are missing on l...Overview
----------------------------------------
I've upgraded from civicrm 5.36 to 5.43 using composer. I have no composer nor database errors but website menu, panels, etc. are not shown.
It seems some library files are missing on libraries folder (but not at vendor folder). Copying some of them from vendor to library folder solves inspector errors...
Reproduction steps
----------------------------------------
1. Upgrade the code:
- composer update civicrm/civicrm-{core,packages,drupal-8} --with-dependencies
- update database
Current behaviour
----------------------------------------
Website don't load menu, panels, floating panels. Just the most basic info (html).
The inspector show errors (a couple of library files are missing)
```
The resource from “https://my_domain/libraries/civicrm/core/ang/resetLocationProviderHashPrefix.js?r=ZdPSJ” was blocked due to MIME type (“text/html”) mismatch (X-Content-Type-Options: nosniff).
The resource from “https://my_domain/libraries/civicrm/core/js/crm-angularjs-loader.js?r=ZdPSJ” was blocked due to MIME type (“text/html”) mismatch (X-Content-Type-Options: nosniff).
The resource from “https://my_domain/libraries/civicrm/core/ang/resetLocationProviderHashPrefix.js?r=ZdPSJ” was blocked due to MIME type (“text/html”) mismatch (X-Content-Type-Options: nosniff).
Loading failed for the <script> with source “https://my_domain/libraries/civicrm/core/ang/resetLocationProviderHashPrefix.js?r=ZdPSJ”.
The resource from “https://my_domain/libraries/civicrm/core/js/crm-angularjs-loader.js?r=ZdPSJ” was blocked due to MIME type (“text/html”) mismatch (X-Content-Type-Options: nosniff).
```
After copy the missing errors:
```
cp js/crm-angularjs-loader.js /var/www/my_website/web/web/libraries/civicrm/core/js/
cp resetLocationProviderHashPrefix.js /var/www/my_website/web/web/libraries/civicrm/core/ang/
```
I think the composer info is OK:
```
"extra": {
"installer-paths": {
"web/core": ["type:drupal-core"],
"web/libraries/{$name}": ["type:drupal-library"],
```
In fact, vendor/civicrm/civicrm-core has updated files, but not /libraries/civicrm/core
Environment information
----------------------------------------
* __CiviCRM:__ _5.43.2_ <!-- If this problem relates to an upgrade, then specify both old and new versions -->
* __OS:__ _Debian 10__
* __PHP:__ _7.3__
* __CMS:__ _Drupal 8 (updated version)..._
* __Database:__ _MariaDB_
* __Web Server:__ _Apache 2_https://lab.civicrm.org/dev/core/-/issues/3251Searchkit: OptionValue search with a WHERE clause for option group returns 0 ...2022-04-22T15:52:42ZDaveDSearchkit: OptionValue search with a WHERE clause for option group returns 0 resultsThis worked the first time I tested https://github.com/civicrm/civicrm-core/pull/22081 two weeks ago, so has broken some time in between.
It looks like the query does this, mixing up `name` and `value`:
```
"where": [
[
"opti...This worked the first time I tested https://github.com/civicrm/civicrm-core/pull/22081 two weeks ago, so has broken some time in between.
It looks like the query does this, mixing up `name` and `value`:
```
"where": [
[
"option_group_id:name",
"=",
"2"
]
],
```5.44.0https://lab.civicrm.org/dev/core/-/issues/2972track CiviMail metrics by mailing group2023-10-24T05:03:27Zhescotrack CiviMail metrics by mailing groupOverview
----------------------------------------
_Please describe your improvement in detail._
As a user of CiviMail, when examining the delivery and performance metrics on a mailing which was sent to multiple mailing groups, I should ...Overview
----------------------------------------
_Please describe your improvement in detail._
As a user of CiviMail, when examining the delivery and performance metrics on a mailing which was sent to multiple mailing groups, I should be able to exclude mailing groups from the metrics for that mailing to observe how each mailing group a recipient of a mailing is performing. In the recipients section of the report, each group should be associated with a checkbox which will control whether an included (or excluded ???) group is accounted for in the metrics displayed in a view of the report.
Example use-case
----------------------------------------
At this url, and those which I can drill down to from here:
/civicrm/mailing/report?mid=${mailing_id}&reset=1
by toggling on or off checkboxes and hitting a refresh button, I should be able to update a the metrics on the report view; and any view accessible by drilling down through the available links and buttons, should clearly indicate which mailing groups are accounted for by the metrics displayed on that drilled-down-to view.
Current behaviour
----------------------------------------
_What is currently possible? What limit ?_
Currently to achieve this level of granularity in the reporting views I have to create multiple mailings, being careful in how I set them up to exclude mailing groups which were included on previous mailings. This works, but is unnecessarily cumbersome to set up; and to track the results, cluttering my browser with multiple open tabs to monitor results on the multiple mailings.
Proposed behaviour
----------------------------------------
_What should happen? How is this better? If appropriate/available, include any wireframes or mockups._
I would rather have a single mailing defined by its content, and the ability to parse the metrics on that mailing by recipient mailing group by toggling checkboxes.
Comments
----------------------------------------
_Anything else you would like the reviewer to note._
Thanks again.https://lab.civicrm.org/dev/core/-/issues/2971file attachments and descriptions should persist across a copy from source t...2023-10-25T05:03:22Zhescofile attachments and descriptions should persist across a copy from source to new bulk emailOverview
----------------------------------------
_Please describe your improvement in detail._
As a user configuring a CiviMail 'bulk email', when I copy a previous email to create a new email, I want the attachments associated with th...Overview
----------------------------------------
_Please describe your improvement in detail._
As a user configuring a CiviMail 'bulk email', when I copy a previous email to create a new email, I want the attachments associated with the previous email to be attached by default to the new email; perhaps with a modal asking me for confirmation that that remains my intention.
Example use-case
----------------------------------------
when I use the copy action for a
previously delivered bulk email, at this url:
/civicrm/mailing/browse/scheduled?reset=1&scheduled=true
or a previously configured bulk email
pending delivery at this url:
/civicrm/mailing/browse/unscheduled?reset=1&scheduled=false
It takes an email configured at this url:
/civicrm/mailing/send?mid=${delivered_or_configured_email_id}&reset=1
using it to create a copy at this url:
/civicrm/mailing/send?mid=${new_email_id}&reset=1
but fails to copy the attachments which may have been
configured as a part of the previously delivered or configured email.
Current behaviour
----------------------------------------
_What is currently possible? What limit ?_
Currently I have to re-upload and re-describe each attachment on the copies.
Proposed behaviour
----------------------------------------
_What should happen? How is this better? If appropriate/available, include any wireframes or mockups._
The file and its description should be copied from the source onto the new bulk email without further human intervention, save possibly confirmation of my intent to persist the attachment by answering a modal prompt.
I often create multiple mailings from the same content so that I get to watch the metrics on each mailing recipient group, isolated from the rest of the mailing.
Comments
----------------------------------------
_Anything else you would like the reviewer to note._https://lab.civicrm.org/dev/core/-/issues/2970A CiviMail template should accept an attachment which persists between uses2023-10-25T05:03:23ZhescoA CiviMail template should accept an attachment which persists between usesOverview
----------------------------------------
_Please describe your improvement in detail._
As a site administrator, when creating a mailing template, I should be able to associate an attachment with a template to avoid the overhead...Overview
----------------------------------------
_Please describe your improvement in detail._
As a site administrator, when creating a mailing template, I should be able to associate an attachment with a template to avoid the overhead of re-uploading and attaching the file to an outbound email every time I use that template.
Example use-case
----------------------------------------
When I am at one of these url's:
/civicrm/admin/messageTemplates/add?action=add&reset=1
/civicrm/admin/messageTemplates/add?action=update&id=${template_id}&reset=1
I should be able to upload and attach a file to the template, and have that file persist on the server to be attached to each and every outbound email I create with that template.
Current behaviour
----------------------------------------
_What is currently possible? What limit ?_
Currently I have to remember to re-upload and re-attach my file EVERY time I re-use a template.
Proposed behaviour
----------------------------------------
_What should happen? How is this better? If appropriate/available, include any wireframes or mockups._
This will avoid redundant work for the person using the template.
Comments
----------------------------------------
_Anything else you would like the reviewer to note._
Thanks again!https://lab.civicrm.org/dev/core/-/issues/2969Resending a CiviMailing to an individual, without creating new mailing2023-10-29T05:03:28ZhescoResending a CiviMailing to an individual, without creating new mailingOverview
----------------------------------------
_Please describe your improvement in detail._
As a user, examining a CiviMailing Report, or an activity related to a contact's record, I would like to resend a previously sent CiviMailin...Overview
----------------------------------------
_Please describe your improvement in detail._
As a user, examining a CiviMailing Report, or an activity related to a contact's record, I would like to resend a previously sent CiviMailing without having to copy it and clutter my archives with multiple versions; and without having to first convert an old mailing into a template.
Example use-case
----------------------------------------
If I am at one of these urls:
/civicrm/mailing/report/event?reset=1&mid=${mailing_id}&event=opened
/civicrm/mailing/report/event?reset=1&mid=${mailing_id}&event=delivered
/civicrm/contact/view?reset=1&cid=5&key=......&context=smog
I would appreciate an action option or some similar means to trigger resending a previously sent 'Bulk Email'. I should have the opportunity to edit the email before it is resent, including the opportunity to add an attachment if necessary. Sending the duplicate should be recorded on the contact record as an activity, perhaps identified as a 'Resent Bulk Email'.
Current behaviour
----------------------------------------
_What is currently possible? What limit ?_
My current work-arounds are to clutter my user generated templates for this purpose; or to forward a copy of the email in question which I may have sent myself, or to copy the previous 'bulk email' from the delivered queue and resend it to only a single recipient, or to send them a test email from a copy of the previously sent CiviMail, and then abandon the copy without saving it to clutter the queue.
Proposed behaviour
----------------------------------------
_What should happen? How is this better? If appropriate/available, include any wireframes or mockups._
Often when I am doing phone follow-up on a contact to an email I had previously sent, it is convenient to resend the email so my contact can find it at the top of their inbox while we are still on the phone. The folks I work with get lots of email and frequently lose track of messages sent even a few days ago.
Comments
----------------------------------------
_Anything else you would like the reviewer to note._
My appreciation for an excellent product you folks have created!https://lab.civicrm.org/dev/core/-/issues/2965APIv4 Explorer, displays the Field Name as the selectable option. However, th...2023-10-23T05:03:22Zjustinfreeman (Agileware)APIv4 Explorer, displays the Field Name as the selectable option. However, the Field Label only is visible in the Custom Fields UI and may be different to the Field NameAPIv4 Explorer, displays the Field Name as the selectable option. However, the Field Label only is visible in the Custom Fields UI and may be different to the Field Name.
SearchKit on the other hand does use the Field Label to list the ...APIv4 Explorer, displays the Field Name as the selectable option. However, the Field Label only is visible in the Custom Fields UI and may be different to the Field Name.
SearchKit on the other hand does use the Field Label to list the available fields.
This can make it very difficult to use the APIv4 Explorer to select the correct fields if:
1. There are a large number of fields, and
2. The Field Name differs from the Field Label
This is a very common occurrence on older CiviCRM sites which tend to have fields that have been renamed over time and have a lot of old fields still active on the site.
My preference would be to always list the Field Label when displaying fields in the APIv4 Explorer.
![Screenshot_20211123_084139](/uploads/b71225e09f100a8e78d2c321a05704d1/Screenshot_20211123_084139.png)
Agileware Ref: CIVICRM-1890https://lab.civicrm.org/dev/core/-/issues/3286When using Form Builder and "Accessible on front-end of website", how do I bo...2022-04-22T15:53:51Zjustinfreeman (Agileware)When using Form Builder and "Accessible on front-end of website", how do I bookmark or return to a search page with the query parameters completed?When using Form Builder and "Accessible on front-end of website", how do I bookmark or return to a search page with the query parameters completed? Re-loading the page resets the previous selection and so all fields must be filled out ag...When using Form Builder and "Accessible on front-end of website", how do I bookmark or return to a search page with the query parameters completed? Re-loading the page resets the previous selection and so all fields must be filled out again.
It would be very useful (and very common) from an end user perspective to be able to bookmark a search form with the required parameters filled out.
Agileware Ref: CIVICRM-1891https://lab.civicrm.org/dev/core/-/issues/2964"DB Error: no such field" in civicrm-core/Civi/ActionSchedule/RecipientBuilde...2023-10-26T05:03:27Zmagnolia61"DB Error: no such field" in civicrm-core/Civi/ActionSchedule/RecipientBuilder.phpI my log files i notice an error when running the scheduled reminder cron for activities.
```
[db_error: message="DB Error: no such field" code=-19 mode=callback callback=CRM_Core_Error::exceptionHandler prefix="" info="INSERT INTO civi...I my log files i notice an error when running the scheduled reminder cron for activities.
```
[db_error: message="DB Error: no such field" code=-19 mode=callback callback=CRM_Core_Error::exceptionHandler prefix="" info="INSERT INTO civicrm_action_log (contact_id, entity_id, entity_table, action_schedule_id)
SELECT r.contact_id as contact_id, e.id as entity_id, "civicrm_activity" as entity_table, 131 as action_schedule_id
FROM civicrm_activity e
INNER JOIN civicrm_contact c ON c.id = r.contact_id AND c.is_deleted = 0 AND c.is_deceased = 0
LEFT JOIN civicrm_action_log reminder ON reminder.contact_id = r.contact_id AND
reminder.entity_id = e.id AND
reminder.entity_table = 'civicrm_activity' AND
reminder.action_schedule_id = 131
WHERE (e.activity_type_id IN (119)) AND (e.status_id IN (4)) AND (e.is_current_revision = 1 AND e.is_deleted = 0) AND (reminder.id IS NULL) AND ('20211121085238' >= DATE_SUB(e.activity_date_time, INTERVAL 16 day)) AND (DATE_SUB(20211121085238, INTERVAL 1 DAY ) <= DATE_SUB(e.activity_date_time, INTERVAL 16 day)) AND ('2020-12-31 23:00:00' <= DATE_SUB(e.activity_date_time, INTERVAL 16 day)) AND ('2022-12-30 23:00:00' > DATE_SUB(e.activity_date_time, INTERVAL 16 day))
[nativecode=1054 ** Unknown column 'r.contact_id' in 'field list']"]
```
I tried to debug a little and think I found that in civicrm-core/CRM/Activity/ActionMapping.php
casContactIdField is defined as r.contact_id
`$query['casContactIdField'] = 'r.contact_id';`
But in the above other query r.contact_id fails because civicrm_action_log has the alias of reminder and not 'r'
Not sure what this breaks but it seems something that needs to be fixed