Update delete-file.ts
This commit is contained in:
		
							parent
							
								
									0709cac97f
								
							
						
					
					
						commit
						33ad190524
					
				
					 1 changed files with 8 additions and 2 deletions
				
			
		|  | @ -1,5 +1,5 @@ | ||||||
| import * as Minio from 'minio'; | import * as Minio from 'minio'; | ||||||
| import DriveFile, { DriveFileChunk, IDriveFile } from '../../models/drive-file'; | import DriveFile, { DriveFileChunk, IDriveFile, getDriveFileBucket } from '../../models/drive-file'; | ||||||
| import DriveFileThumbnail, { DriveFileThumbnailChunk } from '../../models/drive-file-thumbnail'; | import DriveFileThumbnail, { DriveFileThumbnailChunk } from '../../models/drive-file-thumbnail'; | ||||||
| import config from '../../config'; | import config from '../../config'; | ||||||
| import driveChart from '../../services/chart/drive'; | import driveChart from '../../services/chart/drive'; | ||||||
|  | @ -7,7 +7,7 @@ import perUserDriveChart from '../../services/chart/per-user-drive'; | ||||||
| import instanceChart from '../../services/chart/instance'; | import instanceChart from '../../services/chart/instance'; | ||||||
| import DriveFileWebpublic, { DriveFileWebpublicChunk } from '../../models/drive-file-webpublic'; | import DriveFileWebpublic, { DriveFileWebpublicChunk } from '../../models/drive-file-webpublic'; | ||||||
| import Instance from '../../models/instance'; | import Instance from '../../models/instance'; | ||||||
| import { isRemoteUser } from '../../models/user'; | import User, { isRemoteUser } from '../../models/user'; | ||||||
| 
 | 
 | ||||||
| export default async function(file: IDriveFile, isExpired = false) { | export default async function(file: IDriveFile, isExpired = false) { | ||||||
| 	if (file.metadata.storage == 'minio') { | 	if (file.metadata.storage == 'minio') { | ||||||
|  | @ -56,6 +56,12 @@ export default async function(file: IDriveFile, isExpired = false) { | ||||||
| 		$set: set | 		$set: set | ||||||
| 	}); | 	}); | ||||||
| 
 | 
 | ||||||
|  | 	await Promise.all(['avatarId', 'bannerId', 'wallpaperId'] | ||||||
|  | 		.map(target => User.find({ [target]: file._id }) | ||||||
|  | 			.then(x => Promise.all(x.map(x => User.update({ _id: x._id }, { | ||||||
|  | 					$unset: { [target]: file._id } | ||||||
|  | 				})))))); | ||||||
|  | 
 | ||||||
| 	//#region サムネイルもあれば削除
 | 	//#region サムネイルもあれば削除
 | ||||||
| 	const thumbnail = await DriveFileThumbnail.findOne({ | 	const thumbnail = await DriveFileThumbnail.findOne({ | ||||||
| 		'metadata.originalId': file._id | 		'metadata.originalId': file._id | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue