Update CogsPrep.py

This commit is contained in:
Slava
2024-03-17 11:48:47 +00:00
parent 814f88756c
commit 6a07ef45f2

View File

@@ -1,48 +1,48 @@
""" """
lib.CogsPrepare lib.CogsPrepare
~~~~~~~~~~~~~ ~~~~~~~~~~~~~
Loads, unloads Cogs files Loads, unloads Cogs files
cog_list: return list of cog filenames cog_list: return list of cog filenames
work_with_cogs: loads, reloads and unloads cogs files work_with_cogs: loads, reloads and unloads cogs files
""" """
from os import listdir, rename from os import listdir, rename
from disnake.ext.commands import Bot from disnake.ext.commands import Bot
from .Logger import logger from .Logger import logger
async def cog_list(fold: str = './cogs') -> list: def cog_list(fold: str = './cogs') -> list:
cogs_list = [] cogs_list = []
for _filename in listdir(fold): for _filename in listdir(fold):
if _filename.endswith('.py'): if _filename.endswith('.py'):
cogs_list.append(_filename[:-3]) cogs_list.append(_filename[:-3])
return cogs_list return cogs_list
async def work_with_cogs(what_do: str, async def work_with_cogs(what_do: str,
bot: Bot, bot: Bot,
cog: str | list): cog: str | list):
if isinstance(cog, str): if isinstance(cog, str):
cog = cog.split() cog = cog.split()
for _filename in cog: for _filename in cog:
if what_do == "load": if what_do == "load":
bot.load_extension(f'cogs.{_filename}') bot.load_extension(f'cogs.{_filename}')
logger.info(f'Cog {_filename} loaded') logger.info(f'Cog {_filename} loaded')
elif what_do == 'unload': elif what_do == 'unload':
bot.unload_extension(f'cogs.{_filename}') bot.unload_extension(f'cogs.{_filename}')
logger.info(f'Cog {_filename} unloaded') logger.info(f'Cog {_filename} unloaded')
elif what_do == 'reload': elif what_do == 'reload':
bot.reload_extension(f'cogs.{_filename}') bot.reload_extension(f'cogs.{_filename}')
logger.info(f'Cog {_filename} reloaded') logger.info(f'Cog {_filename} reloaded')
elif what_do == 'disable': elif what_do == 'disable':
bot.unload_extension(f'cogs.{_filename}') bot.unload_extension(f'cogs.{_filename}')
rename(f'cogs/{_filename}.py', rename(f'cogs/{_filename}.py',
f'cogs/disabled/{_filename}.py') f'cogs/disabled/{_filename}.py')
logger.info(f'Cog {_filename} stopped and disabled') logger.info(f'Cog {_filename} stopped and disabled')
elif what_do == 'enable': elif what_do == 'enable':
rename(f'cogs/disabled/{_filename}.py', rename(f'cogs/disabled/{_filename}.py',
f'cogs/{_filename}.py') f'cogs/{_filename}.py')
bot.load_extension(f'cogs.{_filename}') bot.load_extension(f'cogs.{_filename}')
logger.info(f'Cog {_filename} started and enabled') logger.info(f'Cog {_filename} started and enabled')