From 9ac062fdbd5cd80d77db40402c97297cdcf91950 Mon Sep 17 00:00:00 2001 From: Carlos Vega <carlos.vega@uni.lu> Date: Fri, 24 Apr 2020 11:30:42 +0200 Subject: [PATCH] change column labels in the export checkboxes --- smash/web/views/export.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/smash/web/views/export.py b/smash/web/views/export.py index 1cb62712..9130b0fa 100644 --- a/smash/web/views/export.py +++ b/smash/web/views/export.py @@ -7,7 +7,11 @@ from django.http import HttpResponse from notifications import get_today_midnight_date from web.decorators import PermissionDecorator from . import e500_error, wrap_response -from ..models import Subject, StudySubject, Appointment +from ..models import Subject, StudySubject, Appointment, ConfigurationItem +from web.models.constants import VISIT_SHOW_VISIT_NUMBER_FROM_ZERO +from distutils.util import strtobool +from web.templatetags.filters import display_visit_number +import re @PermissionDecorator('export_subjects', 'subject') @@ -86,12 +90,23 @@ def filter_fields_from_selected_fields(fields, selected_fields): def get_default_subject_fields(): + visit_from_zero = ConfigurationItem.objects.get(type=VISIT_SHOW_VISIT_NUMBER_FROM_ZERO).value + visit_from_zero = strtobool(visit_from_zero) subject_fields = [] for field in Subject._meta.fields: if field.name.upper() != "ID": subject_fields.append(field) for field in StudySubject._meta.fields: if field.name.upper() != "ID" and field.name.upper() != "SUBJECT": + if visit_from_zero: + match = re.match(r'^virus_test_(\d*)$', field.name) + if match: + number = int(match.groups()[0]) + field.verbose_name = 'Virus {} RT-PCR'.format(display_visit_number(number)) + match = re.match(r'^virus_test_(\d*)_updated$', field.name) + if match: + number = int(match.groups()[0]) + field.verbose_name = 'Virus {} RT-PCR date'.format(display_visit_number(number)) subject_fields.append(field) subject_fields.append(DROP_OUT_FIELD) return subject_fields -- GitLab