diff options
author | Patrick Cloke <clokep@users.noreply.github.com> | 2021-07-21 13:29:54 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-21 17:29:54 +0000 |
commit | d15e72e511724f2e4729b31808d410c1b1ad9041 (patch) | |
tree | 492513c7be70b203f96b566d3ddbba12230e10d9 /synapse/push/mailer.py | |
parent | Merge remote-tracking branch 'origin/release-v1.39' into develop (diff) | |
download | synapse-d15e72e511724f2e4729b31808d410c1b1ad9041.tar.xz |
Update the notification email subject when invited to a space. (#10426)
Diffstat (limited to '')
-rw-r--r-- | synapse/push/mailer.py | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/synapse/push/mailer.py b/synapse/push/mailer.py index 7be5fe1e9b..941fb238b7 100644 --- a/synapse/push/mailer.py +++ b/synapse/push/mailer.py @@ -19,7 +19,7 @@ from typing import TYPE_CHECKING, Any, Dict, Iterable, List, Optional, TypeVar import bleach import jinja2 -from synapse.api.constants import EventTypes, Membership +from synapse.api.constants import EventTypes, Membership, RoomTypes from synapse.api.errors import StoreError from synapse.config.emailconfig import EmailSubjectConfig from synapse.events import EventBase @@ -600,6 +600,22 @@ class Mailer: "app": self.app_name, } + # If the room is a space, it gets a slightly different topic. + create_event_id = room_state_ids.get(("m.room.create", "")) + if create_event_id: + create_event = await self.store.get_event( + create_event_id, allow_none=True + ) + if ( + create_event + and create_event.content.get("room_type") == RoomTypes.SPACE + ): + return self.email_subjects.invite_from_person_to_space % { + "person": inviter_name, + "space": room_name, + "app": self.app_name, + } + return self.email_subjects.invite_from_person_to_room % { "person": inviter_name, "room": room_name, |