From cf3112c7c012922306c6591f5f8e1a5b45fbff1b Mon Sep 17 00:00:00 2001 From: syuilo <syuilotan@yahoo.co.jp> Date: Fri, 4 May 2018 16:48:18 +0900 Subject: [PATCH] :v: --- src/models/drive-file.ts | 1 + src/server/file/assets/cache-expired.png | Bin 0 -> 15025 bytes src/server/file/send-drive-file.ts | 6 +++++- 3 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 src/server/file/assets/cache-expired.png diff --git a/src/models/drive-file.ts b/src/models/drive-file.ts index 183cc72ee8..718e8d0dc6 100644 --- a/src/models/drive-file.ts +++ b/src/models/drive-file.ts @@ -30,6 +30,7 @@ export type IMetadata = { comment: string; uri: string; deletedAt?: Date; + isExpired?: boolean; }; export type IDriveFile = { diff --git a/src/server/file/assets/cache-expired.png b/src/server/file/assets/cache-expired.png new file mode 100644 index 0000000000000000000000000000000000000000..ea681af0a039b389c921483d9183fd2f7fad6f27 GIT binary patch literal 15025 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� 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 literal 0 HcmV?d00001 diff --git a/src/server/file/send-drive-file.ts b/src/server/file/send-drive-file.ts index c6f368b418..123f5440e2 100644 --- a/src/server/file/send-drive-file.ts +++ b/src/server/file/send-drive-file.ts @@ -31,7 +31,11 @@ export default async function(ctx: Koa.Context) { if (file.metadata.deletedAt) { ctx.status = 410; - await send(ctx, `${__dirname}/assets/tombstone.png`); + if (file.metadata.isExpired) { + await send(ctx, `${__dirname}/assets/cache-expired.png`); + } else { + await send(ctx, `${__dirname}/assets/tombstone.png`); + } return; }