diff --git a/middleware/CsrfMiddleware.php b/middleware/CsrfMiddleware.php new file mode 100644 index 0000000..866f5ed --- /dev/null +++ b/middleware/CsrfMiddleware.php @@ -0,0 +1,55 @@ + self::$tokenLifetime; + } +} +?> diff --git a/migrations/013_add_performance_indexes.sql b/migrations/013_add_performance_indexes.sql new file mode 100644 index 0000000..a46d576 --- /dev/null +++ b/migrations/013_add_performance_indexes.sql @@ -0,0 +1,11 @@ +-- Migration 013: Add performance indexes for critical queries + +-- Index on ticket_comments.ticket_id (foreign key without index) +-- Speeds up comment loading by 10-100x on large tables +CREATE INDEX IF NOT EXISTS idx_ticket_comments_ticket_id +ON ticket_comments(ticket_id); + +-- Composite index on audit_log for entity lookups with date sorting +-- Optimizes activity timeline queries +CREATE INDEX IF NOT EXISTS idx_audit_entity_created +ON audit_log(entity_type, entity_id, created_at DESC); diff --git a/migrations/013_rollback.sql b/migrations/013_rollback.sql new file mode 100644 index 0000000..4c5e514 --- /dev/null +++ b/migrations/013_rollback.sql @@ -0,0 +1,4 @@ +-- Rollback for migration 013: Remove performance indexes + +DROP INDEX IF EXISTS idx_ticket_comments_ticket_id ON ticket_comments; +DROP INDEX IF EXISTS idx_audit_entity_created ON audit_log;