prepare('INSERT INTO plugin_beispiel_log (ticket_id, event, created_at) VALUES (?,?,?)')->execute([$e['ticketId'], 'created', db_now()]); }); plugin_add_hook('ticket.status_changed', function (array $e) { $pdo = get_db(); $pdo->prepare('INSERT INTO plugin_beispiel_log (ticket_id, event, created_at) VALUES (?,?,?)')->execute([$e['ticketId'], 'status_changed', db_now()]); }); // Baustein in der Ticketansicht (Plugins liefern fertiges HTML und müssen Ausgaben selbst escapen) plugin_add_filter('ticket.view.sidebar', function (string $html, array $ctx) { $stmt = get_db()->prepare('SELECT COUNT(*) FROM plugin_beispiel_log WHERE ticket_id = ?'); $stmt->execute([$ctx['ticketId']]); return $html . '