mirror of
https://github.com/moodle/moodle.git
synced 2025-01-29 19:50:14 +01:00
Merge branch 'wip-MDL-60591-master' of git://github.com/marinaglancy/moodle
This commit is contained in:
commit
7445483873
@ -170,9 +170,20 @@ class reply_handler extends \core\message\inbound\handler {
|
||||
// We don't trust text coming from e-mail.
|
||||
$addpost->messagetrust = false;
|
||||
|
||||
// Find all attachments. If format is plain text, treat inline attachments as regular ones.
|
||||
$attachments = !empty($messagedata->attachments['attachment']) ? $messagedata->attachments['attachment'] : [];
|
||||
$inlineattachments = [];
|
||||
if (!empty($messagedata->attachments['inline'])) {
|
||||
if ($addpost->messageformat == FORMAT_HTML) {
|
||||
$inlineattachments = $messagedata->attachments['inline'];
|
||||
} else {
|
||||
$attachments = array_merge($attachments, $messagedata->attachments['inline']);
|
||||
}
|
||||
}
|
||||
|
||||
// Add attachments to the post.
|
||||
if (!empty($messagedata->attachments['attachment']) && count($messagedata->attachments['attachment'])) {
|
||||
$attachmentcount = count($messagedata->attachments['attachment']);
|
||||
if ($attachments) {
|
||||
$attachmentcount = count($attachments);
|
||||
if (!forum_can_create_attachment($forum, $modcontext)) {
|
||||
// Attachments are not allowed.
|
||||
mtrace("--> User does not have permission to attach files in this forum. Rejecting e-mail.");
|
||||
@ -196,7 +207,7 @@ class reply_handler extends \core\message\inbound\handler {
|
||||
|
||||
$filesize = 0;
|
||||
$addpost->attachments = file_get_unused_draft_itemid();
|
||||
foreach ($messagedata->attachments['attachment'] as $attachment) {
|
||||
foreach ($attachments as $attachment) {
|
||||
mtrace("--> Processing {$attachment->filename} as an attachment.");
|
||||
$this->process_attachment('*', $usercontext, $addpost->attachments, $attachment);
|
||||
$filesize += $attachment->filesize;
|
||||
@ -215,8 +226,8 @@ class reply_handler extends \core\message\inbound\handler {
|
||||
}
|
||||
|
||||
// Process any files in the message itself.
|
||||
if (!empty($messagedata->attachments['inline'])) {
|
||||
foreach ($messagedata->attachments['inline'] as $attachment) {
|
||||
if ($inlineattachments) {
|
||||
foreach ($inlineattachments as $attachment) {
|
||||
mtrace("--> Processing {$attachment->filename} as an inline attachment.");
|
||||
$this->process_attachment('*', $usercontext, $addpost->itemid, $attachment);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user