mirror of
https://github.com/Litlyx/litlyx
synced 2025-12-11 16:28:37 +01:00
new selfhosted version
This commit is contained in:
@@ -1,23 +1,17 @@
|
||||
import { ProjectModel, TProject } from "@schema/project/ProjectSchema";
|
||||
import { TTeamMember, TeamMemberModel } from "@schema/TeamMemberSchema";
|
||||
import { TeamMemberModel } from "~/shared/schema/TeamMemberSchema";
|
||||
|
||||
export default defineEventHandler(async event => {
|
||||
|
||||
const userData = getRequestUser(event);
|
||||
if (!userData?.logged) return [];
|
||||
const ctx = await getRequestContext(event);
|
||||
const { user_id, user_email } = ctx;
|
||||
|
||||
const members = await TeamMemberModel.find({
|
||||
$or: [{ user_id }, { email: user_email }],
|
||||
pending: false
|
||||
});
|
||||
|
||||
const members = await TeamMemberModel.find({ user_id: userData.id, pending: false });
|
||||
|
||||
const projects: TProject[] = [];
|
||||
|
||||
for (const member of members) {
|
||||
const project = await ProjectModel.findById(member.project_id);
|
||||
if (!project) continue;
|
||||
projects.push(project.toJSON());
|
||||
}
|
||||
|
||||
return projects;
|
||||
|
||||
const projects = await ProjectModel.find({ _id: { $in: members.map(e => e.project_id) } });
|
||||
return projects.map(e => e.toJSON()) as TProject[];
|
||||
|
||||
});
|
||||
Reference in New Issue
Block a user