diff --git a/src/app/actions/auth.ts b/src/app/actions/auth.ts index e8eb315..f6b7e38 100644 --- a/src/app/actions/auth.ts +++ b/src/app/actions/auth.ts @@ -30,7 +30,7 @@ export async function login(prevState: any, formData: FormData) { path: "/", httpOnly: true, sameSite: "lax", - secure: false, // Permitir en HTTP (No Seguro) para bypass + secure: true, // Permitir en HTTP (No Seguro) para bypass maxAge: 60 * 60 * 24 * 7, }); console.log('>>> MODO EMERGENCIA: Cookie guardada, redirigiendo a /dashboard'); @@ -51,14 +51,20 @@ export async function login(prevState: any, formData: FormData) { const session = await account.createEmailPasswordSession(email, password); const cookieStore = await cookies(); + + if (!session.secret) { + console.error('>>> LOGIN ERROR: No se recibió secret de la sesión de Appwrite'); + return { error: 'Error interno: La sesión no generó un secreto válido.' }; + } + cookieStore.set(COOKIE_NAME, session.secret, { path: "/", httpOnly: true, sameSite: "lax", - secure: false, // Permitir en HTTP (No Seguro) + secure: true, // Siempre usar Secure en HTTPS maxAge: 60 * 60 * 24 * 7, }); - console.log('>>> LOGIN APPWRITE: Sesión creada exitosamente'); + console.log('>>> LOGIN APPWRITE: Sesión creada exitosamente. Cooke set:', COOKIE_NAME); } catch (error: any) { console.error('>>> LOGIN ERROR:', error.message); diff --git a/src/lib/appwrite.server.ts b/src/lib/appwrite.server.ts index 8c239a4..53ec58d 100644 --- a/src/lib/appwrite.server.ts +++ b/src/lib/appwrite.server.ts @@ -69,12 +69,15 @@ export async function getLoggedInUser() { const sessionClient = await createSessionClient(); if (!sessionClient) { + console.log("getLoggedInUser: No se encontró cookie de sesión o cliente inválido."); return null; } - return await sessionClient.account.get(); - } catch (error) { - console.error("Sesión inválida o expirada:", error); + const user = await sessionClient.account.get(); + console.log("getLoggedInUser: Sesión validada para usuario:", user.email); + return user; + } catch (error: any) { + console.error("getLoggedInUser: Error al validar sesión:", error.message || error); return null; } }