summaryrefslogtreecommitdiff
path: root/src/server/api/endpoints/posts/context.ts
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2018-04-08 02:30:37 +0900
committersyuilo <syuilotan@yahoo.co.jp>2018-04-08 02:30:37 +0900
commita1b490afa756a71b9cef4afa424575bc223bc612 (patch)
tree06de4d839e17b1e08e0891542af7360c701a154a /src/server/api/endpoints/posts/context.ts
parentMerge pull request #1392 from syuilo/greenkeeper/element-ui-2.3.3 (diff)
downloadsharkey-a1b490afa756a71b9cef4afa424575bc223bc612.tar.gz
sharkey-a1b490afa756a71b9cef4afa424575bc223bc612.tar.bz2
sharkey-a1b490afa756a71b9cef4afa424575bc223bc612.zip
Post --> Note
Closes #1411
Diffstat (limited to 'src/server/api/endpoints/posts/context.ts')
-rw-r--r--src/server/api/endpoints/posts/context.ts63
1 files changed, 0 insertions, 63 deletions
diff --git a/src/server/api/endpoints/posts/context.ts b/src/server/api/endpoints/posts/context.ts
deleted file mode 100644
index 7abb045a49..0000000000
--- a/src/server/api/endpoints/posts/context.ts
+++ /dev/null
@@ -1,63 +0,0 @@
-/**
- * Module dependencies
- */
-import $ from 'cafy';
-import Post, { pack } from '../../../../models/post';
-
-/**
- * Show a context of a post
- *
- * @param {any} params
- * @param {any} user
- * @return {Promise<any>}
- */
-module.exports = (params, user) => new Promise(async (res, rej) => {
- // Get 'postId' parameter
- const [postId, postIdErr] = $(params.postId).id().$;
- if (postIdErr) return rej('invalid postId param');
-
- // Get 'limit' parameter
- const [limit = 10, limitErr] = $(params.limit).optional.number().range(1, 100).$;
- if (limitErr) return rej('invalid limit param');
-
- // Get 'offset' parameter
- const [offset = 0, offsetErr] = $(params.offset).optional.number().min(0).$;
- if (offsetErr) return rej('invalid offset param');
-
- // Lookup post
- const post = await Post.findOne({
- _id: postId
- });
-
- if (post === null) {
- return rej('post not found');
- }
-
- const context = [];
- let i = 0;
-
- async function get(id) {
- i++;
- const p = await Post.findOne({ _id: id });
-
- if (i > offset) {
- context.push(p);
- }
-
- if (context.length == limit) {
- return;
- }
-
- if (p.replyId) {
- await get(p.replyId);
- }
- }
-
- if (post.replyId) {
- await get(post.replyId);
- }
-
- // Serialize
- res(await Promise.all(context.map(async post =>
- await pack(post, user))));
-});