mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-20 19:08:21 +00:00
[sys-admin] add group info page
This commit is contained in:
88
seahub/templates/sysadmin/sys_admin_group_info.html
Normal file
88
seahub/templates/sysadmin/sys_admin_group_info.html
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
{% extends "admin_base.html" %}
|
||||||
|
{% load i18n group_avatar_tags avatar_tags seahub_tags %}
|
||||||
|
{% load url from future %}
|
||||||
|
|
||||||
|
{% block extra_style %}
|
||||||
|
<style type="text/css">
|
||||||
|
#left-panel { position:relative; }
|
||||||
|
</style>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block left_panel %}
|
||||||
|
<a class="go-back" title="{% trans "back to group list" %}" href="{% url 'sys_group_admin' %}"><span class="icon-chevron-left"></span></a>
|
||||||
|
<div class="side-info">
|
||||||
|
<h3 class="hd">{% trans "Group Info" %}</h3>
|
||||||
|
{% grp_avatar group.id 48 %}
|
||||||
|
<dl>
|
||||||
|
<dt>{% trans "Name" %}</dt>
|
||||||
|
<dd>{{ group.group_name}}</dd>
|
||||||
|
|
||||||
|
<dt>{% trans "Creator" %}</dt>
|
||||||
|
<dd><a href="{% url 'user_info' group.creator_name %}">{{ group.creator_name }}</a></dd>
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block right_panel %}
|
||||||
|
<div id="tabs" class="tab-tabs">
|
||||||
|
<div class="hd ovhd">
|
||||||
|
<ul class="tab-tabs-nav fleft">
|
||||||
|
<li class="tab"><a href="#library" class="a">{% trans "Libraries" %}</a></li>
|
||||||
|
<li class="tab"><a href="#member" class="a">{% trans "Members" %}</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="library">
|
||||||
|
{% if repos %}
|
||||||
|
<table class="repo-list">
|
||||||
|
<tr>
|
||||||
|
<th width="4%"><!--icon--></th>
|
||||||
|
<th width="35%">{% trans "Name" %}</th>
|
||||||
|
<th width="20%">{% trans "Size" %}</th>
|
||||||
|
<th width="26%">{% trans "Shared By" %}</th>
|
||||||
|
<th width="15%">{% trans "Operations" %}</th>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
{% for repo in repos %}
|
||||||
|
<tr>
|
||||||
|
<td><img src="{{MEDIA_URL}}img/sync-folder-20.png?t=1387267140" title="{% trans "Read-Write" %}" alt="{% trans "directory icon" %}" /></td>
|
||||||
|
<td><a href="{{ SITE_ROOT }}repo/{{ repo.id }}/">{{ repo.name }}</a></td>
|
||||||
|
<td>{{ repo.size|filesizeformat }}</td>
|
||||||
|
<td><a href="{% url 'user_info' repo.user %}">{{ repo.user }}</a></td>
|
||||||
|
<td data-id="{{ repo.id }}" data-name="{{repo.name}}">
|
||||||
|
<div><a href="#" class="repo-delete-btn op-icon vh" title="{% trans "Delete" %}"><img src="{{MEDIA_URL}}img/rm.png" alt="" /></a></div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
</table>
|
||||||
|
{% else %}
|
||||||
|
<div class="empty-tips">
|
||||||
|
<h2 class="alc">{% trans "No library has shared to this group" %}</h2>
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="member">
|
||||||
|
<ul class="user-list">
|
||||||
|
{% for m in members %}
|
||||||
|
<li class="user ovhd">
|
||||||
|
<a href="{% url 'user_info' m.user_name %}" class="pic fleft">{% avatar m.user_name 48 %}</a>
|
||||||
|
<div class="txt fright">
|
||||||
|
<a class="name" href="{% url 'user_info' m.user_name %}">{{ m.user_name|email2nickname }}</a>{% if m.is_staff %}<span> ({% trans "admin" %})</span>{% endif %}
|
||||||
|
<p>{{ m.user_name }}</p>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% include 'snippets/repo_del_popup.html' %}
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
|
||||||
|
{% block extra_script %}
|
||||||
|
<script type="text/javascript">
|
||||||
|
{% include 'snippets/repo_del_js.html' %}
|
||||||
|
</script>
|
||||||
|
{% endblock %}
|
@@ -17,7 +17,7 @@
|
|||||||
{% for group in groups %}
|
{% for group in groups %}
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<a href="{{ SITE_ROOT }}group/{{ group.props.id }}/">{{ group.props.group_name }}</a>
|
<a href="{% url 'sys_admin_group_info' group.id %}">{{ group.props.group_name }}</a>
|
||||||
{% if group.org_name %}
|
{% if group.org_name %}
|
||||||
<p style="font-size:11px;"><a href="{% url 'sys_org_info_user' group.org_id %}">({{group.org_name}})</a></p>
|
<p style="font-size:11px;"><a href="{% url 'sys_org_info_user' group.org_id %}">({{group.org_name}})</a></p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@@ -217,6 +217,7 @@ urlpatterns = patterns('',
|
|||||||
url(r'^sys/useradmin/ldap/$', sys_user_admin_ldap, name='sys_useradmin_ldap'),
|
url(r'^sys/useradmin/ldap/$', sys_user_admin_ldap, name='sys_useradmin_ldap'),
|
||||||
url(r'^sys/useradmin/admins/$', sys_user_admin_admins, name='sys_useradmin_admins'),
|
url(r'^sys/useradmin/admins/$', sys_user_admin_admins, name='sys_useradmin_admins'),
|
||||||
url(r'^sys/groupadmin/$', sys_group_admin, name='sys_group_admin'),
|
url(r'^sys/groupadmin/$', sys_group_admin, name='sys_group_admin'),
|
||||||
|
url(r'^sys/groupadmin/(?P<group_id>\d+)/$', sys_admin_group_info, name='sys_admin_group_info'),
|
||||||
url(r'^sys/orgadmin/$', sys_org_admin, name='sys_org_admin'),
|
url(r'^sys/orgadmin/$', sys_org_admin, name='sys_org_admin'),
|
||||||
url(r'^sys/orgadmin/(?P<org_id>\d+)/set_quota/$', sys_org_set_quota, name='sys_org_set_quota'),
|
url(r'^sys/orgadmin/(?P<org_id>\d+)/set_quota/$', sys_org_set_quota, name='sys_org_set_quota'),
|
||||||
url(r'^sys/orgadmin/(?P<org_id>\d+)/rename/$', sys_org_rename, name='sys_org_rename'),
|
url(r'^sys/orgadmin/(?P<org_id>\d+)/rename/$', sys_org_rename, name='sys_org_rename'),
|
||||||
|
@@ -16,7 +16,7 @@ from django.template import RequestContext
|
|||||||
from django.utils.translation import ugettext as _
|
from django.utils.translation import ugettext as _
|
||||||
|
|
||||||
from seaserv import ccnet_threaded_rpc, seafserv_threaded_rpc, get_emailusers, \
|
from seaserv import ccnet_threaded_rpc, seafserv_threaded_rpc, get_emailusers, \
|
||||||
CALC_SHARE_USAGE, seafile_api
|
CALC_SHARE_USAGE, seafile_api, get_group, get_group_members
|
||||||
from pysearpc import SearpcError
|
from pysearpc import SearpcError
|
||||||
|
|
||||||
from seahub.base.accounts import User
|
from seahub.base.accounts import User
|
||||||
@@ -977,6 +977,21 @@ def sys_group_admin(request):
|
|||||||
'page_next': page_next,
|
'page_next': page_next,
|
||||||
}, context_instance=RequestContext(request))
|
}, context_instance=RequestContext(request))
|
||||||
|
|
||||||
|
@login_required
|
||||||
|
@sys_staff_required
|
||||||
|
def sys_admin_group_info(request, group_id):
|
||||||
|
|
||||||
|
group_id = int(group_id)
|
||||||
|
group = get_group(group_id)
|
||||||
|
repos = seafile_api.get_repos_by_group(group_id)
|
||||||
|
members = get_group_members(group_id)
|
||||||
|
|
||||||
|
return render_to_response('sysadmin/sys_admin_group_info.html', {
|
||||||
|
'group': group,
|
||||||
|
'repos': repos,
|
||||||
|
'members': members,
|
||||||
|
}, context_instance=RequestContext(request))
|
||||||
|
|
||||||
@login_required
|
@login_required
|
||||||
@sys_staff_required
|
@sys_staff_required
|
||||||
def sys_org_admin(request):
|
def sys_org_admin(request):
|
||||||
|
Reference in New Issue
Block a user