Skip to content
Snippets Groups Projects
Commit a3267d12 authored by Shrikrishna Singh's avatar Shrikrishna Singh Committed by Fredrik Jonsson
Browse files

Check if all submissions has same type while creating batch determinations

parent 4be2250e
No related branches found
No related tags found
No related merge requests found
...@@ -142,7 +142,9 @@ class Determination(DeterminationFormFieldsMixin, AccessFormData, models.Model): ...@@ -142,7 +142,9 @@ class Determination(DeterminationFormFieldsMixin, AccessFormData, models.Model):
group = 0 group = 0
data.setdefault(group, {'title': None, 'questions': list()}) data.setdefault(group, {'title': None, 'questions': list()})
for field in self.form_fields: for field in self.form_fields:
if issubclass(field.block.__class__, DeterminationMustIncludeFieldBlock): if issubclass(
field.block.__class__, DeterminationMustIncludeFieldBlock
) or isinstance(field.block, SendNoticeBlock):
continue continue
try: try:
value = self.form_data[field.id] value = self.form_data[field.id]
......
...@@ -140,8 +140,21 @@ class BatchDeterminationCreateView(BaseStreamForm, CreateView): ...@@ -140,8 +140,21 @@ class BatchDeterminationCreateView(BaseStreamForm, CreateView):
kwargs.pop('instance') kwargs.pop('instance')
return kwargs return kwargs
def check_all_submissions_are_of_same_type(self, submissions):
return len(set(
[
submission.is_determination_form_attached
for submission in submissions
]
)) == 1
def get_form_class(self): def get_form_class(self):
submissions = self.get_submissions() submissions = self.get_submissions()
if not self.check_all_submissions_are_of_same_type(submissions):
raise ValueError(
"All selected submissions excpects determination forms attached"
" - please contact admin"
)
if not submissions[0].is_determination_form_attached: if not submissions[0].is_determination_form_attached:
return get_form_for_stages(submissions) return get_form_for_stages(submissions)
form_fields = self.get_form_fields() form_fields = self.get_form_fields()
......
...@@ -42,6 +42,7 @@ class ReviewModelForm(StreamBaseForm, forms.ModelForm, metaclass=MixedMetaClass) ...@@ -42,6 +42,7 @@ class ReviewModelForm(StreamBaseForm, forms.ModelForm, metaclass=MixedMetaClass)
initial[key] = value initial[key] = value
super().__init__(*args, initial=initial, instance=instance, **kwargs) super().__init__(*args, initial=initial, instance=instance, **kwargs)
for field in self._meta.widgets: for field in self._meta.widgets:
self.fields[field].disabled = True self.fields[field].disabled = True
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment