From cf3112c7c012922306c6591f5f8e1a5b45fbff1b Mon Sep 17 00:00:00 2001 From: syuilo 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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 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; }