| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- 'use client';
- import { useSession } from 'next-auth/react';
- import { useRouter } from 'next/navigation';
- import { useEffect } from 'react';
- import { Button } from '@/components/ui/button';
- import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card';
- export default function Home() {
- const { data: session, status } = useSession();
- const router = useRouter();
- useEffect(() => {
- if (status === 'loading') return;
- if (session?.user) {
- // Redirigir según el rol del usuario
- switch (session.user.role) {
- case 'admin':
- router.push('/admin/dashboard');
- break;
- case 'teacher':
- router.push('/teacher/dashboard');
- break;
- case 'student':
- router.push('/student/dashboard');
- break;
- default:
- router.push('/auth/signin');
- }
- }
- }, [session, status, router]);
- if (status === 'loading') {
- return (
- <div className="min-h-screen flex items-center justify-center">
- <div className="text-lg">Cargando...</div>
- </div>
- );
- }
- if (!session) {
- return (
- <div className="min-h-screen flex items-center justify-center bg-gray-50">
- <Card className="w-full max-w-md">
- <CardHeader className="text-center">
- <CardTitle className="text-2xl font-bold">
- Sistema de Gestión de Asistencia
- </CardTitle>
- <CardDescription>
- Bienvenido al sistema de gestión de asistencia universitaria
- </CardDescription>
- </CardHeader>
- <CardContent className="text-center">
- <Button
- onClick={() => router.push('/auth/signin')}
- className="w-full"
- >
- Iniciar Sesión
- </Button>
- </CardContent>
- </Card>
- </div>
- );
- }
- return (
- <div className="min-h-screen flex items-center justify-center">
- <div className="text-lg">Redirigiendo...</div>
- </div>
- );
- }
|