/** * @param Turba_Object $contact * @param array $vars */ public function __construct($vars, Turba_Object $contact) { global $injector; parent::__construct($vars, '', 'Turba_View_EditContact'); $this->_contact = $contact; $this->setButtons(_("Save")); $this->addHidden('', 'url', 'text', false); $this->addHidden('', 'source', 'text', true); $this->addHidden('', 'key', 'text', false); parent::_addFields($this->_contact); if (!$contact->vfsInit() instanceof Horde_Vfs_Null) { $this->addVariable(_("Add file"), 'vfs', 'file', false); } $object_values = $vars->get('object'); $object_keys = array_keys($contact->attributes); $object_keys[] = '__tags'; foreach ($object_keys as $info_key) { if (!isset($object_values[$info_key])) { $object_values[$info_key] = $contact->getValue($info_key); } } $vars->set('object', $object_values); $vars->set('source', $contact->getSource()); }