fields: fix prefill options for map widgets (#22817)

This commit is contained in:
Frédéric Péters 2018-03-27 11:52:19 +02:00
parent 3c30efe14a
commit e432c776ff
2 changed files with 11 additions and 3 deletions

View File

@ -1309,6 +1309,14 @@ def test_form_edit_map_field(pub):
resp = resp.form.submit('submit')
assert 'widget-with-error' in resp.body
# prefill fields
resp = app.get('/backoffice/forms/1/fields/1/')
resp.form['prefill$type'].value = 'Geolocation'
resp.form['prefill$value_geolocation'].value = 'Position'
resp = resp.form.submit('submit')
assert FormDef.get(formdef.id).fields[0].prefill == {
'type': 'geolocation', 'value': 'position'}
def test_form_edit_field_warnings(pub):
create_superuser(pub)
create_role()

View File

@ -79,11 +79,11 @@ class PrefillSelectionWidget(CompositeWidget):
users_cfg = get_cfg('users', {})
if formdef:
user_fields = []
for field in formdef.fields:
if field.label in [x[1] for x in user_fields]:
for user_field in formdef.fields:
if user_field.label in [x[1] for x in user_fields]:
# do not allow duplicated field names
continue
user_fields.append((field.id, field.label))
user_fields.append((user_field.id, user_field.label))
if not users_cfg.get('field_email'):
user_fields.append(('email', _('Email (builtin)')))
else: