Skip to content

Commit 392a246

Browse files
authored
Merge pull request #2158 from codalab/improve-server-status
Server status available for competition organizers and queue collaborators
2 parents b2ebcde + ff38209 commit 392a246

1 file changed

Lines changed: 15 additions & 16 deletions

File tree

src/apps/pages/views.py

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -46,25 +46,24 @@ def get_context_data(self, *args, **kwargs):
4646
# Start with an empty queryset
4747
qs = Submission.objects.none()
4848

49+
user = self.request.user
4950
# Only if user is authenticated
50-
if self.request.user.is_authenticated:
51-
# If user is not super user then:
52-
# filter this user's own submissions
53-
# and
54-
# submissions running on queue which belongs to this user
51+
if user.is_authenticated:
52+
# If user is not super user then filter:
53+
# - this user's own submissions
54+
# - submissions running on competitions where the user is owner or collaborator
55+
# - submissions running on queue where the user is owner or organizer
5556
# NOTE: exclude all soft-deleted submissions
56-
if not self.request.user.is_superuser:
57-
qs = Submission.objects.filter(
58-
Q(is_soft_deleted=False) &
59-
(
60-
Q(owner=self.request.user) |
61-
Q(phase__competition__queue__isnull=False, phase__competition__queue__owner=self.request.user)
62-
)
63-
)
57+
if not user.is_superuser:
58+
qs = Submission.objects.filter(is_soft_deleted=False).filter(
59+
Q(owner=user) |
60+
Q(phase__competition__created_by=user) |
61+
Q(phase__competition__collaborators=user) |
62+
Q(queue__owner=user, queue__isnull=False) |
63+
Q(queue__organizers=user, queue__isnull=False)
64+
).distinct()
6465
else:
65-
qs = Submission.objects.filter(
66-
Q(is_soft_deleted=False)
67-
)
66+
qs = Submission.objects.filter(is_soft_deleted=False)
6867

6968
# Filter out child submissions i.e. submission has no parent
7069
if not show_child_submissions:

0 commit comments

Comments
 (0)