Development issueshttps://lab.civicrm.org/groups/dev/-/issues2022-06-11T14:55:06Zhttps://lab.civicrm.org/dev/core/-/issues/3592(MOVED) [Feature] Please give us the option to disable subtotals for Soft Cre...2022-06-11T14:55:06Zswebervna(MOVED) [Feature] Please give us the option to disable subtotals for Soft Credit Contribution ReportsIssue moved to: https://lab.civicrm.org/dev/report/-/issues/51Issue moved to: https://lab.civicrm.org/dev/report/-/issues/51https://lab.civicrm.org/dev/core/-/issues/3591Public view link for draft mailing is visible to public before mailing is sen...2023-06-04T14:17:12ZlolcodePublic view link for draft mailing is visible to public before mailing is sent and even before it is completeIt doesn't seem quite right that the mailing is public even when it is in draft state.
Of course a bot or interested party would need to be cycling through mailing ids to access it.
It also shows even if the mailing is clearly not compl...It doesn't seem quite right that the mailing is public even when it is in draft state.
Of course a bot or interested party would need to be cycling through mailing ids to access it.
It also shows even if the mailing is clearly not complete. For example if the user doesn't select a mailing header before saving the draft then viewing the public page can also result in errors such as `Error: Call to a member function headers() on null in civicrm_api3_mailing_preview() (line 597 of /sites/all/modules/civicrm/api/v3/Mailing.php).`https://lab.civicrm.org/dev/core/-/issues/3590Email to activity processing - creates duplicate contacts where verp is present2024-01-29T09:59:12ZeileenEmail to activity processing - creates duplicate contacts where verp is presentWhen contacts reply to a civimail from mail@domain.com they use the verp reply to - eg.
mail+r.2057.84206.03323c082c189038@domain.com
The address mail@domain.com exists in the db but a new contact is created rather than matching themWhen contacts reply to a civimail from mail@domain.com they use the verp reply to - eg.
mail+r.2057.84206.03323c082c189038@domain.com
The address mail@domain.com exists in the db but a new contact is created rather than matching themhttps://lab.civicrm.org/dev/core/-/issues/3588Token unsubscribeUrl seemingly resolves to optOutUrl2022-06-11T14:55:01ZmarcelklehrToken unsubscribeUrl seemingly resolves to optOutUrlWhen using the action.unsubscribeToken in a mailing, the resulting URL prompts the user to confirm unsubscribing from all existing newletters instead of just the one that the link came with.When using the action.unsubscribeToken in a mailing, the resulting URL prompts the user to confirm unsubscribing from all existing newletters instead of just the one that the link came with.https://lab.civicrm.org/dev/core/-/issues/3585Mosaico Hangs2022-06-11T14:54:54ZGrowMosaico HangsWe are suddenly experiencing a problem with Mosaico.
The grey bar appears at bottom of screen, "Save" button at top right disappears, and templates and designing/templates on left of screen remains frozen.
![image](/uploads/0ac8e12522b3...We are suddenly experiencing a problem with Mosaico.
The grey bar appears at bottom of screen, "Save" button at top right disappears, and templates and designing/templates on left of screen remains frozen.
![image](/uploads/0ac8e12522b3d175cb95ab16973c43e1/image.png)
Are there any known issues that have come up since recent updates either to Civi or Mosaico?
- CMS: WordPress (latest)
- Plugins (all updated)
- Browser: Chrome (latest)
- Civi Extensions - Documenten (does not want to upgrade - might need to remove it)
thankshttps://lab.civicrm.org/dev/core/-/issues/3583Incorrect Total Count on mail summary report2022-06-11T14:54:52ZMonish DebIncorrect Total Count on mail summary reportWhen you visit the mail summary report, the `Total Count` is incorrect which includes the open count of all mailings, instead of its corresponding mail.
Here's the screenshot to show the difference in count.
Mailing Summary report(sho...When you visit the mail summary report, the `Total Count` is incorrect which includes the open count of all mailings, instead of its corresponding mail.
Here's the screenshot to show the difference in count.
Mailing Summary report(shows incorrect `Total opens` count which is 6):
![Screen_Shot_2018-06-01_at_5.29.57_PM](/uploads/24f196c6e8f88d138b4e557b8c52572a/Screen_Shot_2018-06-01_at_5.29.57_PM.png)
Mailing Status page(shows correct `Total Opens` count which is 5):
![Screen_Shot_2018-06-01_at_5.28.48_PM](/uploads/741cb845269b8f408fe535b0ab080528/Screen_Shot_2018-06-01_at_5.28.48_PM.png)5.3.0Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/3581Email to activity processing: New feature to skip emails which do not have a ...2022-06-11T14:54:48ZJamie Novick - CompucoEmail to activity processing: New feature to skip emails which do not have a Case ID or Case token- As a CiviCRM administrator
- I would like to configure whether CiviCRM will process emails without a case ID (or case “token”) in the subject line
- so that I can ensure that emails which do not have a case ID are not filed on the con...- As a CiviCRM administrator
- I would like to configure whether CiviCRM will process emails without a case ID (or case “token”) in the subject line
- so that I can ensure that emails which do not have a case ID are not filed on the contact record outside the case by accident.
**How it works currently**
For those a little less familiar with email to activity processing:
CiviCRM will connect to a users MS exchange mailbox and create the following folder structure:
- Inbox
- /CiviCRM
- //CiviMail
- ///ignored
- ///processed
Notes:
- Users simply copy or move emails into the /civicrm folder in their inbox. CiviCRM has a scheduled job that can be configured to run periodically (say every hour) and poll the mailbox folder (Civimail) by IMAP in order to read and process the emails.
- By default CiviCRM will match any email from, to, cc fields to contacts in the CRM and file the email as an activity against those contacts (including recording any attachments as files).
- If however there is a case ID in the subject line (or a case ID "token"*) then CiviCRM will instead file the email straight onto the case itself. The format is: [case #1234] (see: https://issues.civicrm.org/jira/browse/CRM-21446)
- If the email is processed successfully it will be moved to the processed folder.
- If for any reason CiviCRM cannot file the email it will be moved to the ignored folder. This normally happens if the email address is invalid for some reason (please note: emails that are sent internally between staff on exchange server can sometimes have this problem as exchange doesn't always use the external email address but instead uses some local username/domain combination - this maybe something to test and see if it maybe a problem for NEU).
- Note: *When sending out emails from CiviCRM from CiviCase it appends a case ID token - which is a string of characters and not the exact Case ID. This is done to obscure the case ID number in the email. In effect you can have either this token or the case id in the subject line and CiviCRM will file the email correctly.
- More background: https://docs.civicrm.org/sysadmin/en/latest/setup/civimail/inbound/#autofiling-email-activities-via-emailprocessor
**Problem**
For multiple clients they want to use email to activity processing for their casework teams. However sometimes they forget to add the case ID to the subject line of the email and the system incorrectly files the email outside the case - which is a "security" risk as the emails can be sensitive.
As such they would like to be able to specify that the emails being filed from the casework team inbox will only be filed if there is a valid Case ID in the subject line and are skipped if not, and hence there is no risk of the email being filed outside of the case.
**Proposed improvement**
Approach:
When "Used For?" = Email to activity processing
Show an additional option:
- Skip emails which do not have a Case ID or Case token:
- Checkbox
- Help text:
- CiviCRM has functionality to file emails which contain the Case ID or Case Hash in the subject line in the format [case #1234] against a case record.
- Where the Case ID or Case Hash is not included CiviCRM will file the email against the contact record, by matching the email addresses on the email with any email addresses of Contact records in CiviCRM.
- Enabling this option will have CiviCRM skip any emails that do not have the Case ID or Case Hash so that the system will only process emails that can be placed on case records.
- Any emails that are not processed will be moved the ignored folder.
- Default null
- If checked:
- Emails which do not have a valid case ID or case token should be moved into the “ignored” folder. (See folders above) after processing and no Activity should be created.
Would be great to know if we can get the magical "concept approved" flag.
We need to work on this quite urgently so if there are no great concerns that would be much appreciated...5.31.0https://lab.civicrm.org/dev/core/-/issues/3580Created date uses UTC but scheduled, started, and completed use the site's ti...2022-06-11T14:54:46ZherbdoolCreated date uses UTC but scheduled, started, and completed use the site's timezoneHere's a screenshot of me creating a test mailing and scheduling it for immediately sending.
![Screenshot_from_2019-06-21_15-48-23](/uploads/3d775a95a2e51d50e3c10abd3d95744d/Screenshot_from_2019-06-21_15-48-23.png)
The created date dis...Here's a screenshot of me creating a test mailing and scheduling it for immediately sending.
![Screenshot_from_2019-06-21_15-48-23](/uploads/3d775a95a2e51d50e3c10abd3d95744d/Screenshot_from_2019-06-21_15-48-23.png)
The created date displays UTC but the scheduled date displays the site timezone. In the db they are stored like this:
![Screenshot_from_2019-06-21_16-03-01](/uploads/f07f0b8266307a7f48fbb3a43b800095/Screenshot_from_2019-06-21_16-03-01.png)
In the database if I set `SET GLOBAL time_zone = '-04:00';` then the two dates match in the Mailings list.
Though oddly enough, both dates are saved in UTC:
![Screenshot_from_2019-06-21_15-59-02](/uploads/d699f87e50125e9214c72a4862f8caa4/Screenshot_from_2019-06-21_15-59-02.png)
--------
Proposal: we should fix the created date so that it respects the site's timezone (like the date fields). I can't figure out if this should be done with the timestamp set or when displaying.https://lab.civicrm.org/dev/core/-/issues/3579Add pause/resume functionality to civicrm bulk mailing.2022-06-11T14:54:43ZjitendraAdd pause/resume functionality to civicrm bulk mailing.Scenario
Site admin is sending out a big blast but want to send out a press release without waiting for first job to end.Scenario
Site admin is sending out a big blast but want to send out a press release without waiting for first job to end.5.4.0https://lab.civicrm.org/dev/core/-/issues/3578Send order when A/B testing2024-02-15T05:03:25ZufundoSend order when A/B testingAs far as I can see current behaviour when processing an A/B test mailing is that CiviMail sends out to all A recipients then all B recipients.
If you have rate limiting on outbound email that is significant relative to your list size, ...As far as I can see current behaviour when processing an A/B test mailing is that CiviMail sends out to all A recipients then all B recipients.
If you have rate limiting on outbound email that is significant relative to your list size, this can result in a significant difference in (average) send time between the A group and the B group, which may then be confounding your A/B test results.
I wonder how hard it would be to implement some kind of interpolation (?) for the sends for an A/B mailing -- something like firing off equal numbers of As and Bs in each mailing batch as they are processed?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/3576Error on Fetch Bounces Scheduled job2022-06-11T14:54:37ZcalbasiError on Fetch Bounces Scheduled jobI get this error:
> Parameters parsed (and passed to API method):
> a:1:{s:7:"version";i:3;}
>
> Full message:
> Finished execution of Fetch Bounces with result: Error, Error message: A fatal error was triggered: No s'ha pogut connec...I get this error:
> Parameters parsed (and passed to API method):
> a:1:{s:7:"version";i:3;}
>
> Full message:
> Finished execution of Fetch Bounces with result: Error, Error message: A fatal error was triggered: No s'ha pogut connectar a MailStore per xxxxx@xxxxx.xxx@xxxxx.xxxxx.xxx
>
> Missatge d'error:
>
> Could not create /var/www/xxx/xxx/xxx/private/xxx/custom//CiviMail.ignored/2019/07/03/cur
But if I fire manually this job, it succeed!
That's why I think it's a bug.
I found a [related issue](https://civicrm.stackexchange.com/questions/4045/email-to-activity-processing-error-message-process-activities-failed)
Pay attention on this Stackexchange reporded issue talk about an error on "second run"
I'm using: CiviCRM 5.10.4.
By the way, I initially tried to use IMAP, but I was not able to connect the mail server, so I've changed to POP3. I don't think it has any relationship, but...https://lab.civicrm.org/dev/core/-/issues/3574Password for mail accounts should not be stored in plain text2024-02-14T05:03:29ZscardiniusPassword for mail accounts should not be stored in plain textMySQL field civicrm_mail_settings.password contains password in plain text. Should it? I think not
This issue could by linked with https://lab.civicrm.org/dev/core/issues/236MySQL field civicrm_mail_settings.password contains password in plain text. Should it? I think not
This issue could by linked with https://lab.civicrm.org/dev/core/issues/236https://lab.civicrm.org/dev/core/-/issues/3573Unsubscribe fails but appears to have worked for resending to previous mailin...2024-02-14T05:03:29ZRichUnsubscribe fails but appears to have worked for resending to previous mailing to search resultsRecreate with 5.2.2 (on Dupal 7)
1. create mailing group A
2. create other group B
4. add contact into group: B
5. do mailing to contacts in group B, using group A as unsubscribe. (i.e. Find » In Group B » Action: create CiviMail mailin...Recreate with 5.2.2 (on Dupal 7)
1. create mailing group A
2. create other group B
4. add contact into group: B
5. do mailing to contacts in group B, using group A as unsubscribe. (i.e. Find » In Group B » Action: create CiviMail mailing)
7. Create and send mailing: sent to recipients of mlg1
8. click unsubscribe.
## Expect
to see confirm form saying "you will be unsubscribed from A" because A was the base group used for the original mailing. (When sending to previous mailing recipients there is no option to select an unsubscribe group)
## Actual
User sees "yes you've been unsubscribed from the mailing group/list" [code ref](https://lab.civicrm.org/dev/core/blob/master/CRM/Mailing/Form/Unsubscribe.php#L71) but nothing has actually happened!https://lab.civicrm.org/dev/core/-/issues/3570When creating a CiviMail it is possible to select this mailing as a "previous...2023-06-26T19:32:24ZlolcodeWhen creating a CiviMail it is possible to select this mailing as a "previous mailing" in the recipients listWhen creating a CiviMail it is possible to select this mailing as a "previous mailing" in the recipients list. I have not tested what it does but it makes no sense from a user point of view.
To reproduce just name the mailing and then o...When creating a CiviMail it is possible to select this mailing as a "previous mailing" in the recipients list. I have not tested what it does but it makes no sense from a user point of view.
To reproduce just name the mailing and then open the recipients list. In fact before the mailing is named it still shows in the list but with the name "null".
![bug-first-mailing](/uploads/ea99f69608bb75993b467f1e77795480/bug-first-mailing.jpg)
![null-mailing](/uploads/61df71ab974462ffded69b02aba4046f/null-mailing.jpg)https://lab.civicrm.org/dev/core/-/issues/3569Specifying a "Selection Method" without a location type gives a DB error2022-06-11T14:54:22ZJonGoldSpecifying a "Selection Method" without a location type gives a DB errorSteps to replicate (demo server is fine):
* Create a new mailing.
* Click the wrench next to "Recipients".
* Set a *Selection Method* other than "Automatic" but do not touch *Location Type*.
* Attempt to submit the mailing (or press the ...Steps to replicate (demo server is fine):
* Create a new mailing.
* Click the wrench next to "Recipients".
* Set a *Selection Method* other than "Automatic" but do not touch *Location Type*.
* Attempt to submit the mailing (or press the "X Recipients" to recalculate immediately).
Expected Result:
You should be warned that this is an invalid combination.
Actual Result:
You will get a "Mailing content is out of date, please refresh" error. When you refresh, it turns into a "DB Error: Syntax Error".
This combination generates invalid SQL - but when I went to fix it, I realized it made no sense to have this particular combination. So we should warn the user what exactly went wrong.
![Selection_1115](/uploads/dc00a95158f196b19e56164dd30dac0a/Selection_1115.png)5.40.0JonGoldJonGoldhttps://lab.civicrm.org/dev/core/-/issues/3568Improve process for creating plain text version of mailing2024-02-13T05:03:24ZMichael McAndrewImprove process for creating plain text version of mailing## Overview
Convert any html contained in tokens to plain text for plain text emails
## Before
HTML in tokens that contained HTML was being outputted to plain text versions of emails.
## After
HTML in tokens is converted to plain te...## Overview
Convert any html contained in tokens to plain text for plain text emails
## Before
HTML in tokens that contained HTML was being outputted to plain text versions of emails.
## After
HTML in tokens is converted to plain text.
## Technical Details
This issue is NOT about generating plain text and HTML versions of tokens. It is about converting an entire email from HTML to plain text when no plain text version is given. This conversion currently proceeds as follows:
1. Check to see if a plain text version has been submitted. If not
2. Convert the HTML to plain text
3. Do token substitution
The problem is that if the token contains html, that HTML persists in the email. The proposed solution is to do the conversion from HTML to plain text after token substitution, i.e.
1. Check to see if a plain text version has been submitted. If not
2. Convert the HTML to plain text
3. Do token substitution
This patch is split between [PR 12061 on core](https://github.com/civicrm/civicrm-core/pull/12061) and [PR 20 on flexmailer](https://github.com/civicrm/org.civicrm.flexmailer/pull/20).
The flexmailer patch will continue to report a single failure until the core patch is merged, at which point we can hopefully run the tests against flexmailer again and merge this patch.
@totten suggested defining tokens with TokenProcessor, whose tokens auto-convert from HTML to plain text and visa versa. However, I am not sure this is going to work for the following reason. When you convert from HTML to plain text (at least with the HTML to plain text converter that we are using) the structure of the text is altered and links appear at the bottom of the converted text. Therefore, if you run multiple conversions, you will get multiple lists of links scattered throughout the email. Best to do html to plain text conversion at the end of the process.
All this is not to say that one shouldn't define plain text and HTML versions of tokens. I think it is fine to do that if you want to. I just think that automatic conversion of HTML to plain text should happen one time only, after the entire email has been assembled.
Note that [PR 12061 on core](https://github.com/civicrm/civicrm-core/pull/12061) removes the check for nofollow in the email html output of the test CRM_Mailing_BaseMailingSystemTest::testHtmlWithOpenAndUrlTracking. The intent of https://issues.civicrm.org/jira/browse/CRM-21768 is not affected. nofollow still appears in the public view (e.g. http://example.org/civicrm/mailing/view) but it is not tested.
I would have added it to a test of civicrm/mailing/view but I could not find any tests there.
This issue was originally discussed here: https://issues.civicrm.org/jira/browse/CRM-21197 and a PR submitted here: https://github.com/civicrm/civicrm-core/pull/10998. But the PR was rejected because it caused issues with Flexmailer.
Also, on the seperate issue of click tracking plain text emails. @totten - you said [here](https://github.com/civicrm/civicrm-core/pull/10998#discussion_r158175327) that you thought it was a significant policy change. It isn't as significant as you think. *Links that are tracked in HTML continue to be tracked in plain text*. Links that are not tracked in HTML (because they were not in an `<a>` tag) are not tracked in plain text either. i.e. there is no significant loss of functionality.https://lab.civicrm.org/dev/core/-/issues/3566Public View link does not show from Scheduled and Sent screen2022-06-11T14:54:15ZseamusleePublic View link does not show from Scheduled and Sent screenWhen you view a list of scheduled and sent mailings you cannot access the Public View url link even tho the code suggests it should be availableWhen you view a list of scheduled and sent mailings you cannot access the Public View url link even tho the code suggests it should be available5.10https://lab.civicrm.org/dev/core/-/issues/3565Event reg error when skipping additional contacts2022-06-11T14:54:14ZMartinEvent reg error when skipping additional contactsWe recently encountered a bug under some fairly specific conditions:
* Doing an event registration
* Multiple participants enabled
* User select >1 participant
* On one of the subsequent participants, chooses the "skip" option
* Att...We recently encountered a bug under some fairly specific conditions:
* Doing an event registration
* Multiple participants enabled
* User select >1 participant
* On one of the subsequent participants, chooses the "skip" option
* Attempts to pay using a real credit card on a live payment gateway (in our case using the iATS extension)
This was on Civi 5.9.1 with Drupal 7.63.
In this situation, we found the following error:
> Warning: Invalid argument supplied for foreach() in CRM_Event_Form_Rgistration_Confirm->cleanMoneyFields() (line 1357 of [drupal root]/sites/all/modules/civicrm/CRM/Event/Form/Registration/Confirm.php).
Creating a pull request to fix in progress.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.