you need to keep running it when you're called from updateContactsInfo (called from the "oncontactchange" event)

The easiest way (IMO) is to create a new method `setContactIfNotSet` (or something similar) that you'll use in the right places.