mirror of https://github.com/zulip/zulip.git
topics: Fix translation issue with resolve topic notifications.
In maybe_send_resolve_topic_notifications, since the calls to the translation function `_()` are made outside of the `override_language` block, the strings are not translated correctly. This commit refactors the function to make sure that the translation happens in the right block of code. Fixes #19730.
This commit is contained in:
parent
10c47b5d6c
commit
bf64cb2d1c
|
@ -5885,15 +5885,14 @@ def maybe_send_resolve_topic_notifications(
|
||||||
if old_topic.lstrip(RESOLVED_TOPIC_PREFIX) != new_topic.lstrip(RESOLVED_TOPIC_PREFIX):
|
if old_topic.lstrip(RESOLVED_TOPIC_PREFIX) != new_topic.lstrip(RESOLVED_TOPIC_PREFIX):
|
||||||
return
|
return
|
||||||
|
|
||||||
if new_topic.startswith(RESOLVED_TOPIC_PREFIX) and not old_topic.startswith(
|
topic_resolved: bool = new_topic.startswith(RESOLVED_TOPIC_PREFIX) and not old_topic.startswith(
|
||||||
RESOLVED_TOPIC_PREFIX
|
RESOLVED_TOPIC_PREFIX
|
||||||
):
|
)
|
||||||
notification_string = _("{user} has marked this topic as resolved.")
|
topic_unresolved: bool = old_topic.startswith(
|
||||||
elif old_topic.startswith(RESOLVED_TOPIC_PREFIX) and not new_topic.startswith(
|
|
||||||
RESOLVED_TOPIC_PREFIX
|
RESOLVED_TOPIC_PREFIX
|
||||||
):
|
) and not new_topic.startswith(RESOLVED_TOPIC_PREFIX)
|
||||||
notification_string = _("{user} has marked this topic as unresolved.")
|
|
||||||
else:
|
if not topic_resolved and not topic_unresolved:
|
||||||
# If there's some other weird topic that does not toggle the
|
# If there's some other weird topic that does not toggle the
|
||||||
# state of "topic starts with RESOLVED_TOPIC_PREFIX", we do
|
# state of "topic starts with RESOLVED_TOPIC_PREFIX", we do
|
||||||
# nothing. Any other logic could result in cases where we send
|
# nothing. Any other logic could result in cases where we send
|
||||||
|
@ -5912,6 +5911,11 @@ def maybe_send_resolve_topic_notifications(
|
||||||
sender = get_system_bot(settings.NOTIFICATION_BOT, user_profile.realm_id)
|
sender = get_system_bot(settings.NOTIFICATION_BOT, user_profile.realm_id)
|
||||||
user_mention = f"@_**{user_profile.full_name}|{user_profile.id}**"
|
user_mention = f"@_**{user_profile.full_name}|{user_profile.id}**"
|
||||||
with override_language(stream.realm.default_language):
|
with override_language(stream.realm.default_language):
|
||||||
|
if topic_resolved:
|
||||||
|
notification_string = _("{user} has marked this topic as resolved.")
|
||||||
|
elif topic_unresolved:
|
||||||
|
notification_string = _("{user} has marked this topic as unresolved.")
|
||||||
|
|
||||||
internal_send_stream_message(
|
internal_send_stream_message(
|
||||||
sender,
|
sender,
|
||||||
stream,
|
stream,
|
||||||
|
|
Loading…
Reference in New Issue