} } /* Check if a form is being edited. */ if (!isset($vars->mode) || $vars->retry) { if (isset($vars->alias)) { $alias = $vars->alias; try { $addrInfo = $vilma->driver->getAddressInfo($alias, 'alias'); $address = $vilma->driver->getAddressInfo($addrInfo['destination']); } catch (Exception $e) { $notification->push(sprintf(_("Error reading address information from backend: %s"), $e->getMessage()), 'horde.error'); Horde::url('users/index.php', true)->redirect(); } $vars = new Variables($address); $vars->mode = 'edit'; $vars->add('alias_address', $alias); $vars->add('alias', $alias); $vars->add('address', $address['address']); } elseif (isset($vars->address)) { try { $address = $vilma->driver->getAddressInfo($vars->address, 'all'); } catch (Exception $e) { $notification->push(sprintf(_("Error reading address information from backend: %s"), $e->getMessage()), 'horde.error'); Horde::url('users/index.php', true)->redirect(); } $vars = new Variables($address); $vars->mode = 'new'; } $form = new Vilma_Form_EditAlias($vars); /* if ($form->validate($vars)) {
} } /* Check if a form is being edited. */ if (!isset($vars->mode) || $vars->retry) { if (isset($vars->forward)) { try { $addrInfo = $vilma->driver->getAddressInfo($vars->forward, 'forward'); $address = $vilma->driver->getAddressInfo($addrInfo['destination']); } catch (Exception $e) { Horde::log($e); $notification->push(sprintf(_("Error reading address information from backend: %s"), $e->getMessage()), 'horde.error'); Horde::url('users/index.php', true)->redirect(); } $vars = new Variables($address); $vars->mode = 'edit'; $vars->add('forward_address', $forward); $vars->add('forward', $forward); $vars->add('address', $address['address']); } elseif (isset($vars->address)) { $address = $vilma->driver->getAddressInfo($vars->address, 'all'); $vars = new Variables($address); $vars->mode = 'new'; } $form = new EditforwardForm($vars); /* if ($form->validate($vars)) { $form->getInfo($vars, $info); $forward_id = $vilma->driver->saveforward($info); if (is_a($forward_id, 'PEAR_Error')) { Horde::log($user_id, 'ERR'); $notification->push(sprintf(_("Error saving forward. %s"), $forward_id->getMessage()), 'horde.error');