Files
litlyx/dashboard/server/api/user/set_active_project.ts
2024-06-01 15:27:40 +02:00

23 lines
634 B
TypeScript

import { ProjectModel } from "@schema/ProjectSchema";
import { UserSettingsModel } from "@schema/UserSettings";
export default defineEventHandler(async event => {
if (!event.context) return;
const userData = getRequestUser(event);
if (!userData?.logged) return;
const { project_id } = getQuery(event);
const hasAccess = await ProjectModel.exists({ owner: userData.id, _id: project_id });
if (!hasAccess) return setResponseStatus(event, 400, 'No access to project');
await UserSettingsModel.updateOne({ user_id: userData.id }, { active_project_id: project_id }, { upsert: true });
return;
});