{post.title}
{post.baseUrl}
{post.description}
import { CardContent, Card } from '@/components/ui/card'; import { db } from '@/server/db'; import { sessions, storedContent, userStoredContent, users, } from '@/server/db/schema'; import { eq, inArray } from 'drizzle-orm'; import { cookies, headers } from 'next/headers'; import { redirect } from 'next/navigation'; import Image from 'next/image'; import QueryAI from '@/components/QueryAI'; import MessagePoster from './MessagePoster'; export const runtime = 'edge'; export default async function Home() { const token = cookies().get('next-auth.session-token')?.value ?? cookies().get('__Secure-authjs.session-token')?.value ?? cookies().get('authjs.session-token')?.value ?? headers().get('Authorization')?.replace('Bearer ', ''); if (!token) { return redirect('/api/auth/signin'); } const session = await db .select() .from(sessions) .where(eq(sessions.sessionToken, token!)); if (!session || session.length === 0) { return redirect('/api/auth/signin'); } const userContent = await db .select() .from(userStoredContent) .where(eq(userStoredContent.userId, session[0].userId)); const userData = await db .select() .from(users) .where(eq(users.id, session[0].userId)) .limit(1); if (!userData || userData.length === 0) { return redirect('/api/auth/signin'); } const listOfContent = userContent.map((content) => content.contentId).length > 0 ? userContent.map((content) => content.contentId) : [1]; const posts = await db .select() .from(storedContent) .where(inArray(storedContent.id, listOfContent)); return (
{post.baseUrl}
{post.description}