# Erebus IRC bot - Author: Erebus Team
-# trivia module
+# userinfo module
# This file is released into the public domain; see http://unlicense.org/
# module info
modinfo = {
'author': 'Erebus Team',
'license': 'public domain',
- 'compatible': [1], # compatible module API versions
- 'depends': [], # other modules required to work properly?
+ 'compatible': [2],
+ 'depends': [],
+ 'softdeps': ['help'],
}
# preamble
if thing.auth is not None:
return "#"+thing.auth
elif isinstance(thing, basestring):
- if thing[0] == "#":
+ if thing.startswith("#"):
return thing
else:
if parent.user(thing).auth is not None:
db.setdefault(str(user).lower(), {})[key] = value #but set nick too
#commands
-@lib.hook(needchan=False)
+@lib.hook(needchan=False, wantchan=True)
@lib.help("[<target>]", "lists info items known about someone", "<target> may be a nick, or an auth in format '#auth'", "it defaults to yourself")
def getitems(bot, user, chan, realtarget, *args):
- if chan is not None and realtarget == chan.name: replyto = chan
+ if chan is not None: replyto = chan
else: replyto = user
if len(args) > 0:
bot.msg(replyto, "%(user)s: %(target)s has the following info items: %(items)s" % {'user':user,'target':target,'items':(', '.join(_keys(target)))})
-@lib.hook(needchan=False)
+@lib.hook(needchan=False, wantchan=True)
@lib.help("[<target>] <item>", "gets an info item about someone", "<target> may be a nick, or an auth in format '#auth'", "it defaults to yourself")
@lib.argsGE(1)
def getinfo(bot, user, chan, realtarget, *args):
- if chan is not None and realtarget == chan.name: replyto = chan
+ if chan is not None: replyto = chan
else: replyto = user
if len(args) > 1: