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;
     }