summaryrefslogtreecommitdiff
path: root/src/server/api/endpoints/users/groups/joined.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/api/endpoints/users/groups/joined.ts')
-rw-r--r--src/server/api/endpoints/users/groups/joined.ts6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/server/api/endpoints/users/groups/joined.ts b/src/server/api/endpoints/users/groups/joined.ts
index 14561fce05..853a2510de 100644
--- a/src/server/api/endpoints/users/groups/joined.ts
+++ b/src/server/api/endpoints/users/groups/joined.ts
@@ -1,6 +1,7 @@
import define from '../../../define';
import { UserGroups, UserGroupJoinings } from '../../../../../models';
import { types, bool } from '../../../../../misc/schema';
+import { Not, In } from 'typeorm';
export const meta = {
desc: {
@@ -25,8 +26,13 @@ export const meta = {
};
export default define(meta, async (ps, me) => {
+ const ownedGroups = await UserGroups.find({
+ userId: me.id,
+ });
+
const joinings = await UserGroupJoinings.find({
userId: me.id,
+ userGroupId: Not(In(ownedGroups.map(x => x.id)))
});
return await Promise.all(joinings.map(x => UserGroups.pack(x.userGroupId)));