webmail: show email address instead of display name of "from" header in message listing if display name contains chars from "<@>"

it could be an attempt to confuse the reader with an email address. a classic.
This commit is contained in:
Mechiel Lukkien 2023-11-01 19:12:52 +01:00
parent 725f030d3c
commit f7686b7db8
No known key found for this signature in database
5 changed files with 17 additions and 13 deletions

View file

@ -316,10 +316,11 @@ const formatAddressFull = (a: api.MessageAddress): string => {
return s
}
// format just the name, or otherwies just the email address.
// format just the name if present and it doesn't look like an address, or otherwise just the email address.
const formatAddressShort = (a: api.MessageAddress): string => {
if (a.Name) {
return a.Name
const n = a.Name
if (n && !n.includes('<') && !n.includes('@') && !n.includes('>')) {
return n
}
return '<' + a.User + '@' + a.Domain.ASCII + '>'
}

View file

@ -959,10 +959,11 @@ const formatAddressFull = (a) => {
}
return s;
};
// format just the name, or otherwies just the email address.
// format just the name if present and it doesn't look like an address, or otherwise just the email address.
const formatAddressShort = (a) => {
if (a.Name) {
return a.Name;
const n = a.Name;
if (n && !n.includes('<') && !n.includes('@') && !n.includes('>')) {
return n;
}
return '<' + a.User + '@' + a.Domain.ASCII + '>';
};

View file

@ -959,10 +959,11 @@ const formatAddressFull = (a) => {
}
return s;
};
// format just the name, or otherwies just the email address.
// format just the name if present and it doesn't look like an address, or otherwise just the email address.
const formatAddressShort = (a) => {
if (a.Name) {
return a.Name;
const n = a.Name;
if (n && !n.includes('<') && !n.includes('@') && !n.includes('>')) {
return n;
}
return '<' + a.User + '@' + a.Domain.ASCII + '>';
};

View file

@ -959,10 +959,11 @@ const formatAddressFull = (a) => {
}
return s;
};
// format just the name, or otherwies just the email address.
// format just the name if present and it doesn't look like an address, or otherwise just the email address.
const formatAddressShort = (a) => {
if (a.Name) {
return a.Name;
const n = a.Name;
if (n && !n.includes('<') && !n.includes('@') && !n.includes('>')) {
return n;
}
return '<' + a.User + '@' + a.Domain.ASCII + '>';
};

View file

@ -1744,7 +1744,7 @@ interface MsgitemView {
// Sub messages in thread. Can be further descendants, when an intermediate message
// is missing.
kids: MsgitemView[]
// Whether this thread root is collapsed. If so, the root is visible, all descedants
// Whether this thread root is collapsed. If so, the root is visible, all descendants
// are not. Value is only valid if this is a thread root.
collapsed: boolean