From 4731c1cca32e6e64ecccab6139f4e39ab117f330 Mon Sep 17 00:00:00 2001 From: Francis Cao Date: Thu, 9 May 2024 11:55:54 -0700 Subject: [PATCH] add redis calls to website delete/reset --- src/queries/admin/website.ts | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/src/queries/admin/website.ts b/src/queries/admin/website.ts index 1f513bd4..d191aa65 100644 --- a/src/queries/admin/website.ts +++ b/src/queries/admin/website.ts @@ -1,4 +1,5 @@ import { Prisma, Website } from '@prisma/client'; +import redis from '@umami/redis-client'; import prisma from 'lib/prisma'; import { PageResult, PageParams } from 'lib/types'; import WebsiteFindManyArgs = Prisma.WebsiteFindManyArgs; @@ -122,6 +123,7 @@ export async function resetWebsite( websiteId: string, ): Promise<[Prisma.BatchPayload, Prisma.BatchPayload, Website]> { const { client, transaction } = prisma; + const cloudMode = !!process.env.cloudMode; return transaction([ client.eventData.deleteMany({ @@ -139,14 +141,20 @@ export async function resetWebsite( resetAt: new Date(), }, }), - ]); + ]).then(async data => { + if (cloudMode) { + await redis.client.set(`website:${websiteId}`, data[3]); + } + + return data; + }); } export async function deleteWebsite( websiteId: string, ): Promise<[Prisma.BatchPayload, Prisma.BatchPayload, Website]> { const { client, transaction } = prisma; - const cloudMode = process.env.CLOUD_MODE; + const cloudMode = !!process.env.CLOUD_MODE; return transaction([ client.eventData.deleteMany({ @@ -173,5 +181,11 @@ export async function deleteWebsite( : client.website.delete({ where: { id: websiteId }, }), - ]); + ]).then(async data => { + if (cloudMode) { + await redis.client.del(`website:${websiteId}`); + } + + return data; + }); }