updated reply handling

This commit is contained in:
Andris Reinman 2018-12-04 16:12:25 +02:00
parent 5ab86ca309
commit 9da2ad5679

View file

@ -2290,11 +2290,12 @@ module.exports = (db, server, messageHandler, userHandler) => {
let envelope = compiled.getEnvelope();
envelope.from = data.from.address = await validateFromAddress(userData, envelope.from);
console.log(envelope.to);
if (!envelope.to.length && referencedMessage && ['reply', 'replyAll'].includes(result.value.reference.action)) {
console.log(referencedMessage);
envelope.to = envelope.to.concat(parseAddresses(referencedMessage.replyTo || [])).concat(parseAddresses(referencedMessage.replyCc || []));
data.to = [].concat(data.to || []).concat(referencedMessage.replyTo || []);
data.cc = [].concat(data.cc || []).concat(referencedMessage.replyCc || []);
}
console.log(envelope);
if (!req.params.raw) {
raw = await getCompiledMessage(data);
@ -3441,6 +3442,8 @@ module.exports = (db, server, messageHandler, userHandler) => {
}
let headers = (messageData && messageData.mimeTree && messageData.mimeTree.parsedHeader) || {};
console.log(headers);
let subject = headers.subject || '';
try {
subject = libmime.decodeWords(subject).trim();
@ -3458,7 +3461,8 @@ module.exports = (db, server, messageHandler, userHandler) => {
let uniqueRecipients = new Set();
let checkAddress = (target, addr) => {
let addrview = tools.normalizeAddress(addr.addres, false, { removeLabel: true, removeDots: true });
let addrview = tools.normalizeAddress(addr.address, false, { removeLabel: true, removeDots: true });
console.log(addr.address, addrview, userAddresses.includes(addrview));
if (!userAddresses.includes(addrview) && !uniqueRecipients.has(addrview)) {
uniqueRecipients.add(addrview);
if (addr.name) {