aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar jesopo2020-02-15 11:16:57 +0000
committerGravatar jesopo2020-02-15 11:16:57 +0000
commit75e3777638e2e5306ed92925d8b8a07fb0d0f4df (patch)
tree171b47da4316498bc7457cf6d0417641519a94f3
parentrewrite badges.py (diff)
signature
add !badgeclear
-rw-r--r--modules/badges.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/modules/badges.py b/modules/badges.py
index 5b75c4e5..909a98f1 100644
--- a/modules/badges.py
+++ b/modules/badges.py
@@ -29,6 +29,7 @@ class Module(ModuleManager.BaseModule):
user.del_setting("badges")
@utils.hook("received.command.badge")
+ @utils.kwarg("help", "List, add and remove badges")
@utils.spec("!'list ?<nickname>ouser")
@utils.spec("!'add !<name>marginstring !'now")
@utils.spec("!'add !<name>marginstring !date")
@@ -74,3 +75,16 @@ class Module(ModuleManager.BaseModule):
event["stdout"].write("%s: removed badge '%s' (%s)"
% (event["user"].nickname, event["spec"][1], human))
self._set_badges(event["user"], badges)
+
+ @utils.hook("received.command.badgeclear")
+ @utils.kwarg("help", "Clear a user's badges")
+ @utils.kwarg("permission", "badge-clear")
+ @utils.spec("!<nickname>ouser")
+ def badgeclear(self, event):
+ if self._get_badges(event["spec"][0]):
+ self._del_badges(event["spec"][0])
+ event["stdout"].write("Cleared badges for %s"
+ % event["spec"][0].nickname)
+ else:
+ event["stderr"].write("%s has no badges"
+ % event["spec"][0].nickname)