diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2018-04-08 17:16:11 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2018-04-08 17:16:11 +0900 |
| commit | 56da6f77c0325591bdf85d1188bef9b3267fd690 (patch) | |
| tree | 3d8588f6f7dc3e945958dd67053f9f6f87c10939 /src/server/api/endpoints/channels/posts.ts | |
| parent | oops (diff) | |
| download | sharkey-56da6f77c0325591bdf85d1188bef9b3267fd690.tar.gz sharkey-56da6f77c0325591bdf85d1188bef9b3267fd690.tar.bz2 sharkey-56da6f77c0325591bdf85d1188bef9b3267fd690.zip | |
oops
Diffstat (limited to 'src/server/api/endpoints/channels/posts.ts')
| -rw-r--r-- | src/server/api/endpoints/channels/posts.ts | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/src/server/api/endpoints/channels/posts.ts b/src/server/api/endpoints/channels/posts.ts deleted file mode 100644 index d636aa0d10..0000000000 --- a/src/server/api/endpoints/channels/posts.ts +++ /dev/null @@ -1,78 +0,0 @@ -/** - * Module dependencies - */ -import $ from 'cafy'; -import { default as Channel, IChannel } from '../../../../models/channel'; -import Note, { pack } from '../../../../models/note'; - -/** - * Show a notes of a channel - * - * @param {any} params - * @param {any} user - * @return {Promise<any>} - */ -module.exports = (params, user) => new Promise(async (res, rej) => { - // Get 'limit' parameter - const [limit = 1000, limitErr] = $(params.limit).optional.number().range(1, 1000).$; - if (limitErr) return rej('invalid limit param'); - - // Get 'sinceId' parameter - const [sinceId, sinceIdErr] = $(params.sinceId).optional.id().$; - if (sinceIdErr) return rej('invalid sinceId param'); - - // Get 'untilId' parameter - const [untilId, untilIdErr] = $(params.untilId).optional.id().$; - if (untilIdErr) return rej('invalid untilId param'); - - // Check if both of sinceId and untilId is specified - if (sinceId && untilId) { - return rej('cannot set sinceId and untilId'); - } - - // Get 'channelId' parameter - const [channelId, channelIdErr] = $(params.channelId).id().$; - if (channelIdErr) return rej('invalid channelId param'); - - // Fetch channel - const channel: IChannel = await Channel.findOne({ - _id: channelId - }); - - if (channel === null) { - return rej('channel not found'); - } - - //#region Construct query - const sort = { - _id: -1 - }; - - const query = { - channelId: channel._id - } as any; - - if (sinceId) { - sort._id = 1; - query._id = { - $gt: sinceId - }; - } else if (untilId) { - query._id = { - $lt: untilId - }; - } - //#endregion Construct query - - // Issue query - const notes = await Note - .find(query, { - limit: limit, - sort: sort - }); - - // Serialize - res(await Promise.all(notes.map(async (note) => - await pack(note, user) - ))); -}); |