misc: fix submitter email lookup in case of unfilled block data (#53254)
This commit is contained in:
parent
d1bd081f58
commit
5b45fe4681
|
@ -228,6 +228,7 @@ def test_get_submitter(pub, formdef):
|
|||
formdef.fields = [
|
||||
fields.StringField(id='0', label='email', varname='foo', prefill={'type': 'user', 'value': 'email'}),
|
||||
fields.BlockField(id='1', label='test', type='block:foobar', max_items=3, varname='block'),
|
||||
fields.StringField(id='2', label='other'),
|
||||
]
|
||||
formdef.store()
|
||||
|
||||
|
@ -263,6 +264,9 @@ def test_get_submitter(pub, formdef):
|
|||
formdata.data = {'1': {}}
|
||||
assert formdef.get_submitter_email(formdata) is None
|
||||
|
||||
formdata.data = {'2': 'other'}
|
||||
assert formdef.get_submitter_email(formdata) is None
|
||||
|
||||
formdata.data = {
|
||||
'0': 'foo@localhost',
|
||||
'1': {
|
||||
|
|
|
@ -1352,7 +1352,7 @@ class FormDef(StorableObject):
|
|||
if not is_user_field(subfield):
|
||||
continue
|
||||
v = formdata.data.get(field.id)
|
||||
if not v.get('data'):
|
||||
if not (v and v.get('data')):
|
||||
continue
|
||||
for data in v.get('data'):
|
||||
w = data.get(subfield.id)
|
||||
|
|
Loading…
Reference in New Issue