Hallo OTRS-Community,
Verwendete Version: OTRS 3.2.14
Ich hab folgendes DynamicField definiert:
Name: Ausweis
Label: Identität überprüft
Objekttyp: Ticket
Feldtyp: Checkbox
Nun möchte ich dieses DynamicField beim Erstellen eines Telefon-Tickets -
abhängig von der gewählten Queue - ein- bzw. ausblenden.
Dazu hab ich in
Datei: AgentTicketPhone.dtl
im Block "To Queue" folgendes ergänzt / erweitert:
<label class="Mandatory" for="Dest"><span class="Marker">*</span> $Text{"To
queue"}:</label>
<div class="Field">
$Data{"ToStrg"}
<div id="DestError" class="TooltipErrorMessage" ><p>$Text{"This field is
required."}</p></div>
<div id="DestServerError" class="TooltipErrorMessage"><p>$Text{"This field is
required."}</p></div>
<!--dtl:js_on_document_complete-->
<script type="text/javascript">//<![CDATA[
$('#Dest').bind('change', function (Event) {
# Neu
switch ($('#Dest').val() ) {
case "19\|\|IT-Support Plus":
document.getElementById('DynamicField_Ausweis').style.display = 'block';
document.getElementById('LabelDynamicField_Ausweis').style.display = 'block';
document.getElementById('LabelDynamicField_Ausweis').className = 'Mandatory';
document.getElementById('DynamicField_Ausweis').className = 'DynamicField
Validate_RequiredCheckbox ServerError';
break;
default:
document.getElementById('DynamicField_Ausweis').style.display = 'none';
document.getElementById('LabelDynamicField_Ausweis').style.display = 'none';
}
# Ende Neu
Core.AJAX.FormUpdate($('#NewPhoneTicket'), 'AJAXUpdate', 'Dest', ['TypeID',
'NewUserID', 'NewResponsibleID', 'NextStateID', 'PriorityID', 'ServiceID',
'SLAID', 'SignKeyID', 'CryptKeyID', $Data{"DynamicFieldNamesStrg"}, 'To', 'Cc',
'Bcc']);
});
//]]></script>
<!--dtl:js_on_document_complete-->
</div>
<div class="Clear"></div>
Zusätzlich das DynamicField in der SysConfig
(Untergruppe: Frontend::Agent::Ticket::ViewPhoneNew)
aktiviert.
Wählt man nun beim Erstellen eines Telefon-Tickets im Feld "An Queue" die
Queue "IT-Support Plus" (QueueID = 19), so wird das Feld eingeblendet bzw. bei
jeder anderen Queue wird das Feld nicht angezeigt. Das funktioniert also wie
gewünscht.
Allerdings wird das Dynamicfield beim Aufruf der Maske "Telefon-Ticket" auch
solange eingeblendet, solange noch überhaupt keine Queue gewählt wurde.
Hat jemand eine Idee, wie ich dies lösen könnte?
Vielen Dank
Gruß
Sepp