The 10 years old solution seems to be the best one, have you tried and would it be possible to remove the view all contacts permission to your users that should only use the reports?
Otherwise, it shouldn't be too complicated to alter the UI and remove the send email actions on a custom extension, but that would require some coding
You need to also install another extension which is mentioned lower down on the introduction page: https://docs.civicrm.org/civirules/en/latest/#other-useful-extensions-and-modules
You need the Email API: https://civicrm.org/extensions/e-mail-api
I often use 3rd party mailing services (namely mailgun, mandrill but have used others too). You can pay these services a lot to keep all your mail for a while, but the sheer amount of it will always be an issue if you're looking to capture every single mail that goes out.
I have implemented an exim4 configuration that keeps a copy in a local Maildir at ...
Thank you @demerit and @jitendra for your help!
It turns out, the answer is: don't change the label for the Incoming Email activity type :).
The user changed it from Incoming Email to just Email. Changing the label should definitely not break things - but since this issue is still open, it does.
So, in the short term, I'll change the label back. In the ...
If it's your current MTA, Postfix has an option to BCC all emails to an address: always_bcc
More complex solutions can be implemented.
Another option if it needs to be accessible to staffers is an extension that instead of auto-adding a bcc to all emails, logs them as an activity of some new type. Then either in the same extension or via something like https://github.com/JMAConsulting/biz.jmaconsulting.activitytypeacl, restrict viewing those activities to admins. It might have similar ...
From an admin (non-sysadmin) perspective, the extension invoicehelper has options to automatically cc/bcc specific emails, notably for offline membership/contribution emails.
It does not handle the simple "Send Email" form, however. And one thing I get asked often, is that when viewing emails sent (activities), it should display who was CC'ed/BCC'ed. For ...
In civicrm.settings.php there's some settings to log it all to a file. See https://docs.civicrm.org/dev/en/latest/tools/debugging/#changing-file-based-settings
Take out the $ signs. Smarty variables use $ signs, tokens don't. It is a little bit awkward when they're mixed in the same template.
I don't know the legal answer to the other part of the question, but bulk mailings include it by default.
I wrote an extension to do this called altinvoice. You can set relationship types to receive a copy of the invoice. E.g. "When I invoice this organization, also send a copy to anyone with the relationship type of 'Billing Contact' or 'Site Coordinator'".
You can include token in any message template. The system workflow message template doesn't show editor hence you will need to add content in html format. But the normal message template does show ckeditor, if you want to provide a link to a text you can click on button on ck editor option bar and add url with contact check sum.
Regarding Thankyou footer, ...
This is fixed in 5.21. If you want to apply the patch now it's a small patch:
In fact for a quick temporary fix all you need to do is change that line 58 from
$part = idn_to_ascii($part, 0, INTL_IDNA_VARIANT_UTS46);
$part = idn_to_ascii($part);
More info: https://lab.civicrm.org/dev/core/...