Allow superusers to disable user accounts

This commit is contained in:
Joseph Schorr 2015-05-11 17:13:42 -04:00
parent 442cbed087
commit dc5af7496c
19 changed files with 291 additions and 37 deletions

View file

@ -115,7 +115,8 @@ def user_view(user):
'email': user.email,
'verified': user.verified,
'avatar': avatar.get_data_for_user(user),
'super_user': superusers.is_superuser(user.username)
'super_user': superusers.is_superuser(user.username),
'enabled': user.enabled
}
@resource('/v1/superuser/changelog/')
@ -335,6 +336,11 @@ class SuperUserManagement(ApiResource):
if 'email' in user_data:
model.update_email(user, user_data['email'], auto_verify=True)
if 'enabled' in user_data:
# Disable/enable the user.
user.enabled = bool(user_data['enabled'])
user.save()
return user_view(user)
abort(403)