From 46cb350a2e54a655c44350e726ca2ab20665288c Mon Sep 17 00:00:00 2001 From: Peter Rotich <peter@osticket.com> Date: Mon, 2 Jan 2017 18:12:36 +0000 Subject: [PATCH] Ticket Filter Data Custom Forms Include custom fields data associated with custom forms attached to user or organization to filter data. --- include/class.organization.php | 11 +++++++---- include/class.user.php | 7 +++++-- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/include/class.organization.php b/include/class.organization.php index f41e04225..46b1b1839 100644 --- a/include/class.organization.php +++ b/include/class.organization.php @@ -269,13 +269,16 @@ implements TemplateVariable { function getFilterData() { $vars = array(); foreach ($this->getDynamicData() as $entry) { + $vars += $entry->getFilterData(); + + // Add special `name` field in Org form if ($entry->getDynamicForm()->get('type') != 'O') continue; - $vars += $entry->getFilterData(); - // Add special `name` field - $f = $entry->getField('name'); - $vars['field.'.$f->get('id')] = $this->getName(); + + if ($f = $entry->getField('name')) + $vars['field.'.$f->get('id')] = $this->getName(); } + return $vars; } diff --git a/include/class.user.php b/include/class.user.php index 24cae58b9..a4e955c18 100644 --- a/include/class.user.php +++ b/include/class.user.php @@ -383,16 +383,19 @@ implements TemplateVariable { function getFilterData() { $vars = array(); foreach ($this->getDynamicData() as $entry) { - if ($entry->getDynamicForm()->get('type') != 'U') - continue; $vars += $entry->getFilterData(); + // Add in special `name` and `email` fields + if ($entry->getDynamicForm()->get('type') != 'U') + continue; + foreach (array('name', 'email') as $name) { if ($f = $entry->getField($name)) $vars['field.'.$f->get('id')] = $name == 'name' ? $this->getName() : $this->getEmail(); } } + return $vars; } -- GitLab