mirror of
https://github.com/ncoevoet/ChanTracker.git
synced 2025-04-27 13:31:10 -05:00
added few new settings related to action against affected users, permanent ban
This commit is contained in:
parent
94527633c3
commit
5693ff8b6f
11
plugin.py
11
plugin.py
@ -1838,8 +1838,9 @@ class ChanTracker(callbacks.Plugin,plugins.ChannelDBHandler):
|
|||||||
def _addChanModeItem (self,irc,channel,mode,value,prefix,date):
|
def _addChanModeItem (self,irc,channel,mode,value,prefix,date):
|
||||||
# bqeI* -ov
|
# bqeI* -ov
|
||||||
if irc.isChannel(channel) and channel in irc.state.channels:
|
if irc.isChannel(channel) and channel in irc.state.channels:
|
||||||
chan = self.getChan(irc,channel)
|
if mode in self.registryValue('modesToAsk',channel=channel) or mode in self.registryValue('modesToAskWhenOpped',channel=channel):
|
||||||
chan.addItem(mode,value,prefix,float(date),self.getDb(irc.network))
|
chan = self.getChan(irc,channel)
|
||||||
|
chan.addItem(mode,value,prefix,float(date),self.getDb(irc.network))
|
||||||
|
|
||||||
def _endList (self,irc,msg,channel,mode):
|
def _endList (self,irc,msg,channel,mode):
|
||||||
if irc.isChannel(channel) and channel in irc.state.channels:
|
if irc.isChannel(channel) and channel in irc.state.channels:
|
||||||
@ -1960,14 +1961,14 @@ class ChanTracker(callbacks.Plugin,plugins.ChannelDBHandler):
|
|||||||
c = ircdb.channels.getChannel(channel)
|
c = ircdb.channels.getChannel(channel)
|
||||||
banned = False
|
banned = False
|
||||||
if not self._isVip(irc,channel,n):
|
if not self._isVip(irc,channel,n):
|
||||||
if c.bans and len(c.bans):
|
if c.bans and len(c.bans) and self.registryValue('useChannelBansForPermanentBan',channel=channel):
|
||||||
for ban in list(c.bans):
|
for ban in list(c.bans):
|
||||||
if match (ban,n,irc):
|
if match (ban,n,irc):
|
||||||
if i.add(irc,channel,'b',best,self.registryValue('badDuration',channel=channel),irc.prefix,self.getDb(irc.network)):
|
if i.add(irc,channel,'b',best,self.registryValue('badDuration',channel=channel),irc.prefix,self.getDb(irc.network)):
|
||||||
banned = True
|
banned = True
|
||||||
self.forceTickle = True
|
self.forceTickle = True
|
||||||
break
|
break
|
||||||
if best and not banned:
|
if not banned:
|
||||||
isMassJoin = self._isSomething(irc,channel,channel,'massJoin')
|
isMassJoin = self._isSomething(irc,channel,channel,'massJoin')
|
||||||
if isMassJoin:
|
if isMassJoin:
|
||||||
chan.action.enqueue(ircmsgs.IrcMsg('MODE %s %s' % (channel,self.registryValue('massJoinMode',channel=channel))))
|
chan.action.enqueue(ircmsgs.IrcMsg('MODE %s %s' % (channel,self.registryValue('massJoinMode',channel=channel))))
|
||||||
@ -2619,7 +2620,7 @@ class ChanTracker(callbacks.Plugin,plugins.ChannelDBHandler):
|
|||||||
chan.action.enqueue(ircmsgs.kick(channel,nick,self.registryValue('kickMessage')))
|
chan.action.enqueue(ircmsgs.kick(channel,nick,self.registryValue('kickMessage')))
|
||||||
self.forceTickle = True
|
self.forceTickle = True
|
||||||
kicked = True
|
kicked = True
|
||||||
if not kicked and m in self.registryValue('modesToAsk',channel=channel):
|
if not kicked and m in self.registryValue('modesToAsk',channel=channel) and self.registryValue('doActionAgainstAffected',channel=channel):
|
||||||
if nick in irc.state.channels[channel].ops and not nick == irc.nick:
|
if nick in irc.state.channels[channel].ops and not nick == irc.nick:
|
||||||
chan.queue.enqueue(('-o',nick))
|
chan.queue.enqueue(('-o',nick))
|
||||||
if nick in irc.state.channels[channel].halfops and not nick == irc.nick:
|
if nick in irc.state.channels[channel].halfops and not nick == irc.nick:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user