diff options
| author | 2019-12-10 10:49:12 +0000 | |
|---|---|---|
| committer | 2019-12-10 10:49:12 +0000 | |
| commit | 69f4d43590ef1af4bc0c91a00bb12f746a09645c (patch) | |
| tree | 4cc5a9e120ca2ef6a90e0ca02832d3676d7539a1 /modules | |
| parent | fix typos, type hinting and missed changes in ModuleManager (diff) | |
| signature | ||
catch `++nickname` as karma too
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/karma.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/modules/karma.py b/modules/karma.py index 71352a3b..4954e0fb 100644 --- a/modules/karma.py +++ b/modules/karma.py @@ -8,6 +8,7 @@ from src import EventManager, ModuleManager, utils KARMA_DELAY_SECONDS = 3 REGEX_WORD = re.compile(r"^([^(\s,:]+)(?:[:,]\s*)?(\+\+|--)\s*$") +REGEX_WORD_START = re.compile(r"^(\+\+|--)([^(\s,:]+)\s*$") REGEX_PARENS = re.compile(r"\(([^)]+)\)(\+\+|--)") @utils.export("channelset", utils.BoolSetting("karma-pattern", @@ -80,7 +81,15 @@ class Module(ModuleManager.BaseModule): success, message = self._change_karma( event["server"], event["user"], target, positive) event["stdout" if success else "stderr"].write(message) - + @utils.hook("command.regex", pattern=REGEX_WORD_START) + @utils.kwarg("command", "karma") + def regex_word_start(self, event): + if event["target"].get_setting("karma-pattern", False): + target = event["match"].group(2) + positive = event["match"].group(1)=="++" + success, message = self._change_karma( + event["server"], event["user"], target, positive) + event["stdout" if success else "stderr"].write(message) @utils.hook("received.command.addpoint") @utils.hook("received.command.rmpoint") |
