diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2019-05-18 22:54:02 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2019-05-18 22:54:02 +0900 |
| commit | 9dbe12135d3c22597624ab549586c89a30555be8 (patch) | |
| tree | 08891c745132013c7dedb317e35352c6cd1cf034 /src/server/api/endpoints/users/groups | |
| parent | :art: (diff) | |
| download | misskey-9dbe12135d3c22597624ab549586c89a30555be8.tar.gz misskey-9dbe12135d3c22597624ab549586c89a30555be8.tar.bz2 misskey-9dbe12135d3c22597624ab549586c89a30555be8.zip | |
Fix bug
Diffstat (limited to 'src/server/api/endpoints/users/groups')
| -rw-r--r-- | src/server/api/endpoints/users/groups/show.ts | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/server/api/endpoints/users/groups/show.ts b/src/server/api/endpoints/users/groups/show.ts index 5f2c839881..4f8374a222 100644 --- a/src/server/api/endpoints/users/groups/show.ts +++ b/src/server/api/endpoints/users/groups/show.ts @@ -2,7 +2,7 @@ import $ from 'cafy'; import { ID } from '../../../../../misc/cafy-id'; import define from '../../../define'; import { ApiError } from '../../../error'; -import { UserGroups } from '../../../../../models'; +import { UserGroups, UserGroupJoinings } from '../../../../../models'; import { types, bool } from '../../../../../misc/schema'; export const meta = { @@ -42,12 +42,20 @@ export default define(meta, async (ps, me) => { // Fetch the group const userGroup = await UserGroups.findOne({ id: ps.groupId, - userId: me.id, }); if (userGroup == null) { throw new ApiError(meta.errors.noSuchGroup); } + const joining = await UserGroupJoinings.findOne({ + userId: me.id, + userGroupId: userGroup.id + }); + + if (joining == null && userGroup.userId !== me.id) { + throw new ApiError(meta.errors.noSuchGroup); + } + return await UserGroups.pack(userGroup); }); |