Add Shorts exam models and integrate into UserGroupExamForm and ExamViews
This commit is contained in:
@@ -54,6 +54,10 @@ from rapids.models import Exam as RapidsExam
|
||||
from rapids.models import Rapid
|
||||
from rapids.models import Answer as RapidAnswer
|
||||
|
||||
from shorts.models import UserAnswer as ShortsUserAnswer
|
||||
from shorts.models import Exam as ShortsExam
|
||||
from shorts.models import Question as ShortsQuestion
|
||||
|
||||
from longs.models import UserAnswer as LongsUserAnswer
|
||||
from longs.models import Exam as LongsExam
|
||||
from longs.models import Long
|
||||
@@ -497,6 +501,7 @@ class UserGroupExamForm(ModelForm):
|
||||
GROUP_TYPES = [
|
||||
"anatomy_user_user_groups",
|
||||
"rapid_user_user_groups",
|
||||
"shorts_user_user_groups",
|
||||
"longs_user_user_groups",
|
||||
"physics_user_user_groups",
|
||||
"sba_user_user_groups",
|
||||
@@ -537,6 +542,11 @@ class UserGroupExamForm(ModelForm):
|
||||
queryset=RapidsExam.objects.filter(archive=False),
|
||||
widget=FilteredSelectMultiple(verbose_name="Rapid Exams", is_stacked=False),
|
||||
)
|
||||
self.fields["shorts_user_user_groups"] = ModelMultipleChoiceField(
|
||||
required=False,
|
||||
queryset=ShortsExam.objects.filter(archive=False),
|
||||
widget=FilteredSelectMultiple(verbose_name="Shorts Exams", is_stacked=False),
|
||||
)
|
||||
self.fields["longs_user_user_groups"] = ModelMultipleChoiceField(
|
||||
required=False,
|
||||
queryset=LongsExam.objects.filter(archive=False),
|
||||
|
||||
@@ -848,6 +848,7 @@ class ExamViews(View, LoginRequiredMixin):
|
||||
author__id=request.user.id, exam_mode=True
|
||||
).order_by("name")
|
||||
|
||||
|
||||
exam_list = exam_list | self.Exam.objects.filter(
|
||||
markers__id=request.user.id, exam_mode=True
|
||||
).order_by("name")
|
||||
@@ -1448,6 +1449,7 @@ class ExamViews(View, LoginRequiredMixin):
|
||||
|
||||
app_exam_map = {}
|
||||
app_exam_map["rapids"] = user_user.user_rapid_exams
|
||||
app_exam_map["shorts"] = user_user.user_shorts_exams
|
||||
app_exam_map["anatomy"] = user_user.user_anatomy_exams
|
||||
app_exam_map["longs"] = user_user.user_longs_exams
|
||||
app_exam_map["physics"] = user_user.user_physics_exams
|
||||
@@ -1660,7 +1662,9 @@ class ExamViews(View, LoginRequiredMixin):
|
||||
):
|
||||
exams = self.Exam.objects.all()
|
||||
filter = self.ExtraExamFilter(request.GET, queryset=exams)
|
||||
print("1")
|
||||
else:
|
||||
print("2")
|
||||
exams = self.Exam.objects.filter(
|
||||
author__id=request.user.id
|
||||
) | self.Exam.objects.filter(open_access=True)
|
||||
|
||||
Reference in New Issue
Block a user