diff --git a/include/class.ticket.php b/include/class.ticket.php index 28d00e0d0b60f4e0cc8547c684d19ab0c7af6f0e..3907607d5cd4e9be9b94b3e914e9fb4da60d486b 100644 --- a/include/class.ticket.php +++ b/include/class.ticket.php @@ -2009,7 +2009,7 @@ class Ticket { $fields['topicId'] = array('type'=>'int', 'required'=>1, 'error'=>'Select help topic'); break; case 'staff': - $fields['deptId'] = array('type'=>'int', 'required'=>1, 'error'=>'Dept. required'); + $fields['deptId'] = array('type'=>'int', 'required'=>0, 'error'=>'Dept. required'); $fields['topicId'] = array('type'=>'int', 'required'=>1, 'error'=>'Topic required'); $fields['duedate'] = array('type'=>'date', 'required'=>0, 'error'=>'Invalid date - must be MM/DD/YY'); case 'api': diff --git a/include/staff/ticket-open.inc.php b/include/staff/ticket-open.inc.php index 4cb4d323b8a3033be39962d299826f5b92f8ec6d..fa4b0ee15569798ac5831a70c04a4fa7374cae36 100644 --- a/include/staff/ticket-open.inc.php +++ b/include/staff/ticket-open.inc.php @@ -101,8 +101,7 @@ $info=Format::htmlchars(($errors && $_POST)?$_POST:$info); </td> <td> <select name="source"> - <option value="" selected >— Select Source —</option> - <option value="Phone" <?php echo ($info['source']=='Phone')?'selected="selected"':''; ?>>Phone</option> + <option value="Phone" <?php echo ($info['source']=='Phone')?'selected="selected"':''; ?> selected="selected">Phone</option> <option value="Email" <?php echo ($info['source']=='Email')?'selected="selected"':''; ?>>Email</option> <option value="Other" <?php echo ($info['source']=='Other')?'selected="selected"':''; ?>>Other</option> </select> @@ -111,46 +110,55 @@ $info=Format::htmlchars(($errors && $_POST)?$_POST:$info); </tr> <tr> <td width="160" class="required"> - Department: + Help Topic: </td> <td> - <select name="deptId"> - <option value="" selected >— Select Department —</option> + <select name="topicId" onchange="javascript: + $('#dynamic-form').load( + 'ajax.php/form/help-topic/' + this.value); + "> <?php - if($depts=Dept::getDepartments()) { - foreach($depts as $id =>$name) { - echo sprintf('<option value="%d" %s>%s</option>', - $id, ($info['deptId']==$id)?'selected="selected"':'',$name); + if ($topics=Topic::getHelpTopics()) { + if (count($topics) == 1) + $selected = 'selected="selected"'; + else { ?> + <option value="" selected >— Select Help Topic —</option> +<?php } + foreach($topics as $id =>$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']); } } ?> </select> - <font class="error"><b>*</b> <?php echo $errors['deptId']; ?></font> + <font class="error"><b>*</b> <?php echo $errors['topicId']; ?></font> </td> </tr> - <tr> - <td width="160" class="required"> - Help Topic: + <td width="160"> + Department: </td> <td> - <select name="topicId" onchange="javascript: - $('#dynamic-form').load( - 'ajax.php/form/help-topic/' + this.value); - "> - <option value="" selected >— Select Help Topic —</option> + <select name="deptId"> + <option value="" selected >— Select Department —</option> <?php - if($topics=Topic::getHelpTopics()) { - foreach($topics as $id =>$name) { + if($depts=Dept::getDepartments()) { + foreach($depts as $id =>$name) { echo sprintf('<option value="%d" %s>%s</option>', - $id, ($info['topicId']==$id)?'selected="selected"':'',$name); + $id, ($info['deptId']==$id)?'selected="selected"':'',$name); } } ?> </select> - <font class="error"><b>*</b> <?php echo $errors['topicId']; ?></font> + <font class="error"><?php echo $errors['deptId']; ?></font> </td> </tr> + <tr> <td width="160"> SLA Plan: