diff options
| author | 2019-03-03 22:38:34 +0000 | |
|---|---|---|
| committer | 2019-03-03 22:38:34 +0000 | |
| commit | 7a3db82300c126ef3004899b98abd742b268a417 (patch) | |
| tree | cd405e2946b39d5baab19ddea165d3f7962758ea | |
| parent | Add COLOR_NEUTRAL, show repo/number/state colours in !ghissue (diff) | |
Add IRCServer.has_capability and use it throughout line_handler
| -rw-r--r-- | modules/line_handler/channel.py | 2 | ||||
| -rw-r--r-- | modules/line_handler/core.py | 4 | ||||
| -rw-r--r-- | modules/line_handler/message.py | 2 | ||||
| -rw-r--r-- | src/IRCServer.py | 2 |
4 files changed, 6 insertions, 4 deletions
diff --git a/modules/line_handler/channel.py b/modules/line_handler/channel.py index a05cc2ff..487dcbd1 100644 --- a/modules/line_handler/channel.py +++ b/modules/line_handler/channel.py @@ -38,7 +38,7 @@ def handle_353(event): modes.add(event["server"].prefix_symbols[nickname[0]]) nickname = nickname[1:] - if "userhost-in-names" in event["server"].agreed_capabilities: + if event["server"].has_capability("userhost-in-names"): hostmask = utils.irc.seperate_hostmask(nickname) nickname = hostmask.nickname user = event["server"].get_user(hostmask.nickname) diff --git a/modules/line_handler/core.py b/modules/line_handler/core.py index 78a0c479..6ffc447f 100644 --- a/modules/line_handler/core.py +++ b/modules/line_handler/core.py @@ -29,8 +29,8 @@ def handle_005(events, event): isupport[key] = None event["server"].isupport.update(isupport) - if "NAMESX" in isupport and not "multi-prefix" in event[ - "server"].agreed_capabilities: + if "NAMESX" in isupport and not event["server"].has_capability( + "multi-prefix"): event["server"].send("PROTOCTL NAMESX") if "PREFIX" in isupport: diff --git a/modules/line_handler/message.py b/modules/line_handler/message.py index 9292aa17..aa0e9643 100644 --- a/modules/line_handler/message.py +++ b/modules/line_handler/message.py @@ -2,7 +2,7 @@ from src import utils def _from_self(server, direction, prefix): if direction == utils.Direction.SEND: - if "echo-message" in server.agreed_capabilities: + if server.has_capability("echo-message"): return None else: return True diff --git a/src/IRCServer.py b/src/IRCServer.py index cb69b4bb..d878fdf5 100644 --- a/src/IRCServer.py +++ b/src/IRCServer.py @@ -282,6 +282,8 @@ class Server(IRCObject.Object): return self.send(utils.irc.protocol.capability_end()) def send_authenticate(self, text: str) -> IRCLine.SentLine: return self.send(utils.irc.protocol.authenticate(text)) + def has_capability(self, capability: str) -> bool: + return capability in self.agreed_capabilities def waiting_for_capabilities(self) -> bool: return bool(len(self._capabilities_waiting)) |
