Don't update power levels at startup unless something changes

This commit is contained in:
Tulir Asokan
2018-02-06 14:54:04 +02:00
parent ff703c2827
commit ac188bf85b
2 changed files with 18 additions and 8 deletions
+10 -4
View File
@@ -133,10 +133,10 @@ class Portal:
def invite_matrix(self, users):
if isinstance(users, str):
self.main_intent.invite(self.mxid, users)
self.main_intent.invite(self.mxid, users, check_cache=True)
elif isinstance(users, list):
for user in users:
self.main_intent.invite(self.mxid, user)
self.main_intent.invite(self.mxid, user, check_cache=True)
else:
raise ValueError("Invalid invite identifier given to invite_matrix()")
@@ -770,10 +770,16 @@ class Portal:
new_level = 50
elif isinstance(participant, (ChatParticipantCreator, ChannelParticipantCreator)):
new_level = 95
if user and (user.mxid in levels["users"] or new_level > 0):
update_user_level = (user and (user.mxid in levels["users"] or new_level > 0)
and levels["users"][user.mxid] != new_level)
if update_user_level:
levels["users"][user.mxid] = new_level
changed = True
if puppet and (puppet.mxid in levels["users"] or new_level > 0):
update_puppet_level = (puppet and (puppet.mxid in levels["users"] or new_level > 0)
and levels["users"][puppet.mxid] != new_level)
if update_puppet_level:
levels["users"][puppet.mxid] = new_level
changed = True
if changed: