diff --git a/include/class.ticket.php b/include/class.ticket.php index da868d7526e601a5d41004065248e9c7498f12b4..7b2f92784e64bba0889a8023ad164e790ffa1f28 100644 --- a/include/class.ticket.php +++ b/include/class.ticket.php @@ -1970,11 +1970,17 @@ class Ticket { $vars['field.'.$f->get('id')] = $f->toString($f->getClean()); // Unpack the basic user information - $interesting = array('name', 'email'); - $user_form = UserForm::getUserForm()->getForm($vars); - foreach ($user_form->getFields() as $f) - if (in_array($f->get('name'), $interesting)) - $vars[$f->get('name')] = $f->toString($f->getClean()); + if ($vars['uid'] && ($user = User::lookup($vars['uid']))) { + $vars['email'] = $user->getEmail(); + $vars['name'] = $user->getName(); + } + else { + $interesting = array('name', 'email'); + $user_form = UserForm::getUserForm()->getForm($vars); + foreach ($user_form->getFields() as $f) + if (in_array($f->get('name'), $interesting)) + $vars[$f->get('name')] = $f->toString($f->getClean()); + } //Init ticket filters... $ticket_filter = new TicketFilter($origin, $vars); @@ -2027,11 +2033,6 @@ class Ticket { if (!$errors) { - if ($vars['uid'] && ($user = User::lookup($vars['uid']))) { - $vars['email'] = $user->getEmail(); - $vars['name'] = $user->getName(); - } - # Perform ticket filter actions on the new ticket arguments if ($ticket_filter) $ticket_filter->apply($vars);