Проблема в следующем: Клиент не может выбрать Ticket Type в выпадающем меню в своём интерфейсе. У нас дефинировано 3 отдельных типа для определенного юзера. Это - Bug, Clarification, New Feature. Эти типы активны, имеют свои айди в sql и видимы в дроп-даун меню. Когда пользователь выбирает тип, страница релоудится и тип устанавливается на первое, дефолтное значение. Так во всех Themes для всех юзеров, независимо от того, какие типы им разрешены.
Вот кусок кода с CustomerTicketMessage.dtl
Code: Select all
<!-- dtl:block:TicketType -->
<div>
<!--<label for="TicketNumber">$Config{"Ticket::Hook"}</label>
<input title="Ticket#" type="text" name="TicketNumber" size="30" value="$QData{"TicketNumber"}" />-->
<label for="TypeID" class="Mandatory">
<span class="Marker">*</span>
$Text{"Type"}:
</label>
<select name="TypeID" id="TypeID" class="Validate_Required ">
<option value="13">Bug</option>
<option value="14">Clarification</option>
<option value="15">New Feature</option>
</select>
<div id="TypeIDError" class="TooltipErrorMessage" ><p>$Text{"This field is required."}</p></div>
<div id="TypeIDServerError" class="TooltipErrorMessage NoJavaScriptMessage$QData{"TypeIDInvalid"}" ><p>$Text{"This field is required."}</p></div>
<div class="Clear"></div>
</div>
<!--dtl:js_on_document_complete-->
<script type="text/javascript">//<![CDATA[
$('#TypeID').bind('change', function (Event) {
// make sure the ticket is not yet created on queue change
$('input#Expand').val(1);
Core.Form.Validate.DisableValidation($(this).closest('form'));
$(this).closest('form').submit();
});
//]]></script>
<!--dtl:js_on_document_complete-->
<!-- dtl:block:TicketType -->