Skip to content

Commit 229c6de

Browse files
WangYuTenggclaude
andcommitted
fix(sidebar): show admin-only nav items to admins regardless of view-as
Filter compared item.roles against effectiveRole, but effectiveRole for an admin is always 'student' or 'staff' (per AuthContext.tsx:132-137), so admin-only items (User Management, Settings) were never shown. Admins now always see admin items based on dbUser.role. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 6c313c3 commit 229c6de

1 file changed

Lines changed: 2 additions & 0 deletions

File tree

src/client/components/Sidebar.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,8 @@ export function Sidebar() {
111111

112112
const filteredNavigation = navigation.filter((item) => {
113113
const role = effectiveRole ?? dbUser.role;
114+
// Admins always see admin-only items, regardless of view-as.
115+
if (dbUser.role === 'admin' && item.roles.includes('admin')) return true;
114116
return item.roles.includes(role);
115117
});
116118

0 commit comments

Comments
 (0)