diff options
| author | 2019-10-30 11:42:00 +0000 | |
|---|---|---|
| committer | 2019-10-30 11:42:00 +0000 | |
| commit | 35cc2d539de95bbb082917efae865f04cfe0f178 (patch) | |
| tree | f838f7fc2fddaebeb1531f57418aaa2422a41639 /modules/seen.py | |
| parent | actually set server._sasl_timeout (diff) | |
| signature | ||
!seen seen-info should be per-channel, not network wide
closes #196
Diffstat (limited to 'modules/seen.py')
| -rw-r--r-- | modules/seen.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/modules/seen.py b/modules/seen.py index 070b8f39..c009acfd 100644 --- a/modules/seen.py +++ b/modules/seen.py @@ -7,7 +7,7 @@ from src import ModuleManager, utils class Module(ModuleManager.BaseModule): def _change_seen(self, channel, user, action): user.set_setting("seen", time.time()) - user.set_setting("seen-info", {"action": action}) + channel.set_user_setting(user.get_id(), "seen-info", {"action": action}) @utils.hook("formatted.message.channel") @utils.hook("formatted.notice.channel") @@ -30,14 +30,18 @@ class Module(ModuleManager.BaseModule): seen_seconds = user.get_setting("seen") if seen_seconds: - seen_info = user.get_setting("seen-info", None) - seen_info = "" if seen_info == None else ( - " (%s%s)" % (seen_info["action"], utils.consts.RESET)) + seen_info = None + if event["is_channel"]: + seen_info = event["target"].get_user_setting( + event["user"].get_id(), "seen-info", None) + if seen_info: + seen_info = " (%s%s)" % (seen_info["action"], + utils.consts.RESET) since = utils.to_pretty_time(time.time()-seen_seconds, max_units=2) event["stdout"].write("%s was last seen %s ago%s" % ( - event["args_split"][0], since, seen_info)) + event["args_split"][0], since, seen_info or "")) else: event["stderr"].write("I have never seen %s before." % ( event["args_split"][0])) |
