修改较多,涉及到小组管理员对比赛的管理,小组管理员可以看到他管理的小组的其他管理员创建的比赛,但看不到别人的题目,但是可以从前台看到比赛的题目,可以在比赛开始前测试题目

This commit is contained in:
sxw
2015-12-09 20:02:47 +08:00
parent 1dcfe0bc10
commit 96b409d1f0
2 changed files with 24 additions and 12 deletions

View File

@@ -8,7 +8,7 @@ from django.core.urlresolvers import reverse
from utils.shortcuts import error_response, error_page
from account.models import SUPER_ADMIN
from account.models import SUPER_ADMIN, ADMIN
from .models import (Contest, PASSWORD_PROTECTED_CONTEST, PASSWORD_PROTECTED_GROUP_CONTEST, PUBLIC_CONTEST, GROUP_CONTEST,
CONTEST_ENDED, CONTEST_NOT_START, CONTEST_UNDERWAY)
@@ -57,7 +57,10 @@ def check_user_contest_permission(func):
if request.user.admin_type == SUPER_ADMIN or request.user == contest.created_by:
return func(*args, **kwargs)
if request.user.admin_type == ADMIN:
contest_set = Contest.objects.filter(groups__in=request.user.managed_groups.all())
if contest in contest_set:
return func(*args, **kwargs)
# 管理员可见隐藏的比赛,已经先判断了身份
if not contest.visible:
if request.is_ajax():