Spalten hinzufügen im CIC

Hilfe zu Znuny Problemen aller Art
Locked
Charmacas
Znuny advanced
Posts: 103
Joined: 18 Jan 2016, 10:27
Znuny Version: 5.0.26 on Debian 8

Spalten hinzufügen im CIC

Post by Charmacas »

Hey Community,

ich möchte gerne zwei Spalten im CIC (CustomerInformationCenter) bei den Kundenbenutzern hinzufügen.

Die Telefonnummer und den Ort des Nutzers.

Laut meiner Recherche müssten hier Anpassungen mit bestimmten Parametern in einer .dtl vorgenommen werden. Weiter komme ich aber leider nicht.

Kann mir hierbei bitte jemand helfen?


Viele Grüße
RStraub
Znuny guru
Posts: 2210
Joined: 13 Mar 2014, 09:16
Znuny Version: 6.0.14
Real Name: Rolf Straub

Re: Spalten hinzufügen im CIC

Post by RStraub »

Guten Morgen!

Sehr gerne, modden macht doch Spass :)

Inzwischen (wenn die Versionsangabe bei dir stimmt) heißen die Template Dateien nicht mehr .dtl sondern .tt.
OTRS organisiert sich die Informationen immer in einem .pm (Perl Modul) und übergibt diese dann an das Template. Für deine Anpassung brauchst du drei Schritte:
1) Kopiere dir die beiden (bei der .tt heißt sie Agent-) DashboardCustomerUserList.pm / .tt in derselben Ordnerstruktur nach ~OTRSHOME/Custom/...
2) Editiere ~OTRSHOME/Custom/Kernel/Output/HTML/DashboardCustomerUserList.pm folgendermaßen:
Finde die Zeilen:

Code: Select all

        # do we need to show the chat link?
        # should only be visible if
        # 1. chat is active
        # 2. current user has access to the chat
        # 3. this customer user is online
und füge DAVOR diese ein:

Code: Select all

        my %User = $CustomerUserObject->CustomerUserDataGet(
            User => $CustomerKey,
        );

        $LayoutObject->Block(
            Name => 'ContentLargeCustomerUserCustomPhone',
            Data => {
                %Param,
                Phone => $User{UserPhone},
            },
        );
Damit wird schonmal die Information der Telefonnummer übergeben. Nun zum Template.
3) Editiere ~OTRSHOME/Custom/Kernel/Output/HTML/Standard/AgentDashboardCustomerUserList.tt
3.1) Einen neuen TableHeader einfügen zwischen Customer information und "Open", sodass die Zeilen so aussehen:

Code: Select all

            [...]
            <th>[% Translate("Customer information") | html %]</th>
            <th>[% Translate("Telephone number") | html %]</th>
            <th>[% Translate("Open") | html %]</th>
            [...]
3.2) Dann suche diese drei Zeilen:

Code: Select all

            <td>
                [% Data.CustomerListEntry | html %]
            </td>
und füge hinterher diese hinzu:

Code: Select all

[% RenderBlockStart("ContentLargeCustomerUserCustomPhone") %]
            <td>
                [% Data.Phone | html %]
            </td>
[% RenderBlockEnd("ContentLargeCustomerUserCustomPhone") %]
Damit bekommst du die Telefonnummer angezeigt. Schau mal ob du mit dieser Hilfestellung den Ort hinbekommst :)
Currently using: OTRS 6.0.14 -- MariaDB -- Ubuntu 16 LTS
Charmacas
Znuny advanced
Posts: 103
Joined: 18 Jan 2016, 10:27
Znuny Version: 5.0.26 on Debian 8

Re: Spalten hinzufügen im CIC

Post by Charmacas »

Das klappt wie geschnitten Brot. ;)

Vielen vielen Dank für die gute Beschreibung!

Ich hoffe ich bekomme den Ort auch noch raus, aber das sollte jetzt wohl möglich sein.

Wo hast du die Variablen her? Gibt es da eine gute Anlaufstelle im System an der ich mir die vorhandenen Variablen anschauen kann?

-- EDIT --
Das Hinzufügen der Stadt hat auch geklappt. Ich habe mich an der Datenbanktabelle customer_user entlang gehangelt.
Locked