mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-10 03:11:07 +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>
|
<h3>{% trans "All Members" %}</h3>
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
<th width="55%">{% trans "Email" %}</th>
|
<th width="45%">{% trans "Email" %}</th>
|
||||||
<th width="20%">{% trans "Status" %}</th>
|
<th width="20%">{% trans "Status" %}</th>
|
||||||
<th width="25%">{% trans "Operations" %}</th>
|
<th width="35%">{% trans "Operations" %}</th>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
{% for user in users %}
|
{% for user in users %}
|
||||||
@@ -30,6 +30,11 @@
|
|||||||
{% if not user.is_self %}
|
{% 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="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>
|
<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 %}
|
{% endif %}
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
2
urls.py
2
urls.py
@@ -74,6 +74,8 @@ urlpatterns = patterns('',
|
|||||||
|
|
||||||
(r'^useradmin/add/$', user_add),
|
(r'^useradmin/add/$', user_add),
|
||||||
(r'^useradmin/remove/(?P<user_id>[^/]+)/$', user_remove),
|
(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/info/(?P<email>[^/]+)/$', user_info),
|
||||||
(r'^useradmin/activate/(?P<user_id>[^/]+)/$', activate_user),
|
(r'^useradmin/activate/(?P<user_id>[^/]+)/$', activate_user),
|
||||||
url(r'^useradmin/password/reset/(?P<user_id>[^/]+)/$', user_reset, name='user_reset'),
|
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'))
|
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
|
@login_required
|
||||||
@sys_staff_required
|
@sys_staff_required
|
||||||
def activate_user(request, user_id):
|
def activate_user(request, user_id):
|
||||||
|
Reference in New Issue
Block a user