[Admin] Add logging to serverlock (#5073)

Co-authored-by: Twentysix <Twentysix26@users.noreply.github.com>
This commit is contained in:
Vexed 2021-05-24 12:03:43 +01:00 committed by GitHub
parent 2f7376169e
commit 982feda858
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 2 deletions

View File

@ -2,4 +2,4 @@ from .admin import Admin
def setup(bot): def setup(bot):
bot.add_cog(Admin()) bot.add_cog(Admin(bot))

View File

@ -70,7 +70,9 @@ _ = T_
class Admin(commands.Cog): class Admin(commands.Cog):
"""A collection of server administration utilities.""" """A collection of server administration utilities."""
def __init__(self): def __init__(self, bot):
self.bot = bot
self.config = Config.get_conf(self, 8237492837454039, force_registration=True) self.config = Config.get_conf(self, 8237492837454039, force_registration=True)
self.config.register_global(serverlocked=False, schema_version=0) self.config.register_global(serverlocked=False, schema_version=0)
@ -504,6 +506,13 @@ class Admin(commands.Cog):
@commands.Cog.listener() @commands.Cog.listener()
async def on_guild_join(self, guild: discord.Guild): async def on_guild_join(self, guild: discord.Guild):
if await self.config.serverlocked(): if await self.config.serverlocked():
if len(self.bot.guilds) == 1: # will be 0 once left
log.warning(
f"Leaving guild '{guild.name}' ({guild.id}) due to serverlock. You can "
"temporarily disable serverlock by starting up the bot with the --no-cogs flag."
)
else:
log.info(f"Leaving guild '{guild.name}' ({guild.id}) due to serverlock.")
await guild.leave() await guild.leave()