5
__copyright__ = 'this file is in the public domain'
7
from gozerbot.commands import cmnds
8
from gozerbot.generic import getwho
9
from gozerbot.examples import examples
10
from gozerbot.plughelp import plughelp
11
from gozerbot.ignore import addignore, delignore, ignore
12
from gozerbot.users import users
14
plughelp.add('ignore', 'ignore users for a certain time')
16
def handle_ignore(bot, ievent):
17
""" ignore nick for number of seconds """
19
(nick, nrseconds) = ievent.args
20
nrseconds = int(nrseconds)
22
ievent.missing('<nick> <seconds>')
24
userhost = getwho(bot, nick)
26
ievent.reply("can't get userhost of %s" % nick)
28
allowed = users.allowed(userhost, 'OPER', log=False)
30
ievent.reply("can't ignore OPER")
32
addignore(userhost, nrseconds)
33
ievent.reply("ignoring %s for %s seconds" % (nick, nrseconds))
35
cmnds.add('ignore', handle_ignore, ['OPER', 'IGNORE'], speed=1)
36
examples.add('ignore', 'ignore <nick> <seconds> .. ignore <nick> for \
37
<seconds>', 'ignore dunker 3600')
39
def handle_ignoredel(bot, ievent):
40
""" remove nick from ignore list """
44
ievent.missing('<nick>')
46
userhost = getwho(bot, nick)
48
ievent.reply("can't get userhost of %s" % nick)
50
if delignore(userhost):
51
ievent.reply("ignore for %s removed" % nick)
53
ievent.reply("can't remove ignore of %s" % nick)
55
cmnds.add('ignore-del', handle_ignoredel, ['OPER', 'IGNORE'])
56
examples.add('ignore-del', 'ignore-del <nick> .. unignore <nick>', \
59
def handle_ignorelist(bot, ievent):
60
""" show ignore list """
61
ievent.reply(str(ignore.data))
63
cmnds.add('ignore-list', handle_ignorelist, 'OPER')
64
examples.add('ignore-list', 'show ignore list', 'ignore-list')