From 87dd3193851f5d16b1271093c700e01b19f706dd Mon Sep 17 00:00:00 2001 From: gammafn Date: Mon, 29 Mar 2021 22:43:53 -0500 Subject: [PATCH] Add add_module_aliases convenience function --- modules/common/module.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/modules/common/module.py b/modules/common/module.py index f4c0d43..79a4342 100644 --- a/modules/common/module.py +++ b/modules/common/module.py @@ -96,6 +96,26 @@ class BotModule(ABC): if data.get('can_be_disabled') is not None: self.can_be_disabled = data['can_be_disabled'] + def add_module_aliases(self, bot, args, force=False): + """Add a list of aliases for this module. + + :param args: a list of strings by which this module can be called + :type args: list + :param force: override any existing aliases + :type force: bool, optional + """ + for name in args: + if bot.modules.get(name): + self.logger.info(f"aliases: {name} is already a module!") + continue + prev = bot.module_aliases.get(name) + if prev and not force: + self.logger.info(f"aliases: {name} already exists for module {prev}") + continue + if prev: + self.logger.info(f"aliases: {name} from module {prev}") + bot.module_aliases[name] = self.name + def enable(self): self.enabled = True