From: zonidjan Date: Wed, 8 Nov 2017 00:39:27 +0000 (-0600) Subject: userinfo - add function/command to delete X-Git-Url: https://jfr.im/git/erebus.git/commitdiff_plain/a0bd416f5b174723f9fbf9b83d6851af03df3e45 userinfo - add function/command to delete --- diff --git a/modules/userinfo.py b/modules/userinfo.py index 74a70e2..d907b08 100644 --- a/modules/userinfo.py +++ b/modules/userinfo.py @@ -73,6 +73,14 @@ def _set(user, key, value): if getauth(user) is not None: db.setdefault(getauth(user), {})[key] = value #use auth if we can db.setdefault(str(user).lower(), {})[key] = value #but set nick too +def _del(user, key): + key = key.lower() + auth = getauth(user) + if auth is not None and auth in db and key in db[auth]: + del db[auth][key] + target = str(user).lower() + if target in db and key in db[target]: + del db[target][key] #commands @lib.hook(needchan=False, wantchan=True) @@ -116,10 +124,26 @@ def setinfo(bot, user, chan, realtarget, *args): closeshop() bot.msg(user, "Done.") -@lib.hook(glevel=lib.STAFF, needchan=False) +@lib.hook(needchan=False) +@lib.help("", "deletes an info item about you") +@lib.argsEQ(1) +def delinfo(bot, user, chan, realtarget, *args): + _del(user, args[0]) + closeshop() + bot.msg(user, "Done.") + +@lib.hook(glevel=lib.ADMIN, needchan=False) @lib.help(" ", "sets an info item about someone else", " may be a nick, or an auth in format '#auth'") @lib.argsGE(3) def osetinfo(bot, user, chan, realtarget, *args): _set(args[0], args[1], ' '.join(args[2:])) closeshop() bot.msg(user, "Done.") + +@lib.hook(glevel=lib.STAFF, needchan=False) +@lib.help(" ", "deletes an info item about someone else", " may be a nick, or an auth in format '#auth'") +@lib.argsEQ(2) +def odelinfo(bot, user, chan, realtarget, *args): + _del(args[0], args[1]) + closeshop() + bot.msg(user, "Done.")