added Channel.ban supports in order to ban on join blacklist hostmask

This commit is contained in:
Nicolas Coevoet 2013-12-17 10:15:19 +01:00
parent e9208afe77
commit 905a13e70c

View File

@ -1898,7 +1898,14 @@ class ChanTracker(callbacks.Plugin,plugins.ChannelDBHandler):
chan = self.getChan(irc,channel)
chan.nicks[msg.nick] = True
n.addLog(channel,'has joined')
if best and not self._isVip(irc,channel,n):
c = ircdb.channels.getChannel(channel)
banned = False
if c.bans:
for ban in c.bans:
if match (ban,n):
i.add(irc,channel,'b',best,-1,irc.prefix,self.getDb(irc.network))
banned = True
if best and not self._isVip(irc,channel,n) and not banned:
isMassJoin = self._isSomething(irc,channel,channel,'massJoin')
if isMassJoin:
chan.action.enqueue(ircmsgs.IrcMsg('MODE %s %s' % (channel,self.registryValue('massJoinMode',channel=channel))))