"use client"; import React from 'react'; import { useRouter } from 'next/router'; // For Pages Router import { useAuth } from '@/context/AuthContext'; import IndividualClientPage from '@/components/IndividualClientPage'; import LoginPage from '@/components/LoginPage'; import { UserRoles } from '@/types'; import {Button} from '@/components/ui/button'; const ClientDetailPage: React.FC = () => { const router = useRouter(); const { clientId } = router.query; const { user, loading, token, hasPermission, logout } = useAuth(); // Call useAuth once here if (loading) { return
Loading Authentication...
; } if (!user || !token || !hasPermission(UserRoles.MOD)) { // Redirect to login or show access denied if not authenticated or authorized return (

Radio App Admin

{!user ? ( ) : (
You do not have permission to view this page. Your role: {user.role}. Required: {UserRoles.MOD}.
)}
); } // Ensure clientId is a string before passing const clientIdentifier = Array.isArray(clientId) ? clientId[0] : clientId; if (!clientIdentifier) { return
Client ID not found in URL.
; } return (

Radio App Admin

Logged in as: {user.username} ({user.role}) {/* Use the destructured logout */}
); }; export default ClientDetailPage;