|
11 | 11 | CAPABILITIES = {"multi-prefix", "chghost", "invite-notify", "account-tag", |
12 | 12 | "account-notify", "extended-join", "away-notify", "userhost-in-names", |
13 | 13 | "draft/message-tags-0.2", "server-time", "cap-notify", |
14 | | - "batch", "draft/labeled-response"} |
| 14 | + "batch", "draft/labeled-response", "draft/rename"} |
15 | 15 |
|
16 | 16 | class Module(ModuleManager.BaseModule): |
17 | 17 | def _handle(self, server, line): |
@@ -566,3 +566,15 @@ def kick(self, event): |
566 | 566 | else: |
567 | 567 | self.events.on("self.kick").call(channel=channel, |
568 | 568 | reason=reason, user=user, server=event["server"]) |
| 569 | + |
| 570 | + # a channel has been renamed |
| 571 | + @utils.hook("raw.rename") |
| 572 | + def rename(self, event): |
| 573 | + old_name = event["args"][0] |
| 574 | + new_name = event["args"][1] |
| 575 | + channel = event["server"].get_channel(old_name) |
| 576 | + |
| 577 | + event["server"].rename_channel(old_name, new_name) |
| 578 | + self.events.on("received.rename").call(channel=channel, |
| 579 | + old_name=old_name, new_name=new_name, |
| 580 | + reason=event["arbitrary"] or events["args"][2])) |
0 commit comments