mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-02 15:38:15 +00:00
Add groups view
This commit is contained in:
25
templates/groups.html
Normal file
25
templates/groups.html
Normal file
@@ -0,0 +1,25 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block title %}Groups{% endblock %}
|
||||
|
||||
{% block left_panel %}
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block right_panel %}
|
||||
<table class="group-list default">
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>ID</th>
|
||||
<th>Maintainer</th>
|
||||
</tr>
|
||||
{% for group in groups %}
|
||||
<tr>
|
||||
<td>{{ group.props.name }}</td>
|
||||
<td>{{ group.props.id }}</td>
|
||||
<td>{{ group.props.maintainers }}</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</table>
|
||||
|
||||
{% endblock %}
|
@@ -1,7 +1,7 @@
|
||||
|
||||
import service
|
||||
from service import cclient, ccnet_rpc, seamsg_rpc
|
||||
from service import translate_peerid, translate_msgtime
|
||||
from service import translate_peerid, translate_msgtime, translate_groupid
|
||||
from service import get_peers_by_role
|
||||
from service import get_groups, get_group
|
||||
|
||||
|
@@ -31,10 +31,30 @@ def translate_peerid(peer_id):
|
||||
except:
|
||||
peer = ccnet_rpc.get_peer(peer_id)
|
||||
if peer:
|
||||
peer_db['peer_id'] = peer
|
||||
peer_db[peer_id] = peer
|
||||
else:
|
||||
return peer_id
|
||||
return peer_id[:8]
|
||||
if peer.props.name:
|
||||
return peer.props.name + "(" + peer_id[:4] + ")"
|
||||
else:
|
||||
return peer_id[:8]
|
||||
|
||||
group_db = {}
|
||||
|
||||
def translate_groupid(group_id):
|
||||
try:
|
||||
group = group_db[group_id]
|
||||
except:
|
||||
group = ccnet_rpc.get_group(group_id)
|
||||
if group:
|
||||
group_db[group_id] = group
|
||||
else:
|
||||
return group_id[:8]
|
||||
if group.props.name:
|
||||
return group.props.name + "(" + group_id[:4] + ")"
|
||||
else:
|
||||
return group_id[:8]
|
||||
|
||||
|
||||
def translate_msgtime(msgtime):
|
||||
return datetime.fromtimestamp(
|
||||
|
3
urls.py
3
urls.py
@@ -1,6 +1,6 @@
|
||||
from django.conf.urls.defaults import *
|
||||
from django.conf import settings
|
||||
from seahub.views import root, home, peers
|
||||
from seahub.views import root, home, peers, groups
|
||||
|
||||
# Uncomment the next two lines to enable the admin:
|
||||
# from django.contrib import admin
|
||||
@@ -20,6 +20,7 @@ urlpatterns = patterns('',
|
||||
(r'^$', root),
|
||||
(r'^home/$', home),
|
||||
(r'^peers/$', peers),
|
||||
(r'^groups/$', groups),
|
||||
)
|
||||
|
||||
if settings.DEBUG:
|
||||
|
12
views.py
12
views.py
@@ -3,15 +3,17 @@ from django.shortcuts import render_to_response
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.template import RequestContext
|
||||
|
||||
from seaserv import cclient, ccnet_rpc
|
||||
from seaserv import cclient, ccnet_rpc, get_groups
|
||||
|
||||
def root(request):
|
||||
return HttpResponseRedirect(reverse(home))
|
||||
|
||||
|
||||
def home(request):
|
||||
return render_to_response('home.html', {
|
||||
}, context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def peers(request):
|
||||
peer_type = request.REQUEST.get('type', 'all')
|
||||
peer_ids = ccnet_rpc.list_peers()
|
||||
@@ -30,3 +32,11 @@ def peers(request):
|
||||
return render_to_response('peers.html', {
|
||||
'peers': peers,
|
||||
}, context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def groups(request):
|
||||
groups = get_groups()
|
||||
return render_to_response('groups.html', {
|
||||
'groups': groups,
|
||||
}, context_instance=RequestContext(request))
|
||||
|
||||
|
Reference in New Issue
Block a user