obsidian-visualiser/server/api/admin/jobs/[id].post.ts

27 lines
594 B
TypeScript

import { hasPermissions } from "#shared/auth.util";
export default defineEventHandler(async (e) => {
const session = await getUserSession(e);
if(!session.user || !hasPermissions(session.user.permissions, ['admin']))
{
setResponseStatus(e, 404);
return;
}
const id = getRouterParam(e, 'id');
if(!id)
{
setResponseStatus(e, 400);
return;
}
const result = await runTask(id);
if(!result.result)
{
setResponseStatus(e, 500);
throw result.error ?? new Error('Erreur inconnue');
}
return
});