T.ME/BIBIL_0DAY
CasperSecurity


Server : Apache/2
System : Linux server-15-235-50-60 5.15.0-164-generic #174-Ubuntu SMP Fri Nov 14 20:25:16 UTC 2025 x86_64
User : gositeme ( 1004)
PHP Version : 8.2.29
Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Directory :  /home/gositeme/domains/lavocat.ca/private_html/src/pages/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/gositeme/domains/lavocat.ca/private_html/src/pages/test-dashboard.tsx
import { useSession } from 'next-auth/react';
import { useRouter } from 'next/router';
import { useEffect } from 'react';

export default function TestDashboard() {
  const { data: session, status } = useSession();
  const router = useRouter();

  useEffect(() => {
    console.log('TestDashboard - Status:', status);
    console.log('TestDashboard - Session:', session);
    console.log('TestDashboard - User Role:', session?.user?.role);
  }, [session, status]);

  if (status === 'loading') {
    return (
      <div className="min-h-screen flex items-center justify-center bg-gray-100">
        <div className="text-center">
          <div className="animate-spin rounded-full h-8 w-8 border-b-2 border-blue-600 mx-auto mb-4"></div>
          <p>Loading session...</p>
        </div>
      </div>
    );
  }

  if (!session) {
    return (
      <div className="min-h-screen flex items-center justify-center bg-gray-100">
        <div className="text-center">
          <h1 className="text-2xl font-bold mb-4">No Session</h1>
          <p className="mb-4">You are not authenticated.</p>
          <button
            onClick={() => router.push('/auth/login')}
            className="bg-blue-600 text-white px-4 py-2 rounded hover:bg-blue-700"
          >
            Sign In
          </button>
        </div>
      </div>
    );
  }

  return (
    <div className="min-h-screen bg-gray-100 p-8">
      <div className="max-w-4xl mx-auto">
        <h1 className="text-3xl font-bold mb-6">Dashboard Test Page</h1>
        
        <div className="bg-white rounded-lg shadow p-6 mb-6">
          <h2 className="text-xl font-semibold mb-4">Session Information</h2>
          <div className="grid grid-cols-1 md:grid-cols-2 gap-4">
            <div>
              <p><strong>Status:</strong> {status}</p>
              <p><strong>User Name:</strong> {session.user?.name}</p>
              <p><strong>User Email:</strong> {session.user?.email}</p>
              <p><strong>User Role:</strong> {session.user?.role}</p>
            </div>
            <div>
              <p><strong>Session Expires:</strong> {session.expires}</p>
              <p><strong>Current Path:</strong> {router.pathname}</p>
              <p><strong>Current URL:</strong> {router.asPath}</p>
            </div>
          </div>
        </div>

        <div className="bg-white rounded-lg shadow p-6 mb-6">
          <h2 className="text-xl font-semibold mb-4">Test Navigation</h2>
          <div className="grid grid-cols-2 md:grid-cols-4 gap-4">
            <button
              onClick={() => router.push('/dashboard')}
              className="bg-blue-600 text-white p-3 rounded hover:bg-blue-700"
            >
              Main Dashboard
            </button>
            <button
              onClick={() => router.push('/user/dashboard')}
              className="bg-green-600 text-white p-3 rounded hover:bg-green-700"
            >
              User Dashboard
            </button>
            <button
              onClick={() => router.push('/admin/dashboard')}
              className="bg-red-600 text-white p-3 rounded hover:bg-red-700"
            >
              Admin Dashboard
            </button>
            <button
              onClick={() => router.push('/lawyer/dashboard')}
              className="bg-purple-600 text-white p-3 rounded hover:bg-purple-700"
            >
              Lawyer Dashboard
            </button>
          </div>
        </div>

        <div className="bg-white rounded-lg shadow p-6">
          <h2 className="text-xl font-semibold mb-4">Raw Session Data</h2>
          <pre className="bg-gray-100 p-4 rounded text-sm overflow-auto max-h-64">
            {JSON.stringify(session, null, 2)}
          </pre>
        </div>
      </div>
    </div>
  );
} 

CasperSecurity Mini