diff --git a/check_prisma.js b/check_prisma.js new file mode 100644 index 0000000..3217a61 --- /dev/null +++ b/check_prisma.js @@ -0,0 +1,15 @@ +const { PrismaClient } = require('@prisma/client'); +const prisma = new PrismaClient(); + +async function main() { + try { + const count = await prisma.user.count(); + console.log('User count:', count); + } catch (e) { + console.error('Error counting users:', e); + } finally { + await prisma.$disconnect(); + } +} + +main(); diff --git a/src/lib/auth.ts b/src/lib/auth.ts index d1bf329..68864f7 100644 --- a/src/lib/auth.ts +++ b/src/lib/auth.ts @@ -5,6 +5,9 @@ import { prisma } from "@/lib/prisma"; export const authOptions: NextAuthOptions = { adapter: PrismaAdapter(prisma), + session: { + strategy: "database", + }, providers: [ GoogleProvider({ clientId: process.env.GOOGLE_CLIENT_ID!, @@ -12,17 +15,10 @@ export const authOptions: NextAuthOptions = { }), ], callbacks: { - async jwt({ token, account }) { - if (account) { - token.accessToken = account.access_token; - } - return token; - }, - async session({ session, user, token }) { - if (session?.user) { - session.user.id = user?.id || (token?.sub as string); - const dbUser = await prisma.user.findUnique({ where: { id: session.user.id } }); - session.user.role = dbUser?.role || 'EMPLOYEE'; + async session({ session, user }) { + if (session?.user && user) { + session.user.id = user.id; + session.user.role = (user as any).role || 'EMPLOYEE'; } return session; }, @@ -38,7 +34,4 @@ export const authOptions: NextAuthOptions = { } }, }, - pages: { - signIn: "/auth/signin", - }, };