aboutsummaryrefslogtreecommitdiff
path: root/src/IRCBot.py
diff options
context:
space:
mode:
authorGravatar jesopo2019-06-01 15:06:57 +0100
committerGravatar jesopo2019-06-01 15:06:57 +0100
commite5c11f4aeff4aec508997922b8adfca10503b6e1 (patch)
treeb490094a905d8a684a10a74ef8d4b8841f6a4b4d /src/IRCBot.py
parentlist()-ify `filter()` return, otherwise boolean checks against it are wrong (diff)
signature
add 'module-blacklist/whitelist' to bot.conf - use that as well as DB setting
Diffstat (limited to 'src/IRCBot.py')
-rw-r--r--src/IRCBot.py14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/IRCBot.py b/src/IRCBot.py
index 859b052d..37559d95 100644
--- a/src/IRCBot.py
+++ b/src/IRCBot.py
@@ -62,8 +62,18 @@ class Bot(object):
def load_modules(self, safe: bool=False
) -> typing.Tuple[typing.List[str], typing.List[str]]:
- whitelist = self.get_setting("module-whitelist", [])
- blacklist = self.get_setting("module-blacklist", [])
+ db_blacklist = set(self.get_setting("module-blacklist", []))
+ db_whitelist = set(self.get_setting("module-whitelist", []))
+
+ conf_blacklist = self.config.get("module-blacklist", "").split(",")
+ conf_whitelist = self.config.get("module-whitelist", "").split(",")
+
+ conf_blacklist = set(filter(None, conf_blacklist))
+ conf_whitelist = set(filter(None, conf_whitelist))
+
+ blacklist = db_blacklist|conf_blacklist
+ whitelist = db_whitelist|conf_whitelist
+
return self.modules.load_modules(self, whitelist=whitelist,
blacklist=blacklist, safe=safe)