mirror of
https://github.com/Drop-OSS/drop.git
synced 2025-11-13 16:22:39 +10:00
fix(invitations): fix expires requirement in the admin endpoint
This commit is contained in:
@ -8,18 +8,29 @@ export default defineEventHandler(async (h3) => {
|
||||
const isAdmin = body.isAdmin;
|
||||
const username = body.username;
|
||||
const email = body.email;
|
||||
const expires = body.expires;
|
||||
|
||||
if (!expires)
|
||||
throw createError({ statusCode: 400, statusMessage: "No expires field." });
|
||||
if (isAdmin !== undefined && typeof isAdmin !== "boolean")
|
||||
throw createError({
|
||||
statusCode: 400,
|
||||
statusMessage: "isAdmin must be a boolean",
|
||||
});
|
||||
|
||||
const expiresDate = new Date(expires);
|
||||
if (!(expiresDate instanceof Date && !isNaN(expiresDate.getTime())))
|
||||
throw createError({
|
||||
statusCode: 400,
|
||||
statusMessage: "Invalid expires date",
|
||||
});
|
||||
|
||||
const invitation = await prisma.invitation.create({
|
||||
data: {
|
||||
isAdmin: isAdmin,
|
||||
username: username,
|
||||
email: email,
|
||||
expires: expiresDate
|
||||
},
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user