mirror of
https://github.com/Mikaela/Limnoria.git
synced 2024-11-27 13:19:24 +01:00
Better.
This commit is contained in:
parent
f515617529
commit
591e66664d
21
src/User.py
21
src/User.py
@ -141,21 +141,24 @@ class User(callbacks.Privmsg):
|
||||
Unregisters <name> from the user database. If the user giving this
|
||||
command is an owner user, the password is not necessary.
|
||||
"""
|
||||
if conf.supybot.databases.users.allowUnregistration():
|
||||
if not user.checkPassword(password):
|
||||
try:
|
||||
user = ircdb.users.getUser(msg.prefix)
|
||||
caller = ircdb.users.getUser(msg.prefix)
|
||||
isOwner = caller.checkCapability('owner')
|
||||
except KeyError:
|
||||
user = None
|
||||
if not user or not user.checkCapability('owner'):
|
||||
irc.error(conf.supybot.replies.incorrectAuthentication())
|
||||
caller = None
|
||||
if not conf.supybot.databases.users.allowUnregistration():
|
||||
if not caller or not isOwner:
|
||||
self.log.warning('%s tried to unregister user %s.',
|
||||
msg.prefix, user.name)
|
||||
irc.error('This command has been disabled. You\'ll have to '
|
||||
'ask the owner of this bot to unregister your user.')
|
||||
if isOwner or user.checkPassword(password):
|
||||
ircdb.users.delUser(user.id)
|
||||
irc.replySuccess()
|
||||
else:
|
||||
irc.error('This command has been disabled. You\'ll have to ask '
|
||||
'the owner of this bot to unregister your user.')
|
||||
irc.error(conf.supybot.replies.incorrectAuthentication())
|
||||
unregister = wrap(unregister, ['private', 'otherUser',
|
||||
additional('something', '')])
|
||||
additional('anything')])
|
||||
|
||||
def changename(self, irc, msg, args, user, newname, password):
|
||||
"""<name> <new name> [<password>]
|
||||
|
@ -752,6 +752,8 @@ registerGlobalValue(supybot.databases.users, 'allowUnregistration',
|
||||
registry.Boolean(False, """Determines whether the bot will allow users to
|
||||
unregister their users. This can wreak havoc with already-existing
|
||||
databases, so by default we don't allow it. Enable this at your own risk.
|
||||
(Do also note that this does not prevent the owner of the bot from using
|
||||
the unregister command.)
|
||||
"""))
|
||||
registerGlobalValue(supybot.databases.users, 'hash',
|
||||
registry.Boolean(True, """Determines whether the passwords in the user
|
||||
|
Loading…
Reference in New Issue
Block a user