Hallo Zusammen,
ich bin gerade dabei ein eigenes OTRS Modul zu schreiben, bzw erstmal zu verstehen wie das funktioniert.
Anbei ein Beispiel was ich jetzt einfach mal zusammen geschustert habe. Ziel in dem Falle ist die Arbeitszeiten mehr oder weniger Lückenlos zu Dokumenieren.
Gemacht hab ich das wie folgt:
1.) cp Kernel/Modules/AgentTicketActionCommon.pm Custom/Kernel/Modules/AgentTicketActionCommon.pm
2.) dann in AgentTicketActionCommon.pm meine Funktionen geschrieben
3.) cp Kernel/Output/HTML/Templates/Standard/AgentTicketActionCommon.tt Custom/Kernel/Output/HTML/Templates/Standard/AgentTicketActionCommon.tt
4.) Platzhalter/HTML Code in AgentTicketActionCommon.tt eingefügt
Passt und funktioniert soweit. Im Grunde hab ich da ja nur was hinzu gefügt.
Jetzt hätte ich das aber alles gerne in einem "eigenen Modul". Da wird noch viel mehr dazu kommen.
Wie man ein eigenes Module aufbaut steht ja hier:
https://doc.znuny.org/znuny_lts/develop ... -otrs.html
Aber wie kann ich auf existierenden Templates mein Output rendern?
Eigentlich möchte ich ja AgentTicketActionCommon.tt nicht anfassen, oder?
Danke & Gruß,
Michael
OTRS6 - Eigenes OTRS Modul - die ersten Schritte :)
-
- Znuny newbie
- Posts: 10
- Joined: 31 Jan 2023, 09:23
- Znuny Version: 6.2.8
- Real Name: Michael Liebherr
OTRS6 - Eigenes OTRS Modul - die ersten Schritte :)
You do not have the required permissions to view the files attached to this post.
-
- Administrator
- Posts: 4165
- Joined: 18 Dec 2007, 12:23
- Znuny Version: Znuny and Znuny LTS
- Real Name: Roy Kaldung
- Company: Znuny
- Contact:
Re: OTRS6 - Eigenes OTRS Modul - die ersten Schritte :)
Hi,
I moved the topic to the appropriate section. This is a better place for development related questions.
Regarding your link: this documentation does not belong to Znuny 6.0 or newer and might differ.
- Roy
I moved the topic to the appropriate section. This is a better place for development related questions.
Regarding your link: this documentation does not belong to Znuny 6.0 or newer and might differ.
- Roy
Znuny and Znuny LTS running on CentOS / RHEL / Debian / SLES / MySQL / PostgreSQL / Oracle / OpenLDAP / Active Directory / SSO
Use a test system - always.
Do you need professional services? Check out https://www.znuny.com/
Do you want to contribute or want to know where it goes ?
Use a test system - always.
Do you need professional services? Check out https://www.znuny.com/
Do you want to contribute or want to know where it goes ?
-
- Znuny newbie
- Posts: 38
- Joined: 19 Jan 2024, 16:07
- Znuny Version: 7.1.3
- Real Name: Paul Folkers
- Company: IT.WESER-EMS
- Contact:
Re: OTRS6 - Eigenes OTRS Modul - die ersten Schritte :)
Hallo Michael,
der übliche Ansatz ist der, den Du genutzt hast.
Das Template wird in das Custom-Verzeichnis kopiert und dann mit den eigenen Code-Snippets ergänzt bzw. angepasst.
So machen wir es und so ist es mir auch von anderen Herstellern von Znuny-AddOns bekannt.
Dabei lässt sich dann leider nicht verhindern, bei einem Znuny-Update zu prüfen, ob (in deinem speziellen Fall) Änderungen an der Default-ActionCommon vorgenommen wurden, die Du dann in deine Kopie migrieren müsstest.
Eine Option wäre höchstens, eine eigene Action/Maske mit eigenem Template bereitzustellen und in diesem Template dann einfach die ActionCommon einzubinden.
Bisher habe ich noch keinen "schöneren" Weg dafür gesehen.
Besser zu lösen ist beispielsweise die Einbindung eines neuen Widgets in der AgentTicketZoom, weil dort alles in eigenständige Module und Templates ausgelagert werden kann. Auch da bleibt aber nicht aus, bei jedem Znuny-Update auf Kompatibilität zu prüfen.
Viele Grüße!
der übliche Ansatz ist der, den Du genutzt hast.
Das Template wird in das Custom-Verzeichnis kopiert und dann mit den eigenen Code-Snippets ergänzt bzw. angepasst.
So machen wir es und so ist es mir auch von anderen Herstellern von Znuny-AddOns bekannt.
Dabei lässt sich dann leider nicht verhindern, bei einem Znuny-Update zu prüfen, ob (in deinem speziellen Fall) Änderungen an der Default-ActionCommon vorgenommen wurden, die Du dann in deine Kopie migrieren müsstest.
Eine Option wäre höchstens, eine eigene Action/Maske mit eigenem Template bereitzustellen und in diesem Template dann einfach die ActionCommon einzubinden.
Bisher habe ich noch keinen "schöneren" Weg dafür gesehen.
Besser zu lösen ist beispielsweise die Einbindung eines neuen Widgets in der AgentTicketZoom, weil dort alles in eigenständige Module und Templates ausgelagert werden kann. Auch da bleibt aber nicht aus, bei jedem Znuny-Update auf Kompatibilität zu prüfen.
Viele Grüße!
Founder of IT.WESER-EMS (open source-focused IT-consulting) in Oldenburg, Northern Germany.
Dedicated to Znuny, GLPI and CheckMK
Znuny consulting & development via IT.WESER-EMS
Dedicated to Znuny, GLPI and CheckMK
Znuny consulting & development via IT.WESER-EMS