This commit is contained in:
Ross
2022-05-21 22:09:37 +01:00
parent 851e681400
commit 781b6bc1fe
26 changed files with 311 additions and 70 deletions
+5 -27
View File
@@ -7,7 +7,7 @@ from django.forms import (
CharField,
)
from django.forms import inlineformset_factory
from generic.forms import ExamFormMixin
from generic.forms import ExamAuthorFormMixin, ExamFormMixin
from rapids.models import (
Abnormality,
@@ -230,31 +230,9 @@ AnswerUpdateFormSet = inlineformset_factory(
# This should be made generic?
class ExamForm(ExamFormMixin, ModelForm):
class Meta:
class Meta(ExamFormMixin.Meta):
model = Exam
fields = [
"name",
"time_limit",
"open_access",
"authors_only",
"exam_mode",
"include_history",
"active",
"publish_results",
"archive",
"cid_user_groups",
"user_user_groups",
#"author",
]
class ExamAuthorForm(ModelForm):
class Meta:
model = Exam
fields = ["author"]
def __init__(self, *args, **kwargs):
ModelForm.__init__(self, *args, **kwargs)
self.fields["author"] = ModelMultipleChoiceField(
queryset=User.objects.all(),
widget=FilteredSelectMultiple(verbose_name="Authors", is_stacked=False),
)
class ExamAuthorForm(ExamAuthorFormMixin):
class Meta(ExamAuthorFormMixin.Meta):
model = Exam
-1
View File
@@ -624,7 +624,6 @@ class Exam(ExamBase):
)
user_user_groups = models.ManyToManyField(
UserUserGroup,
blank=True,
+2 -3
View File
@@ -42,7 +42,7 @@ from .models import (
CidUserAnswer,
)
from generic.views import ExamCloneMixin, ExamViews, GenericViewBase
from generic.views import AuthorRequiredMixin, ExamCloneMixin, ExamViews, GenericViewBase
from reversion.views import RevisionMixin
@@ -793,8 +793,7 @@ class ExamUpdate(
return super().form_valid(form)
#TODO: AUTHOR REQURIED (NOT AUTHORORCHECKER)
class ExamAuthorUpdate(RevisionMixin, LoginRequiredMixin, AuthorOrCheckerRequiredMixin, UpdateView):
class ExamAuthorUpdate(RevisionMixin, LoginRequiredMixin, AuthorRequiredMixin, UpdateView):
model = Exam
form_class = ExamAuthorForm