From 9a2464db17c63d906695aeafc24701bfd67eb770 Mon Sep 17 00:00:00 2001 From: Mira Weller Date: Tue, 1 Jul 2025 13:43:42 +0200 Subject: [PATCH] Keep namedtuples for data_fields dict values --- src/pretix/base/datasync/datasync.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/pretix/base/datasync/datasync.py b/src/pretix/base/datasync/datasync.py index 7ef64e0558..0255b0f0c5 100644 --- a/src/pretix/base/datasync/datasync.py +++ b/src/pretix/base/datasync/datasync.py @@ -267,20 +267,20 @@ class OutboundSyncProvider: @cached_property def data_fields(self): return { - f.key: (f.required_input, f.label, f.type, f.enum_opts, f.getter) + f.key: f for f in get_data_fields(self.event) } def get_field_value(self, inputs, mapping_entry): key = mapping_entry["pretix_field"] try: - required_input, label, ptype, enum_opts, getter = self.data_fields[key] + field = self.data_fields[key] except KeyError: raise SyncConfigError(['Field "%s" is not valid for %s. Please check your %s settings.' % (key, "/".join(inputs.keys()), self.display_name)]) - input = inputs[required_input] - val = getter(input) + input = inputs[field.required_input] + val = field.getter(input) if isinstance(val, list): - if enum_opts and mapping_entry.get("value_map"): + if field.enum_opts and mapping_entry.get("value_map"): map = json.loads(mapping_entry["value_map"]) try: val = [map[el] for el in val]