mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-09 19:01:42 +00:00
Merge pull request #16 from vIiRuS/master
manage admins from useradmin interface.
This commit is contained in:
@@ -13,9 +13,9 @@
|
||||
<h3>{% trans "All Members" %}</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="55%">{% trans "Email" %}</th>
|
||||
<th width="45%">{% trans "Email" %}</th>
|
||||
<th width="20%">{% trans "Status" %}</th>
|
||||
<th width="25%">{% trans "Operations" %}</th>
|
||||
<th width="35%">{% trans "Operations" %}</th>
|
||||
</tr>
|
||||
|
||||
{% for user in users %}
|
||||
@@ -30,6 +30,11 @@
|
||||
{% if not user.is_self %}
|
||||
<a href="#" class="remove-user-btn op" data-url="{{ SITE_ROOT }}useradmin/remove/{{ user.props.id }}/" data-target="{{ user.props.email }}">{% trans "Delete" %}</a>
|
||||
<a href="#" class="reset-user-btn op" data-url="{% url 'user_reset' user.id %}" data-target="{{ user.props.email }}">{% trans "ResetPwd" %}</a>
|
||||
{% if user.is_staff %}
|
||||
<a href="#" class="reset-user-btn op" data-url="{% url 'user_remove_admin' user.id %}" data-target="{{ user.props.email }}">{% trans "Take Admin" %}</a>
|
||||
{% else %}
|
||||
<a href="#" class="reset-user-btn op" data-url="{% url 'user_make_admin' user.id %}" data-target="{{ user.props.email }}">{% trans "Give Admin" %}</a>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</td>
|
||||
</tr>
|
||||
|
2
urls.py
2
urls.py
@@ -74,6 +74,8 @@ urlpatterns = patterns('',
|
||||
|
||||
(r'^useradmin/add/$', user_add),
|
||||
(r'^useradmin/remove/(?P<user_id>[^/]+)/$', user_remove),
|
||||
(r'^useradmin/makeadmin/(?P<user_id>[^/]+)/$', user_make_admin),
|
||||
(r'^useradmin/removeadmin/(?P<user_id>[^/]+)/$', user_remove_admin),
|
||||
(r'^useradmin/info/(?P<email>[^/]+)/$', user_info),
|
||||
(r'^useradmin/activate/(?P<user_id>[^/]+)/$', activate_user),
|
||||
url(r'^useradmin/password/reset/(?P<user_id>[^/]+)/$', user_reset, name='user_reset'),
|
||||
|
26
views.py
26
views.py
@@ -2066,6 +2066,32 @@ def user_remove(request, user_id):
|
||||
|
||||
return HttpResponseRedirect(reverse('sys_useradmin'))
|
||||
|
||||
@login_required
|
||||
@sys_staff_required
|
||||
def user_make_admin(request, user_id):
|
||||
"""Remove user, also remove group relationship."""
|
||||
try:
|
||||
user = User.objects.get(id=int(user_id))
|
||||
user.is_staff = True
|
||||
user.save()
|
||||
except User.DoesNotExist:
|
||||
pass
|
||||
|
||||
return HttpResponseRedirect(reverse('sys_useradmin'))
|
||||
|
||||
@login_required
|
||||
@sys_staff_required
|
||||
def user_remove_admin(request, user_id):
|
||||
"""Remove user, also remove group relationship."""
|
||||
try:
|
||||
user = User.objects.get(id=int(user_id))
|
||||
user.is_staff = False
|
||||
user.save()
|
||||
except User.DoesNotExist:
|
||||
pass
|
||||
|
||||
return HttpResponseRedirect(reverse('sys_useradmin'))
|
||||
|
||||
@login_required
|
||||
@sys_staff_required
|
||||
def activate_user(request, user_id):
|
||||
|
Reference in New Issue
Block a user