From 1e86d9a638d52380f4b1d448569377146d77532c Mon Sep 17 00:00:00 2001 From: Mike Metcalfe Date: Wed, 11 Sep 2024 16:32:39 +0200 Subject: [PATCH] Fixed bug in TimeSeriesColumns validation --- src/bika/lims/validators.py | 9 +++++++-- .../core/browser/form/adapters/analysisservice.py | 3 +++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/bika/lims/validators.py b/src/bika/lims/validators.py index 016f03abfc..23d1a51f41 100644 --- a/src/bika/lims/validators.py +++ b/src/bika/lims/validators.py @@ -1466,9 +1466,14 @@ class TimeSeriesColumnValidator(object): def __call__(self, value, *args, **kwargs): # Get all records instance = kwargs['instance'] - field_name = kwargs['field'].getName() request = instance.REQUEST - records = request.form.get(field_name) + fieldname = kwargs['field'].getName() + form_value = request.form.get(fieldname, False) + if form_value is False: + # not required and/or not visible + return True + + records = request.form.get(fieldname) # Result values must be unique valid_records = filter(lambda rec: len(rec.get('ColumnTitle', '')) > 0, records) diff --git a/src/senaite/core/browser/form/adapters/analysisservice.py b/src/senaite/core/browser/form/adapters/analysisservice.py index 519ff5d4fd..68ae24d4d8 100644 --- a/src/senaite/core/browser/form/adapters/analysisservice.py +++ b/src/senaite/core/browser/form/adapters/analysisservice.py @@ -205,15 +205,18 @@ def toggle_result_type(self, result_type): self.add_hide_field("GraphTitle") self.add_hide_field("GraphXAxisTitle") self.add_hide_field("GraphYAxisTitle") + self.add_hide_field("TimeSeriesColumns") elif result_type == "timeseries": self.add_hide_field("ResultOptions") self.add_hide_field("ResultOptionsSorting") self.add_show_field("GraphTitle") self.add_show_field("GraphXAxisTitle") self.add_show_field("GraphYAxisTitle") + self.add_show_field("TimeSeriesColumns") else: self.add_show_field("ResultOptions") self.add_show_field("ResultOptionsSorting") self.add_hide_field("GraphTitle") self.add_hide_field("GraphXAxisTitle") self.add_hide_field("GraphYAxisTitle") + self.add_hide_field("TimeSeriesColumns")