diff options
| author | Aya Morisawa <AyaMorisawa4869@gmail.com> | 2019-01-27 16:41:30 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-01-27 16:41:30 +0900 |
| commit | 1af1638e2bf12198a74e077e4613b3dc5068ec8c (patch) | |
| tree | bb4d986d520586b0c9cd2c4157c32e7d3627f980 /src/server/api/common | |
| parent | Add multiline math syntax (diff) | |
| parent | Fix test (diff) | |
| download | misskey-1af1638e2bf12198a74e077e4613b3dc5068ec8c.tar.gz misskey-1af1638e2bf12198a74e077e4613b3dc5068ec8c.tar.bz2 misskey-1af1638e2bf12198a74e077e4613b3dc5068ec8c.zip | |
Merge branch 'develop' into math-block
Diffstat (limited to 'src/server/api/common')
| -rw-r--r-- | src/server/api/common/getters.ts | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/server/api/common/getters.ts b/src/server/api/common/getters.ts index 1fce58b20a..1cd054cab1 100644 --- a/src/server/api/common/getters.ts +++ b/src/server/api/common/getters.ts @@ -1,5 +1,6 @@ import * as mongo from 'mongodb'; import Note from "../../../models/note"; +import User, { isRemoteUser, isLocalUser } from "../../../models/user"; /** * Get valied note for API processing @@ -16,3 +17,44 @@ export async function getValiedNote(noteId: mongo.ObjectID) { return note; } + +/** + * Get user for API processing + */ +export async function getUser(userId: mongo.ObjectID) { + const user = await User.findOne({ + _id: userId + }); + + if (user == null) { + throw 'user not found'; + } + + return user; +} + +/** + * Get remote user for API processing + */ +export async function getRemoteUser(userId: mongo.ObjectID) { + const user = await getUser(userId); + + if (!isRemoteUser(user)) { + throw 'user is not a remote user'; + } + + return user; +} + +/** + * Get local user for API processing + */ +export async function getLocalUser(userId: mongo.ObjectID) { + const user = await getUser(userId); + + if (!isLocalUser(user)) { + throw 'user is not a local user'; + } + + return user; +} |