1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-20 02:48:51 +00:00

[sysadmin] Enable admin to activate/inactivate a user

This commit is contained in:
zhengxie
2013-10-15 17:41:02 +08:00
parent 399a97361f
commit 6b9863f14c
4 changed files with 114 additions and 11 deletions

View File

@@ -285,6 +285,43 @@ def user_activate(request, user_id):
return HttpResponseRedirect(next)
@login_required
@sys_staff_required
def user_deactivate(request, user_id):
try:
user = User.objects.get(id=int(user_id))
user.is_active = False
user.save()
messages.success(request, _(u'Successfully deactivated "%s".') % user.email)
except User.DoesNotExist:
messages.success(request, _(u'Failed to deactivate: user does not exist.'))
next = request.META.get('HTTP_REFERER', None)
if not next:
next = reverse('sys_useradmin')
return HttpResponseRedirect(next)
@login_required
@sys_staff_required
def user_toggle_status(request, user_id):
content_type = 'application/json; charset=utf-8'
try:
user_status = int(request.GET.get('s', 0))
except ValueError:
user_status = 0
try:
user = User.objects.get(id=int(user_id))
user.is_active = bool(user_status)
user.save()
return HttpResponse(json.dumps({'success': True}),
content_type=content_type)
except User.DoesNotExist:
return HttpResponse(json.dumps({'success': False}), status=500,
content_type=content_type)
def send_user_reset_email(request, email, password):
"""
Send email when reset user password.