aboutsummaryrefslogtreecommitdiff
path: root/modules/silence.py
diff options
context:
space:
mode:
Diffstat (limited to 'modules/silence.py')
-rw-r--r--modules/silence.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/modules/silence.py b/modules/silence.py
index 3621b501..89b99bac 100644
--- a/modules/silence.py
+++ b/modules/silence.py
@@ -4,6 +4,15 @@ from src import ModuleManager, utils
SILENCE_TIME = 60*5 # 5 minutes
class Module(ModuleManager.BaseModule):
+ def on_load(self):
+ self.exports.add("is-silenced", self._is_silenced)
+
+ def _is_silenced(self, target):
+ silence_until = target.get_setting("silence-until", None)
+ if silence_until and time.time()<silence_until:
+ return True
+ return False
+
@utils.hook("received.command.silence", channel_only=True)
def silence(self, event):
"""
@@ -19,7 +28,7 @@ class Module(ModuleManager.BaseModule):
if event["is_channel"]:
silence_until = event["target"].get_setting("silence-until", None)
if silence_until:
- if time.time()<silence_until:
+ if self._is_silenced(event["target"]):
return utils.consts.PERMISSION_HARD_FAIL
else:
event["target"].del_setting("silence-until")