people: Extract emails_to_full_names_string helper.

This code that previously lived in a larger function is needed by
another function in PR #22127.
This commit is contained in:
evykassirer
2022-06-01 16:36:05 -07:00
committed by Tim Abbott
parent 6728ee1f0e
commit bc2149d1ef
3 changed files with 32 additions and 10 deletions

View File

@@ -664,6 +664,24 @@ test_people("multi_user_methods", () => {
assert.equal(people.reply_to_to_user_ids_string("invalid@example.com"), undefined);
});
test_people("emails_to_full_names_string", () => {
people.add_active_user(charles);
people.add_active_user(maria);
assert.equal(
people.emails_to_full_names_string([charles.email, maria.email]),
`${charles.full_name}, ${maria.full_name}`,
);
assert.equal(
people.emails_to_full_names_string([
charles.email,
"unknown-email@example.com",
maria.email,
]),
`${charles.full_name}, unknown-email@example.com, ${maria.full_name}`,
);
});
test_people("concat_huddle", () => {
/*
We assume that user_ids passed in

View File

@@ -324,16 +324,7 @@ export function format_draft(draft) {
};
} else {
const emails = util.extract_pm_recipients(draft.private_message_recipient);
const recipients = emails
.map((email) => {
email = email.trim();
const person = people.get_by_email(email);
if (person !== undefined) {
return person.full_name;
}
return email;
})
.join(", ");
const recipients = people.emails_to_full_names_string(emails);
formatted = {
draft_id: draft.id,

View File

@@ -256,6 +256,19 @@ export function reply_to_to_user_ids_string(emails_string) {
return user_ids.join(",");
}
export function emails_to_full_names_string(emails) {
return emails
.map((email) => {
email = email.trim();
const person = get_by_email(email);
if (person !== undefined) {
return person.full_name;
}
return email;
})
.join(", ");
}
export function get_user_time_preferences(user_id) {
const user_timezone = get_by_user_id(user_id).timezone;
if (user_timezone) {