password change function
All checks were successful
Gitea/photolib/pipeline/head This commit looks good
All checks were successful
Gitea/photolib/pipeline/head This commit looks good
This commit is contained in:
parent
e649c988cf
commit
7996c829d0
@ -24,6 +24,15 @@ def delete_user(s, username):
|
||||
print("Deleted user {}".format(u.id))
|
||||
|
||||
|
||||
def update_password(s, username, password):
|
||||
u = s.query(User).filter(User.name == username).first()
|
||||
if not u:
|
||||
raise Exception("user doesn't exist")
|
||||
u.password = pwhash(password)
|
||||
s.commit()
|
||||
print("Updated password for user {}".format(u.id))
|
||||
|
||||
|
||||
def main():
|
||||
parser = argparse.ArgumentParser(description="User manipulation tool")
|
||||
parser.add_argument('-s', '--database', help="sqlalchemy database connection uri",
|
||||
@ -40,7 +49,9 @@ def main():
|
||||
p_delete = p_mode.add_parser('delete', help='delete users')
|
||||
p_delete.add_argument("-u", "--username", help="username", required=True)
|
||||
|
||||
#TODO add mode to change password
|
||||
p_pass = p_mode.add_parser('changepassword', help='change user\'s password')
|
||||
p_pass.add_argument("-u", "--username", help="username", required=True)
|
||||
p_pass.add_argument("-p", "--password", help="password", required=True)
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
@ -55,6 +66,8 @@ def main():
|
||||
list_users(session)
|
||||
elif args.action == "delete":
|
||||
delete_user(session, args.username)
|
||||
elif args.action == "changepassword":
|
||||
update_password(session, args.username, args.password)
|
||||
else:
|
||||
parser.print_help()
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user