From 1c4bf8909c455d3c8fc6beecd8b1d8813664bf8f Mon Sep 17 00:00:00 2001 From: Mechiel Lukkien Date: Sun, 16 Feb 2025 16:45:02 +0100 Subject: [PATCH] webmail: when forwarding, include the subject,date,from,reply-to,to,cc headers in the message mentioned some time ago by ilijamt --- webmail/webmail.js | 10 +++++++++- webmail/webmail.ts | 10 +++++++++- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/webmail/webmail.js b/webmail/webmail.js index 7fd2866..2282248 100644 --- a/webmail/webmail.js +++ b/webmail/webmail.js @@ -3687,7 +3687,15 @@ const newMsgView = (miv, msglistView, listMailboxes, possibleLabels, messageLoad body = body.replace(/\r/g, '').replace(/\n\n\n\n*/g, '\n\n').trim(); let editOffset = 0; if (forward) { - body = '\n\n---- Forwarded Message ----\n\n' + body; + let prefix = `\n\n---- Forwarded Message ----\n`; + const keys = ['Subject', 'Date', 'From', 'Reply-To', 'To', 'Cc']; + const padspace = (s, size) => s + ' '.repeat(size - s.length); + for (const k of keys) { + for (const v of (pm.Headers?.[k] || [])) { + prefix += padspace(k + ':', 10) + v + '\n'; + } + } + body = prefix + '\n' + body; } else { body = body.split('\n').map(line => '> ' + line).join('\n'); diff --git a/webmail/webmail.ts b/webmail/webmail.ts index aecc709..1fa9757 100644 --- a/webmail/webmail.ts +++ b/webmail/webmail.ts @@ -2943,7 +2943,15 @@ const newMsgView = (miv: MsgitemView, msglistView: MsglistView, listMailboxes: l body = body.replace(/\r/g, '').replace(/\n\n\n\n*/g, '\n\n').trim() let editOffset = 0 if (forward) { - body = '\n\n---- Forwarded Message ----\n\n'+body + let prefix = `\n\n---- Forwarded Message ----\n` + const keys = ['Subject', 'Date', 'From', 'Reply-To', 'To', 'Cc'] + const padspace = (s: string, size: number) => s + ' '.repeat(size-s.length) + for (const k of keys) { + for (const v of (pm.Headers?.[k] || [])) { + prefix += padspace(k + ':', 10) + v+'\n' + } + } + body = prefix+'\n'+body } else { body = body.split('\n').map(line => '> ' + line).join('\n') let sig = accountSettings?.Signature || ''