forked from UKSOURCE/ipv6
Adding UI of FeedBack, Registration, Admin console
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
"use server";
|
||||
|
||||
import { updateSummitRequestStatus } from "@/lib/summit-requests";
|
||||
import type { SubmissionStatus } from "@/types/admin-submission";
|
||||
import { revalidatePath } from "next/cache";
|
||||
|
||||
const ADMIN_PATHS = ["/admin", "/admin/pending", "/admin/approved", "/admin/rejected"] as const;
|
||||
|
||||
const ALLOWED: SubmissionStatus[] = ["pending", "approved", "rejected"];
|
||||
|
||||
export async function setRequestStatusAction(publicId: string, status: SubmissionStatus) {
|
||||
if (!ALLOWED.includes(status)) {
|
||||
throw new Error("Invalid status");
|
||||
}
|
||||
if (!publicId || typeof publicId !== "string") {
|
||||
throw new Error("Invalid id");
|
||||
}
|
||||
|
||||
await updateSummitRequestStatus(publicId.trim(), status);
|
||||
|
||||
for (const p of ADMIN_PATHS) {
|
||||
revalidatePath(p);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user