diff --git a/components/sidebar.tsx b/components/sidebar.tsx index cdfbfe5c..d57c1b14 100644 --- a/components/sidebar.tsx +++ b/components/sidebar.tsx @@ -45,27 +45,10 @@ interface MenuItem { } export function Sidebar({ isOpen, onClose }: SidebarProps) { - const { data: session, status, update } = useSession(); + const { data: session, status } = useSession(); const router = useRouter(); const pathname = usePathname(); - // Debug session data - console.log('Session state:', { - status, - hasSession: !!session, - user: session?.user, - roles: session?.user?.role, - rawRoles: session?.user?.role, - pathname - }); - - // Function to manually refresh the session from the server - const refreshSession = async () => { - console.log('Manually refreshing session...'); - await update(); // Force update the session - console.log('Session refreshed!'); - }; - // Show loading state while session is being checked if (status === 'loading') { return null; @@ -85,7 +68,6 @@ export function Sidebar({ isOpen, onClose }: SidebarProps) { // If no session or user roles, deny access if (!session?.user?.role) { - console.log('No user roles found in session'); return false; } @@ -108,15 +90,6 @@ export function Sidebar({ isOpen, onClose }: SidebarProps) { }) .filter(role => role !== ''); // Remove empty strings - // For debugging only - if (process.env.NODE_ENV === 'development') { - console.log(`Role check for: ${JSON.stringify(requiredRole)}`, { - userRoles, - ignoredRoles, - cleanUserRoles, - }); - } - // Check against array of required roles if (Array.isArray(requiredRole)) { const cleanRequiredRoles = requiredRole @@ -124,17 +97,13 @@ export function Sidebar({ isOpen, onClose }: SidebarProps) { .map(role => typeof role === 'string' ? role.toLowerCase() : '') .filter(role => role !== ''); - const hasRequiredRole = cleanRequiredRoles.some(role => cleanUserRoles.includes(role)); - console.log(`Array role check: Required ${JSON.stringify(cleanRequiredRoles)}, Has any: ${hasRequiredRole}`); - return hasRequiredRole; + return cleanRequiredRoles.some(role => cleanUserRoles.includes(role)); } // Check against single required role if (typeof requiredRole === 'string') { const cleanRequiredRole = requiredRole.toLowerCase(); - const hasRequiredRole = cleanUserRoles.includes(cleanRequiredRole); - console.log(`Single role check: Required "${cleanRequiredRole}", Has: ${hasRequiredRole}`); - return hasRequiredRole; + return cleanUserRoles.includes(cleanRequiredRole); } return false; @@ -228,7 +197,6 @@ export function Sidebar({ isOpen, onClose }: SidebarProps) { ...baseMenuItems, ...roleSpecificItems.filter(item => { const isVisible = hasRole(item.requiredRole); - console.log(`Item ${item.title} with requiredRole ${JSON.stringify(item.requiredRole)} is ${isVisible ? 'visible' : 'hidden'}`); return isVisible; }) ]; @@ -277,14 +245,6 @@ export function Sidebar({ isOpen, onClose }: SidebarProps) { height={16.5} className="text-black" /> - {/* Add session refresh button */} - {/* Menu Items */} @@ -303,63 +263,6 @@ export function Sidebar({ isOpen, onClose }: SidebarProps) { {item.title} ))} - - {/* Debug display only in development */} - {process.env.NODE_ENV === 'development' && ( -
Debug Info:
-User: {session?.user?.name}
-Email: {session?.user?.email}
- -
- {JSON.stringify(session?.user?.role, null, 2)}
-
-
- {JSON.stringify(
- Array.isArray(session?.user?.role)
- ? session.user.role
- .filter(role => typeof role === 'string')
- .filter(role => !['offline_access', 'uma_authorization', 'default-roles-cercle'].includes(role))
- .map(role =>
- role
- .replace(/^\//, '')
- .replace(/^ROLE_/i, '')
- .replace(/^default-roles-[^/]*\//i, '')
- .toLowerCase()
- )
- : []
- , null, 2)}
-
- Item: {item.title}
-Required Role: {JSON.stringify(item.requiredRole)}
-Visible: {isVisible ? '✅' : '❌'}
-