pid()), array(Address::LINK_PROFILE), array(0), Visibility::get(Visibility::VIEW_ADMIN)); while ($address = $it->next()) { $addresses[] = $address->toFormArray(); } if (count($addresses) == 0) { $address = new Address(array('mail' => 1)); $addresses[] = $address->toFormArray(); } return $addresses; } return Address::formatFormArray($value, $success); } public function save(ProfilePage $page, $field, $value) { $deletePrivate = S::user()->isMe($page->owner) || S::admin(); Phone::deletePhones($page->pid(), Phone::LINK_ADDRESS, null, $deletePrivate); Address::deleteAddresses($page->pid(), Address::LINK_PROFILE, null, null, $deletePrivate); AddressReq::purge_requests($page->pid(), 0, 0, Address::LINK_PROFILE); Address::saveFromArray($value, $page->pid(), Address::LINK_PROFILE, null, $deletePrivate); if (S::user()->isMe($page->owner) && count($value) > 1) { Platal::page()->trigWarning('Attention, tu as plusieurs adresses sur ton profil. Pense à supprimer celles qui sont obsolètes.'); } } public function getText($value) { return Address::formArrayToString($value); } } class ProfilePageAddresses extends ProfilePage { protected $pg_template = 'profile/adresses.tpl'; public function __construct(PlWizard $wiz) { parent::__construct($wiz); $this->settings['addresses'] = new ProfileSettingAddresses(); $this->watched['addresses'] = true; Platal::page()->assign('geocoding_removal', true); } } // vim:set et sw=4 sts=4 sws=4 foldmethod=marker fenc=utf-8: ?>