mirror of https://github.com/zulip/zulip.git
message_notifications: Tag notification text for translation.
Fixes #21032
This commit is contained in:
parent
07525a2f7d
commit
cd2812c131
|
@ -13,6 +13,7 @@ import * as ui_util from "./ui_util";
|
||||||
import * as unread from "./unread";
|
import * as unread from "./unread";
|
||||||
import {user_settings} from "./user_settings";
|
import {user_settings} from "./user_settings";
|
||||||
import * as user_topics from "./user_topics";
|
import * as user_topics from "./user_topics";
|
||||||
|
import * as util from "./util";
|
||||||
|
|
||||||
function get_notification_content(message) {
|
function get_notification_content(message) {
|
||||||
let content;
|
let content;
|
||||||
|
@ -89,29 +90,46 @@ function get_notification_title(message, msg_count) {
|
||||||
let title_prefix = message.sender_full_name;
|
let title_prefix = message.sender_full_name;
|
||||||
let title_suffix = "";
|
let title_suffix = "";
|
||||||
let other_recipients;
|
let other_recipients;
|
||||||
|
let other_recipients_translated;
|
||||||
|
|
||||||
if (msg_count > 1) {
|
if (msg_count > 1) {
|
||||||
title_prefix = msg_count + " messages from " + message.sender_full_name;
|
title_prefix = $t(
|
||||||
|
{defaultMessage: "{msg_count} messages from {sender_name}"},
|
||||||
|
{msg_count, sender_name: message.sender_full_name},
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (message.type) {
|
switch (message.type) {
|
||||||
case "private":
|
case "private":
|
||||||
other_recipients = remove_sender_from_list_of_recipients(message);
|
|
||||||
if (message.display_recipient.length > 2) {
|
if (message.display_recipient.length > 2) {
|
||||||
|
other_recipients = remove_sender_from_list_of_recipients(message);
|
||||||
|
// Same as compose_ui.compute_placeholder_text.
|
||||||
|
other_recipients_translated = util.format_array_as_list(
|
||||||
|
other_recipients.split(", "),
|
||||||
|
"long",
|
||||||
|
"conjunction",
|
||||||
|
);
|
||||||
// Character limit taken from https://www.pushengage.com/push-notification-character-limits
|
// Character limit taken from https://www.pushengage.com/push-notification-character-limits
|
||||||
// We use a higher character limit so that the 3rd sender can at least be partially visible so that
|
// We use a higher character limit so that the 3rd sender can at least be partially visible so that
|
||||||
// the user can distinguish the group DM.
|
// the user can distinguish the group DM.
|
||||||
// If the message has too many recipients to list them all...
|
// If the message has too many recipients to list them all...
|
||||||
if (title_prefix.length + other_recipients.length > 50) {
|
if (title_prefix.length + other_recipients_translated.length > 50) {
|
||||||
// Then count how many people are in the conversation and summarize
|
// Then count how many people are in the conversation and summarize
|
||||||
other_recipients = message.display_recipient.length - 2 + " more";
|
title_suffix = $t(
|
||||||
|
{defaultMessage: "(to you and {participants_count} more)"},
|
||||||
|
{participants_count: message.display_recipient.length - 2},
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
title_suffix = $t(
|
||||||
|
{defaultMessage: "(to you and {other_participant_names})"},
|
||||||
|
{other_participant_names: other_recipients_translated},
|
||||||
|
);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
title_suffix = $t({defaultMessage: "(to you)"});
|
||||||
}
|
}
|
||||||
|
|
||||||
title_suffix = " (to you and " + other_recipients + ")";
|
return title_prefix + " " + title_suffix;
|
||||||
} else {
|
|
||||||
title_suffix = " (to you)";
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "stream": {
|
case "stream": {
|
||||||
const stream_name = stream_data.get_stream_name_from_id(message.stream_id);
|
const stream_name = stream_data.get_stream_name_from_id(message.stream_id);
|
||||||
title_suffix = " (#" + stream_name + " > " + message.topic + ")";
|
title_suffix = " (#" + stream_name + " > " + message.topic + ")";
|
||||||
|
|
Loading…
Reference in New Issue