diff options
| author | 2019-07-03 08:13:28 +0100 | |
|---|---|---|
| committer | 2019-07-03 08:13:28 +0100 | |
| commit | 76ab7935a04489017b6bb242593989621f1cfc30 (patch) | |
| tree | dbdae4b55d22cd6fbe7a31083f17328439a34e31 /modules | |
| parent | Show an error (instead of throwing) when !define gets a 404 (diff) | |
| signature | ||
return parsed modes from IRCChannel.parse_modes, pass through mode events
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/format_activity.py | 4 | ||||
| -rw-r--r-- | modules/line_handler/__init__.py | 4 | ||||
| -rw-r--r-- | modules/line_handler/channel.py | 7 | ||||
| -rw-r--r-- | modules/line_handler/core.py | 7 |
4 files changed, 13 insertions, 9 deletions
diff --git a/modules/format_activity.py b/modules/format_activity.py index 978eabef..c9cf71b2 100644 --- a/modules/format_activity.py +++ b/modules/format_activity.py @@ -127,12 +127,12 @@ class Module(ModuleManager.BaseModule): @utils.hook("received.mode.channel") def mode(self, event): - args = " ".join(event["mode_args"]) + args = " ".join(event["args_str"]) if args: args = " %s" % args line_minimal = "%s set mode %s%s" % ( - event["user"].nickname, "".join(event["modes"]), args) + event["user"].nickname, "".join(event["modes_str"]), args) line = "- %s" % line_minimal self._event("mode.channel", event["server"], line, diff --git a/modules/line_handler/__init__.py b/modules/line_handler/__init__.py index fed529e9..2b9891af 100644 --- a/modules/line_handler/__init__.py +++ b/modules/line_handler/__init__.py @@ -226,9 +226,9 @@ class Module(ModuleManager.BaseModule): core.handle_354(event) # response to an empty mode command - @utils.hook("raw.received.324", default_event=True) + @utils.hook("raw.received.324") def handle_324(self, event): - channel.handle_324(event) + channel.handle_324(self.events, event) # channel creation unix timestamp @utils.hook("raw.received.329", default_event=True) diff --git a/modules/line_handler/channel.py b/modules/line_handler/channel.py index 7dfea4ca..77091206 100644 --- a/modules/line_handler/channel.py +++ b/modules/line_handler/channel.py @@ -117,12 +117,15 @@ def part(events, event): events.on("self.part").call(channel=channel, reason=reason, server=event["server"]) -def handle_324(event): +def handle_324(events, event): if event["line"].args[1] in event["server"].channels: channel = event["server"].channels.get(event["line"].args[1]) modes = event["line"].args[2] args = event["line"].args[3:] - channel.parse_modes(modes, args[:]) + new_modes = channel.parse_modes(modes, args[:]) + events.on("received.324").call(modes=new_modes, + channel=channel, server=event["server"], mode_str=modes, + args_str=args) def handle_329(event): channel = event["server"].channels.get(event["line"].args[1]) diff --git a/modules/line_handler/core.py b/modules/line_handler/core.py index 8957f958..3207a1a9 100644 --- a/modules/line_handler/core.py +++ b/modules/line_handler/core.py @@ -83,10 +83,11 @@ def mode(events, event): modes = event["line"].args[1] args = event["line"].args[2:] - channel.parse_modes(modes, args[:]) + new_modes = channel.parse_modes(modes, args[:]) - events.on("received.mode.channel").call(modes=modes, mode_args=args, - channel=channel, server=event["server"], user=user) + events.on("received.mode.channel").call(modes=new_modes, + channel=channel, server=event["server"], user=user, modes_str=modes, + args_str=args) elif event["server"].is_own_nickname(target): modes = event["line"].args[1] _own_modes(event["server"], modes) |
