Vorlagen für Customer-Ticket

Hilfe zu Znuny Problemen aller Art
Locked
GustavG
Znuny expert
Posts: 296
Joined: 26 Nov 2014, 15:56
Znuny Version: Znuny 6.3.4
Real Name: Gerlach

Vorlagen für Customer-Ticket

Post by GustavG »

Hallo,

ich fand zwar diesen uralten Thread: viewtopic.php?t=5157

Doch frage ich mich, ob es nicht etwas gibt, wo ich nicht im Sourcecode von OTRS etwas ändern muss?
Unsere Kunden haben oft die gleichen Anfragen, es wäre sinnvoll, zB. ein Drop-Downmenü einzubauen, welches automatisch bestimmten Text ins neue Customer-Ticket einfügt. Toll wäre natürlich, wenn gleich der Vorname des Kunden im Text stände.

Ist sowas möglich?
RStraub
Znuny guru
Posts: 2210
Joined: 13 Mar 2014, 09:16
Znuny Version: 6.0.14
Real Name: Rolf Straub

Re: Vorlagen für Customer-Ticket

Post by RStraub »

Möglich ist im OTRS (fast) alles - aber dein Use-Case nicht ohne Anpassungen.

Einige Add-Ons bieten dir Textbausteine an. Du selbst könntest ein Dynamisches Feld hinzufügen und bei Änderung entsprechende Body-Texte ausgeben. Out-of-the-box allerdings nicht.

Hier ein Beispiel wie du den Kundennamen angezeigt bekommst. Einfach ganz unten in die CustomerTicketMessage.tt kopieren:

Code: Select all

[% WRAPPER JSOnDocumentComplete %]
<script type="text/javascript">//<![CDATA[
    $('#RichText').val("Hallo,<br>hier ist ein neues Ticket von [% Env('UserFirstname') %]")
//]]></script>
[% END %]
Currently using: OTRS 6.0.14 -- MariaDB -- Ubuntu 16 LTS
GustavG
Znuny expert
Posts: 296
Joined: 26 Nov 2014, 15:56
Znuny Version: Znuny 6.3.4
Real Name: Gerlach

Re: Vorlagen für Customer-Ticket

Post by GustavG »

Vielen Dank für deine Antwort. Das würde dann für alle Customer-Tickets gelten, könnte schon helfen wenn zb. eine automatisch erstellte Signatur eingefügt wird. Ich werds testen.

Edit: funktioniert, damit ist zumindest schon mal eine Begrüßung und eine Signatur möglich im neuen Ticket, klasse! Muss man nur beim Update daran denken, das mit zu übernehmen.
RStraub
Znuny guru
Posts: 2210
Joined: 13 Mar 2014, 09:16
Znuny Version: 6.0.14
Real Name: Rolf Straub

Re: Vorlagen für Customer-Ticket

Post by RStraub »

Der saubere Weg - um es upgradefest zu halten - wäre:
1) Registrierung eines Hook
2) Registrierung eines FilterElementPost
3) welches dann JavaScript dynamisch hinzufügt.
Currently using: OTRS 6.0.14 -- MariaDB -- Ubuntu 16 LTS
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: Vorlagen für Customer-Ticket

Post by reneeb »

Einen Hook braucht man nicht. Es reicht ein Outputfilter-Modul:

Code: Select all

# --
# Copyright (C) xyz
# --
# This software comes with ABSOLUTELY NO WARRANTY. For details, see
# the enclosed file COPYING for license information (AGPL). If you
# did not receive this file, see http://www.gnu.org/licenses/agpl.txt.
# --

package Kernel::Output::HTML::FilterElementPost::CustomerTemplate;

use strict;
use warnings;

our @ObjectDependencies = qw(
    Kernel::Output::HTML::Layout
);

sub new {
    my ( $Type, %Param ) = @_;
    my $Self = {};
    bless( $Self, $Type );

    return $Self;
}

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

    my $LayoutObject = $Kernel::OM->Get('Kernel::Output::HTML::Layout');

    # get template name
    my $Templatename = $Param{TemplateFile} || '';
    return 1 if !$Templatename;
    return 1 if !$Param{Templates}->{$Templatename};

    my $UserFirstname = $LayoutObject->{EnvRef}->{ UserFirstname };

    $LayoutObject->AddJSOnDocumentComplete( Code => qq~
        \$('#RichText').val("Hallo,<br>hier ist ein neues Ticket von $UserFirstname")
    ~);
}

1;
(ungetestet)

Nur noch die passende SysConfig-Option - und fertig
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
GustavG
Znuny expert
Posts: 296
Joined: 26 Nov 2014, 15:56
Znuny Version: Znuny 6.3.4
Real Name: Gerlach

Re: Vorlagen für Customer-Ticket

Post by GustavG »

Hallo,

ich habe in der SysConfig in Core::Web mehrere Frontend::Output::OutputFilterTextAutoLink Einträge gefunden, doch wie binde ich obigen Code ein? Datei in /opt/otrs/Kernel/Output/HTML/Standard/ erstellen, und dann?
GustavG
Znuny expert
Posts: 296
Joined: 26 Nov 2014, 15:56
Znuny Version: Znuny 6.3.4
Real Name: Gerlach

Re: Vorlagen für Customer-Ticket

Post by GustavG »

RStraub wrote:Möglich ist im OTRS (fast) alles - aber dein Use-Case nicht ohne Anpassungen.

Einige Add-Ons bieten dir Textbausteine an. Du selbst könntest ein Dynamisches Feld hinzufügen und bei Änderung entsprechende Body-Texte ausgeben. Out-of-the-box allerdings nicht.

Hier ein Beispiel wie du den Kundennamen angezeigt bekommst. Einfach ganz unten in die CustomerTicketMessage.tt kopieren:

Code: Select all

[% WRAPPER JSOnDocumentComplete %]
<script type="text/javascript">//<![CDATA[
    $('#RichText').val("Hallo,<br>hier ist ein neues Ticket von [% Env('UserFirstname') %]")
//]]></script>
[% END %]
Musste das wieder raus nehmen. Problem war: wenn man das Ticket von oben nach unten ausfüllt, und dann eine Datei anhängt verschwindet der Text wieder. Schade :(
Locked