diff --git a/include/class.list.php b/include/class.list.php
index 13c9bf817a18445997077d539868915c2b8ebd8d..f10963a8f58fa9a07e05950bac92b21a1e3ba1e8 100644
--- a/include/class.list.php
+++ b/include/class.list.php
@@ -1279,7 +1279,7 @@ implements CustomListItem, TemplateVariable, Searchable {
             'state' => new TicketStateChoiceField(array(
                 'label' => __('State'),
             )),
-            'name' => new TicketStatusChoiceField(array(
+            'name' => new TextBoxField(array(
                 'label' => __('Status Name'),
             )),
         );
diff --git a/include/staff/templates/advanced-search-criteria.tmpl.php b/include/staff/templates/advanced-search-criteria.tmpl.php
index 88060a6004f8c6bd0ae17729ff08451251362b6c..136c7d139bb7a35d382757fe2e534230f79d997a 100644
--- a/include/staff/templates/advanced-search-criteria.tmpl.php
+++ b/include/staff/templates/advanced-search-criteria.tmpl.php
@@ -9,9 +9,11 @@ foreach (array_keys($info) as $F) {
 }
 $has_errors = !!$form->errors();
 $inbody = false;
+$already_listed = [];
 $first_field = true;
 foreach ($form->getFields() as $name=>$field) {
     @list($name, $sub) = explode('+', $field->get('name'), 2);
+    $already_listed[$name] = 1;
     if ($sub === 'search') {
         if (!$first_field) {
             echo '</div></div>';
@@ -76,6 +78,9 @@ if (!$first_field)
 <?php
 if (is_array($matches)) {
 foreach ($matches as $path => $F) {
+    # Skip fields already listed above the drop-down
+    if (isset($already_listed[$path]))
+        continue;
     list($label, $field) = $F; ?>
     <option value="<?php echo $path; ?>" <?php
         if (isset($state[$path])) echo 'disabled="disabled"';