diff options
| author | 2018-09-26 18:27:17 +0100 | |
|---|---|---|
| committer | 2018-09-26 18:27:17 +0100 | |
| commit | 51a52e2b0e54031cce5876f54d1d48c268b5441c (patch) | |
| tree | a4c0e8e86c55aa701b06297d5b5a2ceebeaab60d /modules/auto_mode.py | |
| parent | Also use docstrings to check if a command has help available, allow one-string (diff) | |
Switch to using @Utils.hook and docstrings for event hooks
Diffstat (limited to 'modules/auto_mode.py')
| -rw-r--r-- | modules/auto_mode.py | 43 |
1 files changed, 23 insertions, 20 deletions
diff --git a/modules/auto_mode.py b/modules/auto_mode.py index af6dc606..08648ca3 100644 --- a/modules/auto_mode.py +++ b/modules/auto_mode.py @@ -3,26 +3,6 @@ from src import Utils class Module(object): _name = "AutoMode" def __init__(self, bot, events, exports): - self.bot = bot - - events.on("received.join").hook(self.on_join) - - events.on("received.command.addop").hook(self.add_op, - require_mode="o", min_args=1, channel_only=True, - usage="<nickname>", help="Add a user to the automode op list") - events.on("received.command.removeop").hook(self.remove_op, - require_mode="o", min_args=1, channel_only=True, - usage="<nickname>", help="Remove a user from the automode " - "op list") - - events.on("received.command.addvoice").hook(self.add_voice, - require_mode="o", min_args=1, channel_only=True, - usage="<nickname>", help="Add a user to the automode voice list") - events.on("received.command.removevoice").hook(self.remove_voice, - require_mode="o", min_args=1, channel_only=True, - usage="<nickname>", help="Remove a user from the automode " - "voice list") - exports.add("channelset", {"setting": "automode", "help": "Disable/Enable automode", "validate": Utils.bool_or_none}) @@ -34,8 +14,11 @@ class Module(object): if modes: channel.send_mode("+%s" % "".join(modes), " ".join([user.nickname for mode in modes])) + + @Utils.hook("received.join") def on_join(self, event): self._check_modes(event["channel"], event["user"]) + @Utils.hook("received.account") def on_account(self, event): for channel in event["user"].channels: self._check_modes(channel, event["user"]) @@ -70,12 +53,32 @@ class Module(object): event["stdout"].write("Removed automode %s from '%s'" % ( mode_name, target_user.nickname)) + @Utils.hook("received.command.addop", require_mode="o", min_args=1, + channel_only=True, usage="<nickname>") def add_op(self, event): + """ + Add a user to the auto-mode list as an op + """ self._add_mode(event, "o", "op") + @Utils.hook("received.command.removeop", require_mode="o", min_args=1, + channel_only=True, usage="<nickname>") def remove_op(self, event): + """ + Remove a user from the auto-mode list as an op + """ self._remove_mode(event, "o", "op") + @Utils.hook("received.command.addvoice", require_mode="o", min_args=1, + channel_only=True, usage="<nickname>") def add_voice(self, event): + """ + Add a user to the auto-mode list as a voice + """ self._add_mode(event, "v", "voice") + @Utils.hook("received.command.removevoice", require_mode="o", min_args=1, + channel_only=True, usage="<nickname>") def remove_voice(self, event): + """ + Remove a user from the auto-mode list as anvoice + """ self._remove_mode(event, "v", "voice") |
