Das Plugin funktioniert ohne Einstellungen. Alle Funktionen sind nach der Aktivierung aktiv. Die Plugin-Konfiguration erreichst du im Admin Panel unter Verwalten → Plugins → Subticket Manager.
| Feld | Schlüssel | Standard | Wirkung |
|---|---|---|---|
| Remove Data on Uninstall | remove_data_on_uninstall |
aus | Beim Deinstallieren löscht das Plugin seine Tabellen, die Spalte version und die Indizes (siehe unten) |
Das Feld trägt die Beschreibung „Delete all subticket metadata when plugin is uninstalled (WARNING: This cannot be undone!)“.
Ist die Option aktiv, führt uninstall() folgende Schritte aus:
ost_ticket_progress und ost_ticket_hierarchy_metadata.version aus ost_ticket.idx_ticket_pid und idx_ticket_hierarchy von ost_ticket.Die Eltern-Kind-Beziehungen selbst bleiben erhalten, weil sie in der osTicket-Spalte ticket_pid stehen. Die deployten Dateien in scp/ entfernt das Plugin beim Deinstallieren immer, unabhängig von dieser Option.
Die beiden Befehle
DROP COLUMN IF EXISTSundDROP INDEX IF EXISTSsind MariaDB-Syntax. MySQL lehnt sie ab. Auf MySQL bleiben Spalteversionund die Indizes daher womöglich bestehen, nur die Tabellen werden gelöscht.
Das Konfigurationsformular zeigt neun weitere Felder: Maximum Hierarchy Depth, Maximum Children per Parent, Auto-close Parent Ticket, Cascade Hold Status, Cascade Assignment Changes, Show Subtickets in Queue, Require Parent Ticket to be Open, Allow Nested Subtickets und Notify on Auto-Close. Keines davon wird ausgewertet. Das Plugin schließt keine Parent-Tickets, hält Children nicht an und weist sie nicht neu zu, begrenzt weder Tiefe noch Anzahl der Children und blendet Children nicht in Warteschlangen aus. Du kannst die Felder ignorieren.
Die Werte werden beim Start zwar in einen internen Zwischenspeicher übernommen, aber nirgends gelesen. Welche Regeln das Plugin tatsächlich durchsetzt, steht unter Technische Details.
Der Debug-Modus ist kein Formularfeld, sondern die PHP-Konstante SUBTICKET_DEBUG. Das Plugin definiert sie mit false, sofern sie noch nicht definiert ist. Du schaltest ihn ein, indem du die Konstante vor dem Laden des Plugins definierst, zum Beispiel in include/ost-config.php:
define('SUBTICKET_DEBUG', true);
Alternativ änderst du die Zeile define('SUBTICKET_DEBUG', false); am Anfang von class.SubticketPlugin.php. Dieser Eingriff geht bei einem Update verloren.
Im Debug-Modus schreibt das Plugin Zeitstempel, SQL-Abfragen, Ticket-IDs und Betreffzeilen in die Datei /tmp/subticket-debug.log.
Aktiviere den Debug-Modus nur zur Fehlersuche und entferne die Konstante danach wieder. Die Logdatei enthält Ticket-Daten und liegt in
/tmp.
Der Kommentar am Anfang von js/queue-indicator.js nennt ein Flag window.SUBTICKET_DEBUG = true, das du in der Browser-Konsole setzen könntest. Der Code liest dieses Flag nicht. Das Setzen hat keine Wirkung, und das JavaScript des Panels hat keinen Debug-Schalter. Das Panel (subticket-panel.js) schreibt seine Meldungen mit dem Präfix [Subticket] immer in die Browser-Konsole, der Queue-Indikator Fehler mit dem Präfix [SubticketManager].
Die Beschriftungen im Ticket-Panel (zum Beispiel „Link to Parent“, „Create Subticket“) sind fest auf Englisch im Code hinterlegt und werden nicht übersetzt. Die Übersichtsseite subtickets.php ist gemischt: Die Überschrift lautet „Ticket Hierarchies“, der Einleitungstext und die Tabellenköpfe (Parent-Ticket, Betreff, Status, Anzahl, Child-Tickets) sind fest auf Deutsch geschrieben. Über die osTicket-Übersetzung laufen nur der Name des Staff-Eintrags („Subtickets“), der Titel „Subticket Hierarchies“ bei der Registrierung dieses Eintrags und der Tooltip „%d sub-ticket(s)“.