diff --git a/include/staff/ticket-open.inc.php b/include/staff/ticket-open.inc.php
index aa15ff449fc64ffae624dbbac57e27235facddc1..fa4b0ee15569798ac5831a70c04a4fa7374cae36 100644
--- a/include/staff/ticket-open.inc.php
+++ b/include/staff/ticket-open.inc.php
@@ -117,12 +117,21 @@ $info=Format::htmlchars(($errors && $_POST)?$_POST:$info);
                         $('#dynamic-form').load(
                             'ajax.php/form/help-topic/' + this.value);
                         ">
-                    <option value="" selected >&mdash; Select Help Topic &mdash;</option>
                     <?php
-                    if($topics=Topic::getHelpTopics()) {
+                    if ($topics=Topic::getHelpTopics()) {
+                        if (count($topics) == 1)
+                            $selected = 'selected="selected"';
+                        else { ?>
+                <option value="" selected >&mdash; Select Help Topic &mdash;</option>
+<?php                   }
                         foreach($topics as $id =>$name) {
-                            echo sprintf('<option value="%d" %s>%s</option>',
-                                    $id, ($info['topicId']==$id)?'selected="selected"':'',$name);
+                            echo sprintf('<option value="%d" %s %s>%s</option>',
+                                $id, ($info['topicId']==$id)?'selected="selected"':'',
+                                $selected, $name);
+                        }
+                        if (count($topics) == 1 && !$form) {
+                            $T = Topic::lookup($id);
+                            $form = DynamicForm::lookup($T->ht['form_id']);
                         }
                     }
                     ?>