From 81bdaa1256aca3cf460dbebd92b4154aa082d2ab Mon Sep 17 00:00:00 2001 From: Jonathan Weth <git@jonathanweth.de> Date: Sun, 20 Feb 2022 16:50:20 +0100 Subject: [PATCH] Drop semantically wrong properties and use getters --- aleksis/apps/matrix/models.py | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/aleksis/apps/matrix/models.py b/aleksis/apps/matrix/models.py index af52611..597a9af 100644 --- a/aleksis/apps/matrix/models.py +++ b/aleksis/apps/matrix/models.py @@ -136,8 +136,7 @@ class MatrixRoom(ExtensiblePolymorphicModel): return r - @property - def power_levels(self) -> dict[str, int]: + def get_power_levels(self) -> dict[str, int]: """Return the power levels for this room.""" r = do_matrix_request("GET", f"rooms/{self.room_id}/state") @@ -146,8 +145,7 @@ class MatrixRoom(ExtensiblePolymorphicModel): return user_levels - @property - def members(self) -> list[str]: + def get_members(self) -> list[str]: r = do_matrix_request( "GET", f"rooms/{self.room_id}/members", body={"membership": ["join", "invite"]} ) @@ -202,7 +200,7 @@ class MatrixRoom(ExtensiblePolymorphicModel): def sync_profiles(self): """Sync profiles for this room.""" all_profiles = self.get_profiles() - members = self.members + members = self.get_members() # Invite all users who are not in the room yet for profile in all_profiles: @@ -211,7 +209,7 @@ class MatrixRoom(ExtensiblePolymorphicModel): self._invite(profile) # Set power levels for all users - user_levels = self.power_levels + user_levels = self.get_power_levels() for profile in all_profiles: if profile.person in self.group.owners.all(): power_level = get_site_preferences()["matrix__power_level_for_owners"] @@ -272,9 +270,8 @@ class MatrixSpace(MatrixRoom): creation_content["type"] = "m.space" return super()._create_room(name, alias, invite, creation_content) - @property - def child_spaces(self) -> list[str]: - """Get all child spaces of this space.""" + def get_children(self) -> list[str]: + """Get all children (rooms/spaces) of this space.""" r = do_matrix_request("GET", f"rooms/{self.room_id}/state") return [c["state_key"] for c in r if c["type"] == "m.space.child"] @@ -289,7 +286,7 @@ class MatrixSpace(MatrixRoom): def sync_children(self): """Sync membership of child spaces and rooms.""" - current_children = self.child_spaces + current_children = self.get_children() child_spaces = MatrixSpace.get_queryset().filter( group__in=self.group.child_groups.filter(child_groups__isnull=False) ) -- GitLab