Files
erika/app/admin/upload/actions.ts
T

20 lines
612 B
TypeScript

"use server";
import { requireAdmin } from "@/lib/auth";
import { publishVideoJob } from "@/lib/video-platforms";
import { revalidatePath } from "next/cache";
export async function createVideoUpload(formData: FormData) {
const discordId = await requireAdmin();
const { saveVideoUpload } = await import("@/lib/video-upload-storage");
const id = await saveVideoUpload(formData, discordId);
revalidatePath("/admin/upload");
return { id };
}
export async function retryVideoJob(jobId: string) {
await requireAdmin();
await publishVideoJob(jobId).catch(() => undefined);
revalidatePath("/admin/upload");
}