diff --git a/include/class.organization.php b/include/class.organization.php index f41e04225c5ce1bf017b647644c7e73d99f3a968..46b1b1839a747179dde94fbf7441774a66d74a80 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 24cae58b9122dc8a5ee3af8ceb9183720e7524d6..a4e955c1875da3bf812cbb922be2166aecc0af1c 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; }