embeds: Propagate group membership before updating UserMessage flags.

This commit is contained in:
Alex Vandiver
2025-08-13 15:23:35 +00:00
committed by Tim Abbott
parent bfdd28c638
commit 7480510aeb
4 changed files with 69 additions and 6 deletions

View File

@@ -442,10 +442,15 @@ def do_update_embedded_data(
user_profile: UserProfile,
message: Message,
rendered_content: str | MessageRenderingResult,
mention_data: MentionData | None = None,
) -> None:
ums = UserMessage.objects.filter(message=message.id)
update_fields = ["rendered_content"]
if isinstance(rendered_content, MessageRenderingResult):
assert mention_data is not None
for group_id in rendered_content.mentions_user_group_ids:
members = mention_data.get_group_members(group_id)
rendered_content.mentions_user_ids.update(members)
update_user_message_flags(rendered_content, ums)
message.rendered_content = rendered_content.rendered_content
message.rendered_content_version = markdown_version