From f614d1fc1480724b2d5f2cb409ad8a1962173b74 Mon Sep 17 00:00:00 2001 From: jesopo Date: Fri, 14 Jun 2019 12:09:42 +0100 Subject: add `self` check.command, change !config to use new yields --- modules/config.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'modules/config.py') diff --git a/modules/config.py b/modules/config.py index a6d06f3f..ba02f308 100644 --- a/modules/config.py +++ b/modules/config.py @@ -281,7 +281,6 @@ class Module(ModuleManager.BaseModule): """ :help: Change config options :usage: [:name] [-][setting [value]] - :permission: config """ arg_count = len(event["args_split"]) @@ -297,12 +296,17 @@ class Module(ModuleManager.BaseModule): target, context = self._to_context(event["server"], event["target"], event["user"], context_desc) + permission_check = utils.Check("permission", "config") + if context == "set": if name: + yield utils.Check("self", name)|permission_check target = event["server"].get_user(name) else: target = event["user"] elif context == "channelset": + yield utils.Check("channel-mode", "o")|permission_check + if name: if name in event["server"].channels: target = event["server"].channels.get(name) @@ -316,6 +320,8 @@ class Module(ModuleManager.BaseModule): raise utils.EventError( "Cannot change config for current channel when in " "private message") + elif context == "serverset" or context == "botset": + yield utils.Check("permission", "config") export_settings = self._get_export_setting(context) if not setting == None: -- cgit v1.3.1-10-gc9f91