diff options
| author | 2019-06-18 07:59:53 +0100 | |
|---|---|---|
| committer | 2019-06-18 08:01:20 +0100 | |
| commit | 88e796e33489bb35c85b7c66e47327f5ad2aa659 (patch) | |
| tree | 2f6ae8d3e0df4d0ba225ef9a67f175471765da19 /modules | |
| parent | Update CHANGELOG.md (diff) | |
| signature | ||
check-mode and channel-access should reference the computed target, not
"current channel"
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/check_mode.py | 12 | ||||
| -rw-r--r-- | modules/config.py | 4 |
2 files changed, 11 insertions, 5 deletions
diff --git a/modules/check_mode.py b/modules/check_mode.py index f3d3edb5..1ad96e10 100644 --- a/modules/check_mode.py +++ b/modules/check_mode.py @@ -13,7 +13,7 @@ LOWHIGH = { "help": "Set which channel mode is considered to be 'high' access", "example": "o"}) class Module(ModuleManager.BaseModule): - def _check_command(self, event, require_mode): + def _check_command(self, event, channel, require_mode): if event["is_channel"] and require_mode: if require_mode.lower() in LOWHIGH: require_mode = event["target"].get_setting( @@ -30,8 +30,14 @@ class Module(ModuleManager.BaseModule): def preprocess_command(self, event): require_mode = event["hook"].get_kwarg("require_mode") if not require_mode == None: - return self._check_command(event, require_mode) + return self._check_command(event, event["target"], require_mode) @utils.hook("check.command.channel-mode") def check_command(self, event): - return self._check_command(event, event["request_args"][0]) + target = event["target"] + mode = event["request_args"][0] + if len(event["request_args"]) > 1: + target = event["request_args"][0] + mode = event["request_args"][1] + + return self._check_command(event, target, mode) diff --git a/modules/config.py b/modules/config.py index df6bf350..d041e178 100644 --- a/modules/config.py +++ b/modules/config.py @@ -167,8 +167,8 @@ class Module(ModuleManager.BaseModule): "Cannot change config for current channel when in " "private message") event["check_assert"](permission_check| - utils.Check("channel-access", "set")| - utils.Check("channel-mode", "o")) + utils.Check("channel-access", target, "set")| + utils.Check("channel-mode", target, "o")) elif context == "serverset" or context == "botset": event["check_assert"](permission_check) |
