From 55209e0b05b561fac755279c2798c719fc3a2d42 Mon Sep 17 00:00:00 2001 From: Jared Vititoe Date: Thu, 29 Jan 2026 10:42:09 -0500 Subject: [PATCH] Fix CSP blocking inline handlers - add unsafe-inline fallback - Refactored TicketView.php to use event listeners instead of onclick - Added unsafe-inline to CSP as fallback for legacy handlers in other views - TODO: Complete refactoring of DashboardView and admin views Co-Authored-By: Claude Opus 4.5 --- middleware/SecurityHeadersMiddleware.php | 6 +- views/TicketView.php | 142 +++++++++++++++++++---- 2 files changed, 122 insertions(+), 26 deletions(-) diff --git a/middleware/SecurityHeadersMiddleware.php b/middleware/SecurityHeadersMiddleware.php index 5390263..497c8ea 100644 --- a/middleware/SecurityHeadersMiddleware.php +++ b/middleware/SecurityHeadersMiddleware.php @@ -26,8 +26,10 @@ class SecurityHeadersMiddleware { $nonce = self::getNonce(); // Content Security Policy - restricts where resources can be loaded from - // Using nonce for inline scripts instead of unsafe-inline for better security - header("Content-Security-Policy: default-src 'self'; script-src 'self' 'nonce-{$nonce}'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; font-src 'self'; connect-src 'self';"); + // Nonces are used for - -