From d6a1467a317ee83a8df706a2c13463a8f233c359 Mon Sep 17 00:00:00 2001 From: Allan Carr Date: Thu, 20 Jul 2023 16:41:17 -0700 Subject: [PATCH] IO-2221 Clean up Thumbnails on delete --- jobs/jobsDeleteMedia.ts | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/jobs/jobsDeleteMedia.ts b/jobs/jobsDeleteMedia.ts index b371145..802e7d4 100644 --- a/jobs/jobsDeleteMedia.ts +++ b/jobs/jobsDeleteMedia.ts @@ -5,7 +5,11 @@ import { logger } from "../server"; import MediaFile from "../util/interfaces/MediaFile"; import ListableChecker from "../util/listableChecker"; import { PathToRoBillsFolder, PathToRoFolder } from "../util/pathGenerators"; -import { BillsRelativeFilePath, JobRelativeFilePath } from "../util/serverInit"; +import { + BillsRelativeFilePath, + FolderPaths, + JobRelativeFilePath, +} from "../util/serverInit"; export async function JobsDeleteMedia(req: Request, res: Response) { const jobid: string = (req.body.jobid || "").trim(); @@ -32,6 +36,14 @@ export async function JobsDeleteMedia(req: Request, res: Response) { if (files.includes(path.parse(path.basename(file.name)).base)) { // File is in the set of requested files. await fs.remove(JobRelativeFilePath(jobid, file.name)); + await fs.remove( + path.join( + FolderPaths.Jobs, + jobid, + FolderPaths.ThumbsSubDir, + file.name + ) + ); } }) ); @@ -40,6 +52,15 @@ export async function JobsDeleteMedia(req: Request, res: Response) { if (files.includes(path.parse(path.basename(file.name)).base)) { // File is in the set of requested files. await fs.remove(BillsRelativeFilePath(jobid, file.name)); + await fs.remove( + path.join( + FolderPaths.Jobs, + jobid, + FolderPaths.BillsSubDir, + FolderPaths.ThumbsSubDir, + file.name + ) + ); } }) );