Skip to content
Snippets Groups Projects

Virus visit column changes

Merged Carlos Vega requested to merge virus_visit_column_changes into master
@@ -36,6 +36,21 @@ class StudySubjectForm(ModelForm):
self.fields[field].label = 'Visit {} RT-PCR'.format(virus_visit_number)
date_field = 'virus_test_{}_updated'.format(one_based_idx)
self.fields[date_field].label = 'Visit {} RT-PCR date'.format(virus_visit_number)
for visit_number in range(1, 6):
disable_virus_test_field(self, visit_number)
self.update_virus_inconclusive_data(visit_number)
def update_virus_inconclusive_data(self, visit_number):
test_result_column_name = 'virus_test_{}'.format(visit_number)
test_date_column_name = 'virus_test_{}_updated'.format(visit_number)
self.fields[test_result_column_name].widget.choices.append(("Inc", 'Inconclusive'))
instance = getattr(self, 'instance', None)
if instance and instance.id:
test_result = getattr(instance, test_result_column_name)
test_date = getattr(instance, test_date_column_name)
if test_result is None and test_date is not None:
self.initial[test_result_column_name] = "Inc"
class StudySubjectAddForm(StudySubjectForm):
@@ -143,10 +158,6 @@ class StudySubjectEditForm(StudySubjectForm):
self.fields['resigned'].disabled = was_resigned
self.fields['endpoint_reached'].disabled = endpoint_was_reached
for visit_number in range(1, 6):
disable_virus_test_field(self, visit_number)
self.update_virus_inconclusive_data(visit_number)
prepare_study_subject_fields(fields=self.fields, study=self.study)
def clean(self):
@@ -154,18 +165,6 @@ class StudySubjectEditForm(StudySubjectForm):
validate_subject_mpower_number(self, self.cleaned_data)
validate_subject_resign_reason(self, self.cleaned_data)
def update_virus_inconclusive_data(self, visit_number):
test_result_column_name = 'virus_test_{}'.format(visit_number)
test_date_column_name = 'virus_test_{}_updated'.format(visit_number)
self.fields[test_result_column_name].widget.choices.append(("Inc", 'Inconclusive'))
instance = getattr(self, 'instance', None)
if instance and instance.id:
test_result = getattr(instance, test_result_column_name)
test_date = getattr(instance, test_date_column_name)
if test_result is None and test_date is not None:
self.initial[test_result_column_name] = "Inc"
class Meta:
model = StudySubject
fields = '__all__'
Loading