aboutsummaryrefslogtreecommitdiff
path: root/modules/modules.py
diff options
context:
space:
mode:
authorGravatar jesopo2019-12-07 11:07:43 +0000
committerGravatar jesopo2019-12-07 11:07:43 +0000
commit3028759c865bc9f604addb55c4b3d8e65f4cc827 (patch)
tree977eb2a06bd33aedc7942c410f7d11c2ff66ddd5 /modules/modules.py
parentadded get_list() and set_list() to src/Config.py (diff)
use get_list and set_list to move dynamic module en/disabling to bot.conf
Diffstat (limited to 'modules/modules.py')
-rw-r--r--modules/modules.py37
1 files changed, 21 insertions, 16 deletions
diff --git a/modules/modules.py b/modules/modules.py
index cac145ba..a93afaea 100644
--- a/modules/modules.py
+++ b/modules/modules.py
@@ -77,41 +77,46 @@ class Module(ModuleManager.BaseModule):
else:
event["stderr"].write(result.message)
- @utils.hook("received.command.enablemodule", min_args=1)
+ def _get_blacklist(self):
+ return self.bot.config.get_list("module-blacklist")
+ def _save_blacklist(self, modules):
+ self.bot.config.set_list("module-blacklist", modules)
+ self.bot.config.save()
+
+ @utils.hook("received.command.enablemodule")
+ @utils.kwarg("min_args", 1)
+ @utils.kwarg("help", "Remove a module from the module blacklist")
+ @utils.kwarg("usage", "<module>")
+ @utils.kwarg("permission", "enable-module")
def enable(self, event):
- """
- :help: Remove a module from the module blacklist
- :usage: <module name>
- :permission: enable-module
- """
name = event["args_split"][0].lower()
- blacklist = self.bot.get_setting("module-blacklist", [])
+
+ blacklist = self._get_blacklist()
if not name in blacklist:
raise utils.EventError("Module '%s' isn't disabled" % name)
blacklist.remove(name)
- self.bot.set_setting("module-blacklist", blacklist)
+ self._save_blacklist(blacklist)
event["stdout"].write("Module '%s' has been enabled and can now "
"be loaded" % name)
- @utils.hook("received.command.disablemodule", min_args=1)
+ @utils.hook("received.command.disablemodule")
+ @utils.kwarg("min_args", 1)
+ @utils.kwarg("help", "Add a module to the module blacklist")
+ @utils.kwarg("usage", "<module>")
+ @utils.kwarg("permission", "disable-module")
def disable(self, event):
- """
- :help: Add a module to the module blacklist
- :usage: <module name>
- :permission: disable-module
- """
name = event["args_split"][0].lower()
and_unloaded = ""
if name in self.bot.modules.modules:
self.bot.modules.unload_module(name)
and_unloaded = " and unloaded"
- blacklist = self.bot.get_setting("module-blacklist", [])
+ blacklist = self._get_blacklist()
if name in blacklist:
raise utils.EventError("Module '%s' is already disabled" % name)
blacklist.append(name)
- self.bot.set_setting("module-blacklist", blacklist)
+ self._save_blacklist(blacklist)
event["stdout"].write("Module '%s' has been disabled%s" % (
name, and_unloaded))