25 lines
823 B
TypeScript
25 lines
823 B
TypeScript
"use server";
|
|
|
|
import { requireStaff } from "@/lib/admin/guard";
|
|
import { prisma } from "@/lib/prisma";
|
|
import type { ActionResult } from "@/lib/safe-action-shared";
|
|
|
|
export async function cleanSwfFiles(): Promise<ActionResult<{ deleted: number; remaining: number }>> {
|
|
try {
|
|
await requireStaff();
|
|
return { ok: true, data: { deleted: 0, remaining: 0 } };
|
|
} catch {
|
|
return { ok: false, error: "Failed to clean SWF files" };
|
|
}
|
|
}
|
|
|
|
export async function deleteImportedFurni({ classname }: { classname: string }) {
|
|
await requireStaff();
|
|
try {
|
|
await prisma.itemsBase.deleteMany({ where: { itemName: classname } });
|
|
return { ok: true as const, data: { deletedFiles: [classname], errors: [] as string[] } };
|
|
} catch {
|
|
return { ok: false as const, error: `Failed to delete ${classname}` };
|
|
}
|
|
}
|