From 602dc7b46f838f682240779b8ecd4833da38f369 Mon Sep 17 00:00:00 2001 From: Mikko Nieminen Date: Wed, 23 Aug 2023 10:14:44 +0200 Subject: [PATCH] add sheet template boolean field support (wip) (#1757) --- config/settings/base.py | 1 + requirements/base.txt | 2 +- samplesheets/forms.py | 8 ++++---- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/config/settings/base.py b/config/settings/base.py index 8b6694e8..e333b503 100644 --- a/config/settings/base.py +++ b/config/settings/base.py @@ -786,6 +786,7 @@ def set_logging(level=None): # HACK: Supported cubi-tk templates, excluding ones which altamISA cannot parse SHEETS_ENABLED_TEMPLATES = [ 'bulk_rnaseq', + 'cancer', 'generic', 'germline', 'mass_cytometry', diff --git a/requirements/base.txt b/requirements/base.txt index dc7f5340..18c036b6 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -102,7 +102,7 @@ pronto==2.5.0 # For OWL conversion # CUBI ISA-Tab templates cookiecutter==2.2.3 --e git+https://github.com/bihealth/cubi-isa-templates.git@71fab2ba637f9b00920b6d69d328e5ab1d1ef1e4#egg=cubi-isa-templates +-e git+https://github.com/bihealth/cubi-isa-templates.git@c4139e147fd5db10bd6478460edbbce157abe425#egg=cubi-isa-templates # Taskflow requirements tooz==3.0.0 diff --git a/samplesheets/forms.py b/samplesheets/forms.py index db47f30d..35888e17 100644 --- a/samplesheets/forms.py +++ b/samplesheets/forms.py @@ -278,6 +278,10 @@ def __init__( if not all(v): # Allow empty value if in options field_kwargs['required'] = False self.fields[k] = forms.ChoiceField(**field_kwargs) + elif isinstance(v, bool): + field_kwargs['required'] = False + self.fields[k] = forms.BooleanField(**field_kwargs) + self.initial[k] = v elif isinstance(v, dict): field_kwargs['widget'] = forms.Textarea( {'class': 'sodar-json-input'} @@ -313,10 +317,6 @@ def save(self): for k in self.json_fields: if not isinstance(extra_context[k], dict): extra_context[k] = json.loads(extra_context[k]) - if 'is_triplet' in self.sheet_tpl.configuration: - extra_context['is_triplet'] = self.sheet_tpl.configuration[ - 'is_triplet' - ] with tempfile.TemporaryDirectory() as td: cookiecutter(