Allow using cache when syncing Matrix power levels
This commit is contained in:
@@ -654,7 +654,12 @@ class Portal:
|
|||||||
|
|
||||||
def update_telegram_participants(self, participants):
|
def update_telegram_participants(self, participants):
|
||||||
levels = self.main_intent.get_power_levels(self.mxid)
|
levels = self.main_intent.get_power_levels(self.mxid)
|
||||||
levels["events"]["m.room.power_levels"] = 50
|
changed = False
|
||||||
|
|
||||||
|
if levels["events"]["m.room.power_levels"] != 50:
|
||||||
|
changed = True
|
||||||
|
levels["events"]["m.room.power_levels"] = 50
|
||||||
|
|
||||||
for participant in participants:
|
for participant in participants:
|
||||||
puppet = p.Puppet.get(participant.user_id)
|
puppet = p.Puppet.get(participant.user_id)
|
||||||
user = u.User.get_by_tgid(participant.user_id)
|
user = u.User.get_by_tgid(participant.user_id)
|
||||||
@@ -665,9 +670,12 @@ class Portal:
|
|||||||
new_level = 95
|
new_level = 95
|
||||||
if user and (user.mxid in levels["users"] or new_level > 0):
|
if user and (user.mxid in levels["users"] or new_level > 0):
|
||||||
levels["users"][user.mxid] = new_level
|
levels["users"][user.mxid] = new_level
|
||||||
|
changed = True
|
||||||
if puppet and (puppet.mxid in levels["users"] or new_level > 0):
|
if puppet and (puppet.mxid in levels["users"] or new_level > 0):
|
||||||
levels["users"][puppet.mxid] = new_level
|
levels["users"][puppet.mxid] = new_level
|
||||||
self.main_intent.set_power_levels(self.mxid, levels)
|
changed = True
|
||||||
|
if changed:
|
||||||
|
self.main_intent.set_power_levels(self.mxid, levels)
|
||||||
|
|
||||||
def set_telegram_admins_enabled(self, enabled):
|
def set_telegram_admins_enabled(self, enabled):
|
||||||
level = 50 if enabled else 10
|
level = 50 if enabled else 10
|
||||||
|
|||||||
Reference in New Issue
Block a user