Allow passing custom power level to admin check

This commit is contained in:
gammafn 2021-03-29 15:34:41 -05:00
parent 6f6acfd681
commit 9851a24886
1 changed files with 4 additions and 5 deletions

9
bot.py
View File

@ -154,8 +154,8 @@ class Bot:
return None
# Throws exception if event sender is not a room admin
def must_be_admin(self, room, event):
if not self.is_admin(room, event):
def must_be_admin(self, room, event, power_level=50):
if not self.is_admin(room, event, power_level=power_level):
raise CommandRequiresAdmin
# Throws exception if event sender is not a bot owner
@ -165,13 +165,12 @@ class Bot:
# Returns true if event's sender has PL50 or more in the room event was sent in,
# or is bot owner
# TODO: Make configurable
def is_admin(self, room, event):
def is_admin(self, room, event, power_level=50):
if self.is_owner(event):
return True
if event.sender not in room.power_levels.users:
return False
return room.power_levels.users[event.sender] >= 50
return room.power_levels.users[event.sender] >= power_level
# Returns true if event's sender is owner of the bot
def is_owner(self, event):