"use client"; import { useState, useEffect } from "react"; import Link from "next/link"; import { Button, Input, Checkbox } from "@/components/ui"; import toast, { Toaster } from 'react-hot-toast'; import { saveAuth } from '@/lib/auth'; import dynamic from 'next/dynamic'; const ThemeToggle = dynamic(() => import('@/components/ThemeToggle'), { ssr: false }); export default function LoginPage() { const [isLoading, setIsLoading] = useState(false); const [isSuperAdmin, setIsSuperAdmin] = useState(false); const [subdomain, setSubdomain] = useState(''); const [formData, setFormData] = useState({ email: "", password: "", rememberMe: false, }); useEffect(() => { // Detectar se é dash (SUPERADMIN) ou agência if (typeof window !== 'undefined') { const hostname = window.location.hostname; const sub = hostname.split('.')[0]; setSubdomain(sub); setIsSuperAdmin(sub === 'dash'); } }, []); const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); if (!formData.email) { toast.error('Por favor, insira seu email'); return; } if (!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(formData.email)) { toast.error('Por favor, insira um email válido'); return; } if (!formData.password) { toast.error('Por favor, insira sua senha'); return; } setIsLoading(true); try { const response = await fetch('/api/auth/login', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ email: formData.email, password: formData.password, }), }); if (!response.ok) { const error = await response.json(); throw new Error(error.message || 'Credenciais inválidas'); } const data = await response.json(); localStorage.setItem('token', data.token); localStorage.setItem('user', JSON.stringify(data.user)); console.log('Login successful:', data.user); toast.success('Login realizado com sucesso! Redirecionando...'); setTimeout(() => { window.location.href = '/dashboard'; }, 1000); } catch (error: any) { toast.error(error.message || 'Erro ao fazer login. Verifique suas credenciais.'); setIsLoading(false); } }; return ( <>
{/* Lado Esquerdo - Formulário */}
{/* Logo mobile */}

{isSuperAdmin ? 'aggios' : subdomain}

{/* Theme Toggle */}
{/* Header */}

{isSuperAdmin ? 'Painel Administrativo' : 'Bem-vindo de volta'}

{isSuperAdmin ? 'Acesso exclusivo para administradores Aggios' : 'Entre com suas credenciais para acessar o painel' }

{/* Form */}
setFormData({ ...formData, email: e.target.value })} required /> setFormData({ ...formData, password: e.target.value })} required />
setFormData({ ...formData, rememberMe: e.target.checked })} /> Esqueceu a senha?
{/* Link para cadastro - apenas para agências */} {!isSuperAdmin && (

Ainda não tem conta?{' '} Cadastre sua agência

)}
{/* Lado Direito - Branding */}

{isSuperAdmin ? 'aggios' : subdomain}

{isSuperAdmin ? 'Gerencie todas as agências em um só lugar' : 'Gerencie seus clientes com eficiência' }

Seguro

Proteção de dados

Rápido

Performance otimizada

Colaborativo

Trabalho em equipe

Insights

Relatórios detalhados

); }