diff options
| author | MeiMei <30769358+mei23@users.noreply.github.com> | 2018-11-26 04:25:48 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2018-11-26 04:25:48 +0900 |
| commit | bcb04924ff08cc90d046ec7064fa0b89cbf9219e (patch) | |
| tree | 8ba56067c7be24ca06a833e84f052309773da831 /src/services/drive/delete-file.ts | |
| parent | :art: (diff) | |
| download | sharkey-bcb04924ff08cc90d046ec7064fa0b89cbf9219e.tar.gz sharkey-bcb04924ff08cc90d046ec7064fa0b89cbf9219e.tar.bz2 sharkey-bcb04924ff08cc90d046ec7064fa0b89cbf9219e.zip | |
Image for web publish (#3402)
* Image for Web
* Add comment
* Make main to original
Diffstat (limited to 'src/services/drive/delete-file.ts')
| -rw-r--r-- | src/services/drive/delete-file.ts | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/services/drive/delete-file.ts b/src/services/drive/delete-file.ts index 3e2f42003b..92d0010bcf 100644 --- a/src/services/drive/delete-file.ts +++ b/src/services/drive/delete-file.ts @@ -4,6 +4,7 @@ import DriveFileThumbnail, { DriveFileThumbnailChunk } from '../../models/drive- import config from '../../config'; import driveChart from '../../chart/drive'; import perUserDriveChart from '../../chart/per-user-drive'; +import DriveFileWebpublic, { DriveFileWebpublicChunk } from '../../models/drive-file-webpublic'; export default async function(file: IDriveFile, isExpired = false) { if (file.metadata.storage == 'minio') { @@ -20,6 +21,11 @@ export default async function(file: IDriveFile, isExpired = false) { const thumbnailObj = file.metadata.storageProps.thumbnailKey ? file.metadata.storageProps.thumbnailKey : `${config.drive.prefix}/${file.metadata.storageProps.id}-thumbnail`; await minio.removeObject(config.drive.bucket, thumbnailObj); } + + if (file.metadata.webpublicUrl) { + const webpublicObj = file.metadata.storageProps.webpublicKey ? file.metadata.storageProps.webpublicKey : `${config.drive.prefix}/${file.metadata.storageProps.id}-original`; + await minio.removeObject(config.drive.bucket, webpublicObj); + } } // チャンクをすべて削除 @@ -48,6 +54,20 @@ export default async function(file: IDriveFile, isExpired = false) { } //#endregion + //#region Web公開用もあれば削除 + const webpublic = await DriveFileWebpublic.findOne({ + 'metadata.originalId': file._id + }); + + if (webpublic) { + await DriveFileWebpublicChunk.remove({ + files_id: webpublic._id + }); + + await DriveFileWebpublic.remove({ _id: webpublic._id }); + } + //#endregion + // 統計を更新 driveChart.update(file, false); perUserDriveChart.update(file, false); |