Merge pull request #407 from resistivecorpse/testing

adds an on off config option for logging of joins parts and quits in Cha...
This commit is contained in:
Valentin Lorentz 2012-09-26 10:53:09 -07:00
commit 45e6b7be7a
2 changed files with 15 additions and 10 deletions

View File

@ -48,6 +48,8 @@ conf.registerGlobalValue(ChannelLogger, 'flushImmediately',
registry.Boolean(False, _("""Determines whether channel logfiles will be
flushed anytime they're written to, rather than being buffered by the
operating system.""")))
conf.registerChannelValue(ChannelLogger, 'showJoinParts',
registry.Boolean(True, _("""Determines wether joins and parts are logged""")))
conf.registerChannelValue(ChannelLogger, 'stripFormatting',
registry.Boolean(True, _("""Determines whether formatting characters (such
as bolding, color, etc.) are removed when writing the logs to disk.""")))

View File

@ -207,9 +207,10 @@ class ChannelLogger(callbacks.Plugin):
'*** %s is now known as %s\n', oldNick, newNick)
def doJoin(self, irc, msg):
for channel in msg.args[0].split(','):
self.doLog(irc, channel,
'*** %s <%s> has joined %s\n',
msg.nick, msg.prefix, channel)
if(self.registryValue('showJoinParts', channel)):
self.doLog(irc, channel,
'*** %s <%s> has joined %s\n',
msg.nick, msg.prefix, channel)
def doKick(self, irc, msg):
if len(msg.args) == 3:
@ -231,9 +232,10 @@ class ChannelLogger(callbacks.Plugin):
else:
reason = ""
for channel in msg.args[0].split(','):
self.doLog(irc, channel,
'*** %s <%s> has left %s%s\n',
msg.nick, msg.prefix, channel, reason)
if(self.registryValue('showJoinParts', channel)):
self.doLog(irc, channel,
'*** %s <%s> has left %s%s\n',
msg.nick, msg.prefix, channel, reason)
def doMode(self, irc, msg):
channel = msg.args[0]
@ -258,10 +260,11 @@ class ChannelLogger(callbacks.Plugin):
if not isinstance(irc, irclib.Irc):
irc = irc.getRealIrc()
for (channel, chan) in self.lastStates[irc].channels.iteritems():
if msg.nick in chan.users:
self.doLog(irc, channel,
'*** %s <%s> has quit IRC%s\n',
msg.nick, msg.prefix, reason)
if(self.registryValue('showJoinParts', channel)):
if msg.nick in chan.users:
self.doLog(irc, channel,
'*** %s <%s> has quit IRC%s\n',
msg.nick, msg.prefix, reason)
def outFilter(self, irc, msg):
# Gotta catch my own messages *somehow* :)