From fec3c70886c13a267814e7eba5d2dd9aa807687b Mon Sep 17 00:00:00 2001 From: syuilo Date: Sat, 24 Apr 2021 22:38:24 +0900 Subject: Gallery (#7194) * wip * wip * wip * wip * wip * wip * wip * wip * wip * wip * wip --- src/server/api/endpoints/gallery/featured.ts | 29 ++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 src/server/api/endpoints/gallery/featured.ts (limited to 'src/server/api/endpoints/gallery/featured.ts') diff --git a/src/server/api/endpoints/gallery/featured.ts b/src/server/api/endpoints/gallery/featured.ts new file mode 100644 index 0000000000..d09000cc71 --- /dev/null +++ b/src/server/api/endpoints/gallery/featured.ts @@ -0,0 +1,29 @@ +import define from '../../define'; +import { GalleryPosts } from '../../../../models'; + +export const meta = { + tags: ['gallery'], + + requireCredential: false as const, + + res: { + type: 'array' as const, + optional: false as const, nullable: false as const, + items: { + type: 'object' as const, + optional: false as const, nullable: false as const, + ref: 'GalleryPost', + } + }, +}; + +export default define(meta, async (ps, me) => { + const query = GalleryPosts.createQueryBuilder('post') + .andWhere('post.createdAt > :date', { date: new Date(Date.now() - (1000 * 60 * 60 * 24 * 3)) }) + .andWhere('post.likedCount > 0') + .orderBy('post.likedCount', 'DESC'); + + const posts = await query.take(10).getMany(); + + return await GalleryPosts.packMany(posts, me); +}); -- cgit v1.2.3-freya