From 6169399b7e8dc514a54f9239e5cfb68c79d94fb3 Mon Sep 17 00:00:00 2001 From: jesopo Date: Sun, 26 Jan 2020 02:59:16 +0000 Subject: [PATCH] update karma.py to use command spec --- modules/karma.py | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/modules/karma.py b/modules/karma.py index a7324e1e..33359123 100644 --- a/modules/karma.py +++ b/modules/karma.py @@ -99,11 +99,11 @@ class Module(ModuleManager.BaseModule): @utils.hook("received.command.addpoint") @utils.hook("received.command.rmpoint") @utils.kwarg("min_args", 1) - @utils.kwarg("usage", "") + @utils.spec("!string") def changepoint(self, event): positive = event["command"] == "addpoint" success, message = self._change_karma( - event["server"], event["user"], event["args"].strip(), positive) + event["server"], event["user"], event["spec"][0], positive) event["stdout" if success else "stderr"].write(message) @utils.hook("received.command.karma") @@ -134,14 +134,14 @@ class Module(ModuleManager.BaseModule): @utils.hook("received.command.resetkarma") @utils.kwarg("min_args", 2) @utils.kwarg("help", "Reset a specific karma to 0") - @utils.kwarg("usage", "by|for ") @utils.kwarg("permission", "resetkarma") + @utils.spec("!'by !ouser") + @utils.spec("!'for !string") def reset_karma(self, event): - subcommand = event["args_split"][0].lower() - target = " ".join(event["args_split"][1:]) + subcommand = event["spec"][0] if subcommand == "by": - target_user = event["server"].get_user(target) + target_user = event["spec"][1] karma = target_user.find_setting(prefix="karma-") for setting, _ in karma: target_user.del_setting(setting) @@ -153,15 +153,16 @@ class Module(ModuleManager.BaseModule): event["stderr"].write("No karma to clear by %s" % target_user.nickname) elif subcommand == "for": - setting = "karma-%s" % target + setting = "karma-%s" % event["spec"][1] karma = event["server"].get_all_user_settings(setting) for nickname, value in karma: user = event["server"].get_user(nickname) user.del_setting(setting) if karma: - event["stdout"].write("Cleared karma for %s" % target) + event["stdout"].write("Cleared karma for %s" % event["spec"][1]) else: - event["stderr"].write("No karma to clearfor %s" % target) + event["stderr"].write("No karma to clear for %s" + % event["spec"][1]) else: raise utils.EventError("Unknown subcommand '%s'" % subcommand)