Osticket - 仅限当前用户分配票证

Osticket - Restrict ticket assignment to current User only

我是 OsTicket 的新手,它的结构和功能。

在 "New ticket" 视图 (ticket-open.inc.php) 中,我目前在 "Assign to" 下拉列表中填写了以下代码:

<select id="assignId" name="assignId">
                    <option value="0" selected="selected">&mdash; <?php echo __('Select an Agent OR a Team');?> &mdash;</option>
                    <?php
                    if(($users=Staff::getAvailableStaffMembers())) {
                        echo '<OPTGROUP label="'.sprintf(__('Agents (%d)'), count($users)).'">';
                        foreach($users as $id => $name) {
                            $k="s$id";
                            echo sprintf('<option value="%s" %s>%s</option>',
                                        $k,(($info['assignId']==$k)?'selected="selected"':''),$name);
                        }
                        echo '</OPTGROUP>';
                    }
                    ?>
</select>&nbsp;<span class='error'>&nbsp;<?php echo $errors['assignId']; ?></span>

我想自定义此 OsTicket 视图以仅显示代理(当前用户)作为分配显示的唯一选项。

有没有什么方法可以对此进行硬编码,以确保以简单但万无一失的方式(并且无需更改部门)。 Here's a screenshot

OsTicket v1.9.12 谢谢!

您的员工信息在 $thisstaff 变量中:

<select id="assignId" name="assignId">
                    <option value="0" selected="selected">&mdash; <?php echo __('Select an Agent OR a Team');?> &mdash;</option>
                    <?php
                        echo '<OPTGROUP label="'.sprintf(__('Agents (%d)'), 1).'">';
                        echo sprintf('<option value="%s" %s>%s</option>',                          
                                $thisstaff->getId(),
                                (($info['assignId']==$thisstaff->getId())?'selected="selected"':''),
                                $thisstaff->getName());
                        echo '</OPTGROUP>';
                    ?>
                </select>&nbsp;<span class='error'>&nbsp;<?php echo $errors['assignId']; ?></span>