Hooks: Unterschied zwischen den Versionen
(Die Seite wurde neu angelegt: „Hooks erlauben es Ihnen, Ihren eigenen Code auszuführen wenn bestimmte Seiten in sourceDESK aufgerufen werden oder Aktionen stattfinden. == Hooks erstellen =…“) |
|||
Zeile 24: | Zeile 24: | ||
Die nicht-negative Priorität legt fest, in welcher Reihenfolge mehrere Methoden für einen Hook ausgeführt werden (systemweit über alle Addons). Eine niedrige Priorität wird früher ausgeführt. Wenn zwei Methoden für einen Hook mit der gleichen Priorität definiert werden, wird die zuerst definierte Methode zuerst ausgeführt (Addons werden alphabetisch geladen). | Die nicht-negative Priorität legt fest, in welcher Reihenfolge mehrere Methoden für einen Hook ausgeführt werden (systemweit über alle Addons). Eine niedrige Priorität wird früher ausgeführt. Wenn zwei Methoden für einen Hook mit der gleichen Priorität definiert werden, wird die zuerst definierte Methode zuerst ausgeführt (Addons werden alphabetisch geladen). | ||
+ | |||
+ | Bestimmte Hooks übergeben Daten als Array als erstes Argument, andere erwarten eine Rückgabe. Detaillierte Informationen zu Eingaben und erwarteten Rückgabewerten finden Sie bei den einzelnen Hooks. | ||
== Liste der Hooks == | == Liste der Hooks == | ||
− | * [[Hook:]] | + | * [[Hook:AdminAreaAdditionalJS]] |
+ | * [[Hook:AdminLogin]] | ||
+ | * [[Hook:AdminLogout]] | ||
+ | * [[Hook:AdminOnlineStatusChanged]] | ||
+ | * [[Hook:AdminSearch]] | ||
+ | * [[Hook:AdminSSO]] | ||
+ | * [[Hook:AdminTopBar]] | ||
+ | * [[Hook:BeforeTicketAnswer]] | ||
+ | * [[Hook:BelowTicketInfo]] | ||
+ | * [[Hook:CartDisplayFooterMessage]] | ||
+ | * [[Hook:CartDisplayRowExtension]] | ||
+ | * [[Hook:ClientTemplateVars]] | ||
+ | * [[Hook:Cronjob]] | ||
+ | * [[Hook:CustomerChangePassword]] | ||
+ | * [[Hook:CustomerCreated]] | ||
+ | * [[Hook:ClientDataChanged]] | ||
+ | * [[Hook:CustomerEdit]] | ||
+ | * [[Hook:CustomerLogin]] | ||
+ | * [[Hook:DomainSyncFinished]] | ||
+ | * [[Hook:FrontendFooter]] | ||
+ | * [[Hook:InvoiceCreated]] | ||
+ | * [[Hook:InvoicePaid]] | ||
+ | * [[Hook:MailPostSend]] | ||
+ | * [[Hook:MailPreSend]] | ||
+ | * [[Hook:MaintenanceAllowedPages]] | ||
+ | * [[Hook:OrderPlaced]] | ||
+ | * [[Hook:ProductDownload]] | ||
+ | * [[Hook:SkipCSRF]] | ||
+ | * [[Hook:SupportMessageImport]] | ||
+ | * [[Hook:TicketAnswer]] | ||
+ | * [[Hook:TicketClose]] | ||
+ | * [[Hook:TicketCreated]] | ||
+ | * [[Hook:TicketView]] | ||
+ | * [[Hook:UserLogEntry]] | ||
+ | * [[Hook:VersionDownload]] |
Version vom 4. Oktober 2018, 21:22 Uhr
Hooks erlauben es Ihnen, Ihren eigenen Code auszuführen wenn bestimmte Seiten in sourceDESK aufgerufen werden oder Aktionen stattfinden.
Hooks erstellen
Hooks können nur innerhalb von Addons erstellt werden. Hierzu bekommt das Addon eine Methode hooks(), die ein Array der auszuführenden Addons zurückgibt:
public function hooks() { return [ ["HookPoint1", "hook1", 10], ["HookPoint2", "hook2", 10], ]; }
Hierbei bezeichnet HookPoint1 den gewünschten Hook (siehe untenstehende Liste), hook1 die aufzurufende Methode des Addons und 10 die Priorität.
Der Hookname ist nicht case-sensitiv, die Groß-/Kleinschreibung kann also vernachlässigt werden. Die aufzurufende Methode muss public sein und genau ein Argument akzeptieren:
public function hook1($par) { // Ihr Hook-Code }
Die nicht-negative Priorität legt fest, in welcher Reihenfolge mehrere Methoden für einen Hook ausgeführt werden (systemweit über alle Addons). Eine niedrige Priorität wird früher ausgeführt. Wenn zwei Methoden für einen Hook mit der gleichen Priorität definiert werden, wird die zuerst definierte Methode zuerst ausgeführt (Addons werden alphabetisch geladen).
Bestimmte Hooks übergeben Daten als Array als erstes Argument, andere erwarten eine Rückgabe. Detaillierte Informationen zu Eingaben und erwarteten Rückgabewerten finden Sie bei den einzelnen Hooks.
Liste der Hooks
- Hook:AdminAreaAdditionalJS
- Hook:AdminLogin
- Hook:AdminLogout
- Hook:AdminOnlineStatusChanged
- Hook:AdminSearch
- Hook:AdminSSO
- Hook:AdminTopBar
- Hook:BeforeTicketAnswer
- Hook:BelowTicketInfo
- Hook:CartDisplayFooterMessage
- Hook:CartDisplayRowExtension
- Hook:ClientTemplateVars
- Hook:Cronjob
- Hook:CustomerChangePassword
- Hook:CustomerCreated
- Hook:ClientDataChanged
- Hook:CustomerEdit
- Hook:CustomerLogin
- Hook:DomainSyncFinished
- Hook:FrontendFooter
- Hook:InvoiceCreated
- Hook:InvoicePaid
- Hook:MailPostSend
- Hook:MailPreSend
- Hook:MaintenanceAllowedPages
- Hook:OrderPlaced
- Hook:ProductDownload
- Hook:SkipCSRF
- Hook:SupportMessageImport
- Hook:TicketAnswer
- Hook:TicketClose
- Hook:TicketCreated
- Hook:TicketView
- Hook:UserLogEntry
- Hook:VersionDownload