This commit is contained in:
cuom1999 2023-07-06 22:39:16 +07:00
parent 1595063463
commit 1ca0d51f67
7 changed files with 41 additions and 41 deletions

View file

@ -128,19 +128,19 @@ def get_comments(request, limit=10):
offset = 0
if "offset" in request.GET:
offset = int(request.GET["offset"])
target_comment = -1
if "target_comment" in request.GET:
target_comment = int(request.GET["target_comment"])
comment_root_id = 0
if comment_id:
comment_obj = Comment.objects.get(pk=comment_id)
comment_root_id = comment_obj.id
else:
comment_obj = None
queryset = comment_obj.linked_object.comments
if parent_none:
queryset = queryset.filter(parent=None, hidden=False)
@ -152,35 +152,33 @@ def get_comments(request, limit=10):
queryset.select_related("author__user")
.defer("author__about")
.annotate(
count_replies=Count("replies", distinct=True),
count_replies=Count("replies", distinct=True),
revisions=Count("versions", distinct=True),
)[offset:offset+limit]
)[offset : offset + limit]
)
if request.user.is_authenticated:
profile = request.profile
queryset = queryset.annotate(
my_vote=FilteredRelation(
"votes", condition=Q(votes__voter_id=profile.id)
),
my_vote=FilteredRelation("votes", condition=Q(votes__voter_id=profile.id)),
).annotate(vote_score=Coalesce(F("my_vote__score"), Value(0)))
new_offset = offset + min(len(queryset), limit)
comment_html = loader.render_to_string(
"comments/content-list.html",
"comments/content-list.html",
{
"request": request,
"comment_root_id": comment_root_id,
"comment_list": queryset,
"vote_hide_threshold" : settings.DMOJ_COMMENT_VOTE_HIDE_THRESHOLD,
"comment_root_id": comment_root_id,
"comment_list": queryset,
"vote_hide_threshold": settings.DMOJ_COMMENT_VOTE_HIDE_THRESHOLD,
"perms": PermWrapper(request.user),
"offset": new_offset,
"offset": new_offset,
"limit": limit,
"comment_count": comment_count,
"comment_parent_none": parent_none,
"target_comment": target_comment,
"comment_more": comment_count - new_offset
}
"comment_more": comment_count - new_offset,
},
)
return HttpResponse(comment_html)

View file

@ -10,22 +10,25 @@ __all__ = [
"CourseStudentResults",
"CourseEdit",
"CourseResourceDetailEdit",
"CourseResourceEdit",
"CourseResourceEdit",
]
course_directory_file = ""
class CourseListMixin(object):
def get_queryset(self):
return Course.objects.filter(is_open = "true").values()
return Course.objects.filter(is_open="true").values()
class CourseList(ListView):
model = Course
template_name = "course/list.html"
queryset = Course.objects.filter(is_public=True).filter(is_open=True)
def get_context_data(self, **kwargs):
context = super(CourseList,self).get_context_data(**kwargs)
available , enrolling = [] , []
context = super(CourseList, self).get_context_data(**kwargs)
available, enrolling = [], []
for course in Course.objects.filter(is_public=True).filter(is_open=True):
if Course.is_accessible_by(course, self.request.profile):
enrolling.append(course)
@ -34,4 +37,3 @@ class CourseList(ListView):
context["available"] = available
context["enrolling"] = enrolling
return context

View file

@ -441,7 +441,7 @@ class OrganizationSubmissions(
LoginRequiredMixin, MemberOrganizationMixin, SubmissionsListBase
):
template_name = "organization/submissions.html"
@cached_property
def in_contest(self):
return False

View file

@ -351,7 +351,9 @@ class SubmissionsListBase(DiggPaginatorMixin, TitleMixin, ListView):
def _get_entire_queryset(self):
organization = self.organization or self.request.organization
if organization:
queryset = Submission.objects.filter(contest_object__organizations=organization)
queryset = Submission.objects.filter(
contest_object__organizations=organization
)
else:
queryset = Submission.objects.all()
use_straight_join(queryset)