aboutsummaryrefslogtreecommitdiff
path: root/modules/channel_save.py
diff options
context:
space:
mode:
authorGravatar jesopo2020-07-03 13:14:52 +0100
committerGravatar jesopo2020-07-03 13:14:52 +0100
commit74abbe7e5ca2d9d2d667269b21c2034789a93921 (patch)
treebf4a8e38b91b74ad2b54338b754a7254ad1eff2a /modules/channel_save.py
parentremove channels from autojoin when they are ERR_LINKCHANNEL (470) (diff)
rename channel_save.py to autojoin.py
Diffstat (limited to 'modules/channel_save.py')
-rw-r--r--modules/channel_save.py49
1 files changed, 0 insertions, 49 deletions
diff --git a/modules/channel_save.py b/modules/channel_save.py
deleted file mode 100644
index bbd08dfb..00000000
--- a/modules/channel_save.py
+++ /dev/null
@@ -1,49 +0,0 @@
-from src import ModuleManager, utils
-
-BATCH_MAX = 10
-
-class Module(ModuleManager.BaseModule):
- @utils.hook("received.001")
- def on_connect(self, event):
- channels = event["server"].get_setting("autojoin", [])
- if channels:
- channel_batches = [channels[i:i+BATCH_MAX] for i in range(
- 0, len(channels), BATCH_MAX)]
- for channel_batch in channel_batches:
- event["server"].send_joins(channel_batch)
-
- @utils.hook("self.join")
- def on_join(self, event):
- channels = event["server"].get_setting("autojoin", [])
- channel_name = event["server"].irc_lower(event["channel"].name)
- if not channel_name in channels:
- channels.append(channel_name)
- event["server"].set_setting("autojoin", channels)
-
- def _remove_channel(self, server, channel_name):
- channels = server.get_setting("autojoin", [])
- if channel_name in channels:
- channels.remove(channel_name)
- server.set_setting("autojoin", channels)
- return True
- else:
- return False
-
- @utils.hook("self.part")
- def on_part(self, event):
- self._remove_channel(event["server"], event["channel"].name)
-
- @utils.hook("self.kick")
- def on_kick(self, event):
- self._remove_channel(event["server"], event["channel"].name)
-
- @utils.hook("raw.received.470")
- def on_linkchannel(self, event):
- initial = event["line"].args[1]
- initial_lower = event["server"].irc_lower(initial)
- linked = event["line"].args[2]
-
- if self._remove_channel(event["server"], initial_lower):
- self.log.warn(f"{str(event['server'])} "
- f"channel {initial} linked to {linked} "
- "- removed from autojoin")