+ // Emails
+ if (!is_null($user)) {
+ $entry->addMail(null, $user->bestalias, true);
+ if ($user->forlife != $user->bestalias) {
+ $entry->addMail(null, $user->forlife);
+ }
+ if ($user->forlife_alternate != $user->bestalias) {
+ $entry->addMail(null, $user->forlife_alternate);
+ }
+ }
+
+ // Homes
+ $adrs = $pf->iterAddresses(Profile::ADDRESS_PERSO);
+ while ($adr = $adrs->next()) {
+ if (!$adr->postalCode || !$adr->locality || !$adr->country) {
+ $group = $entry->addHome($adr->text, null, null, null,
+ null, $adr->administrativeArea, null,
+ $adr->hasFlag('current'), $adr->hasFlag('mail'), $adr->hasFlag('mail'));
+ } else {
+ $group = $entry->addHome(trim(Geocoder::getFirstLines($adr->text, $adr->postalCode, 4)), null, null, $adr->postalCode,
+ $adr->locality, $adr->administrativeArea, $adr->country,
+ $adr->hasFlag('current'), $adr->hasFlag('mail'), $adr->hasFlag('mail'));
+ }
+ foreach ($adr->phones() as $phone) {
+ if ($phone->link_type == Phone::TYPE_FIXED) {
+ $entry->addTel($group, $phone->display, false, true, true, false, false,
+ $adr->hasFlag('current') && empty($pf->mobile));
+ } else if ($phone->link_type == Phone::TYPE_FAX) {
+ $entry->addTel($group, $phone->display, true, false, false, false, false, false);
+ }
+ }