misskey/src/server/api/endpoints/admin/delete-all-files-of-a-user.ts

38 lines
805 B
TypeScript
Raw Normal View History

2019-05-15 11:41:01 +00:00
import $ from 'cafy';
import define from '../../define';
2019-05-27 07:54:47 +00:00
import { deleteFile } from '../../../../services/drive/delete-file';
2019-05-15 11:41:01 +00:00
import { DriveFiles } from '../../../../models';
import { ID } from '../../../../misc/cafy-id';
export const meta = {
desc: {
'ja-JP': '対象のユーザーのファイルを全て削除します。',
'en-US': 'Delete all files to specified user.'
},
2019-05-15 11:41:01 +00:00
tags: ['admin'],
2020-02-15 12:33:32 +00:00
requireCredential: true as const,
2019-05-15 11:41:01 +00:00
requireModerator: true,
params: {
userId: {
validator: $.type(ID),
desc: {
'ja-JP': '対象のユーザーID',
'en-US': 'The user ID which you want to suspend'
}
},
}
};
export default define(meta, async (ps, me) => {
const files = await DriveFiles.find({
userId: ps.userId
});
for (const file of files) {
2019-05-27 07:54:47 +00:00
deleteFile(file);
2019-05-15 11:41:01 +00:00
}
});