Add basic support for editing address for a "contact" record

This commit is contained in:
Lance Edgar 2019-02-19 18:11:15 -06:00
parent b0b551af82
commit e916d4f71f
2 changed files with 45 additions and 1 deletions

View file

@ -2731,6 +2731,30 @@ class MasterView(View):
elif number:
contact.add_phone_number(number)
address_fields = ('address_street',
'address_street2',
'address_city',
'address_state',
'address_zipcode')
addr = dict([(field, data[field])
for field in address_fields
if field in data])
if any(addr.values()):
# we strip 'address_' prefix from fields
addr = dict([(field[8:], value)
for field, value in addr.items()])
if contact.addresses:
address = contact.addresses[0]
for field, value in addr.items():
setattr(address, field, value)
else:
contact.add_mailing_address(**addr)
elif contact.addresses:
contact.addresses.pop()
return contact
def save_form(self, form):