diff --git a/include/class.organization.php b/include/class.organization.php index ce57602ddb9aa852e3b14f9d3a101b6d5534c3b8..6d9fc030cce92468c63cbe9be2032a95aabef744 100644 --- a/include/class.organization.php +++ b/include/class.organization.php @@ -277,13 +277,16 @@ implements TemplateVariable, Searchable { 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 4edb3d7a29a0986fa9e66fe782b0f3d6cce21081..dcd04b9c5d59f2bc6c02f4e54c8e928a26c647d5 100644 --- a/include/class.user.php +++ b/include/class.user.php @@ -426,16 +426,19 @@ implements TemplateVariable, Searchable { 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; }