Something went wrong. Try again.
a tool for shared writing and social publishing
Something went wrong. Try again.
TypeScript
12345678910111213141516171819202122232425262728293031323334"use server";
import { drizzle } from "drizzle-orm/node-postgres";import { sql } from "drizzle-orm";import { cookies } from "next/headers";import { pool } from "supabase/pool";
export async function addLeafletToHome(leaflet: string) { let auth_token = (await cookies()).get("auth_token")?.value; const client = await pool.connect(); const db = drizzle(client); await db.transaction(async (tx) => { if (auth_token) { await tx.execute(sql` WITH auth_token AS ( SELECT identities.id as identity_id FROM email_auth_tokens LEFT JOIN identities ON email_auth_tokens.identity = identities.id WHERE email_auth_tokens.id = ${auth_token} AND email_auth_tokens.confirmed = true AND identities.id IS NOT NULL ) INSERT INTO permission_token_on_homepage (token, identity) SELECT ${leaflet}, identity_id FROM auth_token `); }
return; }); client.release(); return;}