index : logbot | |
Archlinux32 log bot | gitolite user |
summaryrefslogtreecommitdiff |
author | Filip H.F. "FiXato" Slagter <fixato@gmail.com> | 2012-06-08 23:44:16 +0200 |
---|---|---|
committer | Filip H.F. "FiXato" Slagter <fixato@gmail.com> | 2012-06-08 23:44:16 +0200 |
commit | 5cdb5750858bb344f86d5dada08614f91c63dcb1 (patch) | |
tree | 11425326e87028b73cfd2e7aa2a7bea8cc26f4aa | |
parent | 0be9eac469c7eb7699042288060d9b65eea48a53 (diff) |
-rwxr-xr-x[-rw-r--r--] | logbot.py | 18 |
diff --git a/logbot.py b/logbot.py index 8691d9d..d7010b5 100644..100755 --- a/logbot.py +++ b/logbot.py @@ -199,7 +199,10 @@ class Logbot(SingleServerIRCBot): def write_event(self, name, event, params={}): # Format the event properly - chans = event.target() + if name == 'nick': + chans = params["%chan%"] + else: + chans = event.target() msg = self.format_event(name, event, params) msg = urlify2(msg) @@ -323,10 +326,15 @@ class Logbot(SingleServerIRCBot): }) def on_nick(self, c, e): - self.write_event("nick", e, - {"%old%" : nm_to_n(e.source()), - "%new%" : e.target(), - }) + old_nick = nm_to_n(e.source()) + # Only write the event on channels that actually had the user in the channel + for chan in self.channels: + if old_nick in [x.lstrip('~%&@+') for x in self.channels[chan].users()]: + self.write_event("nick", e, + {"%old%" : old_nick, + "%new%" : e.target(), + "%chan%": chan, + }) def on_part(self, c, e): self.write_event("part", e) |