forked from CGM_Public/pretix_original
Raise SyncConfigError instead of KeyError on misconfigured datasync property mappings (#5429)
This commit is contained in:
@@ -252,9 +252,15 @@ class OutboundSyncProvider:
|
|||||||
except KeyError:
|
except KeyError:
|
||||||
with language(self.event.settings.locale):
|
with language(self.event.settings.locale):
|
||||||
raise SyncConfigError([_(
|
raise SyncConfigError([_(
|
||||||
'Field "{field_name}" is not valid for {available_inputs}. Please check your {provider_name} settings.'
|
'Field "{field_name}" does not exist. Please check your {provider_name} settings.'
|
||||||
).format(key=key, available_inputs="/".join(inputs.keys()), provider_name=self.display_name)])
|
).format(field_name=key, provider_name=self.display_name)])
|
||||||
input = inputs[field.required_input]
|
try:
|
||||||
|
input = inputs[field.required_input]
|
||||||
|
except KeyError:
|
||||||
|
with language(self.event.settings.locale):
|
||||||
|
raise SyncConfigError([_(
|
||||||
|
'Field "{field_name}" requires {required_input}, but only got {available_inputs}. Please check your {provider_name} settings.'
|
||||||
|
).format(field_name=key, required_input=field.required_input, available_inputs=", ".join(inputs.keys()), provider_name=self.display_name)])
|
||||||
val = field.getter(input)
|
val = field.getter(input)
|
||||||
if isinstance(val, list):
|
if isinstance(val, list):
|
||||||
if field.enum_opts and mapping_entry.get("value_map"):
|
if field.enum_opts and mapping_entry.get("value_map"):
|
||||||
|
|||||||
Reference in New Issue
Block a user