From 35f1ef8f8872800256cb7ba49fccfd69cb3dfa74 Mon Sep 17 00:00:00 2001 From: "Kalle (Sendou)" <38327916+Sendouc@users.noreply.github.com> Date: Sat, 3 Apr 2021 10:34:23 +0300 Subject: [PATCH] events bot api --- app/calendar/service.ts | 3 ++- pages/api/bot/events.ts | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 pages/api/bot/events.ts diff --git a/app/calendar/service.ts b/app/calendar/service.ts index 58e402778..39eb001fe 100644 --- a/app/calendar/service.ts +++ b/app/calendar/service.ts @@ -10,6 +10,7 @@ import { TAGS } from "./utils"; export type Events = Prisma.PromiseReturnType; const events = async () => { + const dateSixHoursAgo = new Date(new Date().getTime() - 21600000); const result = await prisma.calendarEvent.findMany({ select: { date: true, @@ -24,7 +25,7 @@ const events = async () => { select: userBasicSelection, }, }, - where: { date: { gt: new Date() } }, + where: { date: { gt: dateSixHoursAgo } }, orderBy: { date: "asc" }, }); diff --git a/pages/api/bot/events.ts b/pages/api/bot/events.ts new file mode 100644 index 000000000..acc25211b --- /dev/null +++ b/pages/api/bot/events.ts @@ -0,0 +1,36 @@ +import { NextApiRequest, NextApiResponse } from "next"; +import prisma from "prisma/client"; + +const botEventsHandler = async (req: NextApiRequest, res: NextApiResponse) => { + if (req.method !== "GET") { + return res.status(405).end(); + } + + const dateSixHoursAgo = new Date(new Date().getTime() - 21600000); + + const events = await prisma.calendarEvent.findMany({ + select: { + date: true, + description: true, + discordInviteUrl: true, + eventUrl: true, + format: true, + id: true, + name: true, + tags: true, + poster: { + select: { + discordId: true, + username: true, + discriminator: true, + }, + }, + }, + where: { date: { gt: dateSixHoursAgo } }, + orderBy: { date: "asc" }, + }); + + res.status(200).json(events); +}; + +export default botEventsHandler;