Freitextfelder mit HTML in Dynamic Fields umwandeln

Hilfe zu Znuny Problemen aller Art
Locked
nasenbaer
Znuny newbie
Posts: 3
Joined: 13 Sep 2012, 14:12
Znuny Version: otrs 3.0
Real Name: Bernhard Mandera
Company: Imperia AG

Freitextfelder mit HTML in Dynamic Fields umwandeln

Post by nasenbaer »

Ich nutze produktiv OTRS 3.0 mit Freitextfeldern und teste gerade das Update auf 3.1, wo die Freitextfelder durch Dynamic Fields ersetzt werden.

Mein Problem:

In einem Freitextfeld in 3.0 kann man auch beliebige HTML Tags eingeben, z. Bsp. "<font color='red'>Wichtig!</font>". Im AgentTicketViewZoom werden die HTML Tags richtig interpretiert und "Wichtig!" in roter Farbe ausgegeben.

Die Migration der Freitextfelder zu Dynamic Fields lief ohne Fehler.

In 3.1 gelingt es mir aber nicht mehr, dass die HTML Tagsin AgentTicketViewZoom interpretiert werden. Sie werden entweder originalgetreu ausgegeben oder mit &gt. - jenachdem ob ich mit $Data oder $QData die Values abrufe.

<!-- dtl:block:TicketDynamicFieldPlain -->
<span title="$Data{"Title"}">$Data{"Value"}</span>
<!-- dtl:block:TicketDynamicFieldPlain -->
Ausgabe: "<font color='red'>Wichtig!</font>

<!-- dtl:block:TicketDynamicFieldPlain -->
<span title="$Data{"Title"}">$QData{"Value"}</span>
<!-- dtl:block:TicketDynamicFieldPlain -->
Ausgabe: <font color='red'>>Wichtig!</font>

Wie kann ich es hingebekommen, das in der AgentTicketViewZoom(.dtl) die HTML Tags interpretiert werden, also die Ausgabe wieder "Wichtig" in roter Farbe ist?
nasenbaer
Znuny newbie
Posts: 3
Joined: 13 Sep 2012, 14:12
Znuny Version: otrs 3.0
Real Name: Bernhard Mandera
Company: Imperia AG

Re: Freitextfelder mit HTML in Dynamic Fields umwandeln

Post by nasenbaer »

Folgende Änderung genügt, um die Anforderung zu erfüllen:

In System/DynamicField/Backend/Text.pm

den Aufruf von Ascii2Html deaktivieren:

sub DisplayValueRender {
my ( $Self, %Param ) = @_;

# set HTMLOuput as default if not specified
if ( !defined $Param{HTMLOutput} ) {
$Param{HTMLOutput} = 1;
}

# get raw Title and Value strings from field value
my $Value = defined $Param{Value} ? $Param{Value} : '';
my $Title = $Value;

# HTMLOuput transformations
if ( $Param{HTMLOutput} ) {
###
# $Value = $Param{LayoutObject}->Ascii2Html(
# Text => $Value,
# Max => $Param{ValueMaxChars} || '',
# );
###
Locked