1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-08-01 23:38:37 +00:00

Wrap get_group rpc

This commit is contained in:
xiez 2012-08-01 22:45:58 +08:00
parent 4db42157e9
commit edbc6de917
5 changed files with 21 additions and 18 deletions

View File

@ -7,7 +7,8 @@ from django.template import RequestContext
from auth.decorators import login_required
from seaserv import ccnet_rpc, ccnet_threaded_rpc, seafserv_threaded_rpc, get_repo, \
get_group_repoids, check_group_staff, get_commits, get_personal_groups
get_group_repoids, check_group_staff, get_commits, get_personal_groups, \
get_group
from pysearpc import SearpcError
from models import GroupMessage, MessageReply
@ -115,7 +116,7 @@ def render_group_info(request, group_id, form):
# if request.user.org and not request.user.org.is_staff:
# return render_error(request, u'未加入该小组')
group = ccnet_threaded_rpc.get_group(group_id_int)
group = get_group(group_id)
if not group:
return HttpResponseRedirect(reverse('group_list', args=[]))
@ -264,7 +265,9 @@ def msg_reply_new(request):
try:
m = GroupMessage.objects.get(id=msg_id)
# get group name
group = ccnet_threaded_rpc.get_group(int(m.group_id))
group = get_group(m.group_id)
if not group:
continue
m.group_name = group.group_name
# get message replies
@ -330,7 +333,7 @@ def group_members(request, group_id):
if not check_group_staff(group_id_int, request.user):
return render_permission_error(request, u'只有小组管理员有权管理小组')
group = ccnet_threaded_rpc.get_group(group_id_int)
group = get_group(group_id)
if not group:
return HttpResponseRedirect(reverse('group_list', args=[]))
@ -417,7 +420,7 @@ def group_share_repo(request, repo_id, group_id, from_email):
"""
# Check whether group exists
group = ccnet_threaded_rpc.get_group(group_id)
group = get_group(group_id)
if not group:
return render_error(request, u'共享失败:小组不存在')
@ -439,7 +442,7 @@ def group_unshare_repo(request, repo_id, group_id, from_email):
"""
# Check whether group exists
group = ccnet_threaded_rpc.get_group(group_id)
group = get_group(group_id)
if not group:
return render_error(request, u'共享失败:小组不存在')

View File

@ -21,7 +21,7 @@
<li>
小组
{% for grp in grpmsg_list %}
<a href="{{ SITE_ROOT }}group/{{ grp.id }}/" class="no-bold">{{ grp.group_name }}</a>
<a href="{% url group_info grp.id %}" class="no-bold">{{ grp.group_name }}</a>
{% endfor %}
有新留言
</li>

View File

@ -5,7 +5,7 @@ from service import ccnet_rpc, monitor_rpc, seafserv_rpc, \
from service import send_command
from service import get_ccnetuser, get_emailusers
from service import get_org_groups, get_personal_groups, get_group_repoids, \
check_group_staff, remove_group_user
check_group_staff, remove_group_user, get_group
from service import get_repos, get_repo, get_commits, get_branches, \
get_org_repos, is_repo_owner, create_org_repo
from service import get_binding_peerids, is_valid_filename

View File

@ -106,14 +106,13 @@ def get_emailusers(start, limit):
# return groups
# def get_group(group_id):
# group = ccnet_threaded_rpc.get_group(group_id)
# if not group:
# return None
# group.members = group.props.members.split(" ")
# group.followers = group.props.followers.split(" ")
# group.maintainers = group.props.maintainers.split(" ")
# return group
def get_group(group_id):
group_id_int = int(group_id)
try:
group = ccnet_threaded_rpc.get_group(group_id_int)
except SearpcError:
group = None
return group
def check_group_staff(group_id_int, user_or_username):
"""Check where user is group staff"""

View File

@ -31,7 +31,8 @@ from share.models import FileShare
from seaserv import ccnet_rpc, ccnet_threaded_rpc, get_repos, get_emailusers, \
get_repo, get_commits, get_branches, is_valid_filename, remove_group_user,\
seafserv_threaded_rpc, seafserv_rpc, get_binding_peerids, get_ccnetuser, \
get_group_repoids, check_group_staff, get_personal_groups, is_repo_owner
get_group_repoids, check_group_staff, get_personal_groups, is_repo_owner, \
get_group
from pysearpc import SearpcError
from seahub.base.accounts import CcnetUser
@ -676,7 +677,7 @@ def myhome(request):
notes = UserNotification.objects.filter(to_user=request.user.username)
for n in notes:
if n.msg_type == 'group_msg':
grpmsg_list.append(ccnet_threaded_rpc.get_group(int(n.detail)))
grpmsg_list.append(get_group(n.detail))
elif n.msg_type == 'grpmsg_reply':
grpmsg_reply_list.append(n.detail)
elif n.msg_type == 'org_msg':