From 64d5e0cb408c308db74e5f63ba6866f2154cd08c Mon Sep 17 00:00:00 2001
From: Jordan Ramos
Date: Wed, 20 May 2026 11:41:40 -0600
Subject: [PATCH] Fix CCP Metrics page crash for non-Admin users
CCPMetricsPage called isEditor() which does not exist in AuthContext.
Admin users were unaffected due to JS short-circuit evaluation on
isAdmin() || isEditor(). Standard_User accounts hit TypeError because
isEditor was undefined.
Replaced isEditor() with canWrite() which is the correct auth helper
for write-capable users (Admin + Standard_User).
Closes #15
---
frontend/src/components/pages/CCPMetricsPage.js | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/frontend/src/components/pages/CCPMetricsPage.js b/frontend/src/components/pages/CCPMetricsPage.js
index 3c73b24..4e27441 100644
--- a/frontend/src/components/pages/CCPMetricsPage.js
+++ b/frontend/src/components/pages/CCPMetricsPage.js
@@ -1012,7 +1012,7 @@ function DataManagementPanel({ onClose, onDataChanged }) {
// Main Page Component
// ---------------------------------------------------------------------------
export default function CCPMetricsPage() {
- const { isAdmin, isEditor } = useAuth();
+ const { isAdmin, canWrite } = useAuth();
const [stats, setStats] = useState(null);
const [trend, setTrend] = useState(null);
const [burndownData, setBurndownData] = useState(null);
@@ -1115,7 +1115,7 @@ export default function CCPMetricsPage() {
Cross-organizational compliance posture across all verticals
- {(isAdmin() || isEditor()) && (
+ {canWrite() && (
{isAdmin() && (
- {(isAdmin() || isEditor()) && (
+ {canWrite() && (