Add set scoreboard view
This commit is contained in:
parent
8e1e3b246a
commit
b3d80b5100
6 changed files with 34 additions and 1 deletions
|
@ -80,6 +80,7 @@ class PostList(ListView):
|
|||
if self.request.user.is_authenticated:
|
||||
q |= Q(is_organization_private=True, organizations__in=user.organizations.all())
|
||||
q |= Q(is_private=True, private_contestants=user)
|
||||
q |= Q(view_contest_scoreboard=user)
|
||||
visible_contests = visible_contests.filter(q)
|
||||
context['current_contests'] = visible_contests.filter(start_time__lte=now, end_time__gt=now).distinct()
|
||||
context['future_contests'] = visible_contests.filter(start_time__gt=now).distinct()
|
||||
|
|
|
@ -70,6 +70,7 @@ class ContestListMixin(object):
|
|||
if self.request.user.is_authenticated:
|
||||
q |= Q(is_organization_private=True, organizations__in=self.request.profile.organizations.all())
|
||||
q |= Q(is_private=True, private_contestants=self.request.profile)
|
||||
q |= Q(view_contest_scoreboard=self.request.profile)
|
||||
queryset = queryset.filter(q)
|
||||
return queryset.distinct()
|
||||
|
||||
|
@ -254,6 +255,7 @@ class ContestClone(ContestMixin, PermissionRequiredMixin, TitleMixin, SingleObje
|
|||
tags = contest.tags.all()
|
||||
organizations = contest.organizations.all()
|
||||
private_contestants = contest.private_contestants.all()
|
||||
view_contest_scoreboard = contest.view_contest_scoreboard.all()
|
||||
contest_problems = contest.contest_problems.all()
|
||||
|
||||
contest.pk = None
|
||||
|
@ -265,6 +267,7 @@ class ContestClone(ContestMixin, PermissionRequiredMixin, TitleMixin, SingleObje
|
|||
contest.tags.set(tags)
|
||||
contest.organizations.set(organizations)
|
||||
contest.private_contestants.set(private_contestants)
|
||||
contest.view_contest_scoreboard.set(view_contest_scoreboard)
|
||||
contest.organizers.add(self.request.profile)
|
||||
|
||||
for problem in contest_problems:
|
||||
|
|
|
@ -74,6 +74,7 @@ class ContestSelect2View(Select2View):
|
|||
q |= Q(is_organization_private=True,
|
||||
organizations__in=self.request.profile.organizations.all())
|
||||
q |= Q(is_private=True, private_contestants=self.request.profile)
|
||||
q |= Q(view_contest_scoreboard=self.request.profile)
|
||||
queryset = queryset.filter(q)
|
||||
return queryset
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue