[5.1] Fix attachment handling in libraries Mail class #43828
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Pull Request for Issue # .
Summary of Changes
It is currently not possible to attach a single attachment with the disposition 'inline' to a mail via the Mail library class.
Above all, this means that it is also not possible to send an image as an inline attachment via the Mail class and then simply refer to it via cid.
This means that in the e-mails that are sent when they are received on different clients, the download of the images must first be approved by the user before they are visible.
The changes in the Mail class address issues with attachment handling. Specifically:
addAttachment
method includes the$disposition
parameter in all cases.$name
is an array before comparing its count with$path
.Testing Instructions
Set the option
Mail Format
-> HTML in Global Configuration -> Mail TemplatesAdd the following lines of code (only!) for testing into the file 'libraries/src/Mail/MailTemplate.php' line 277
Send a test mail under
Global Configuration
->Server tab
at the bottom of the page using theSend Test Mail
buttonActual result BEFORE applying this Pull Request
Attachment is inserted but not as an inline attachment and thus the assignment to the image fails.
Expected result AFTER applying this Pull Request
Attachment is inserted as an inline attachment and thus the assignment to the image works.
Link to documentations
Please select:
Documentation link for docs.joomla.org:
No documentation changes for docs.joomla.org needed
Pull Request link for manual.joomla.org:
No documentation changes for manual.joomla.org needed