summaryrefslogtreecommitdiff
path: root/src/server/api/endpoints/admin
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2019-05-14 21:08:35 +0900
committersyuilo <syuilotan@yahoo.co.jp>2019-05-14 21:08:35 +0900
commitb779ff08e0aeb95b879972b7dc26bc81a81e627c (patch)
tree9b2f7955098fab31d54f921fa92942aaff18f1d8 /src/server/api/endpoints/admin
parent:art: (diff)
downloadsharkey-b779ff08e0aeb95b879972b7dc26bc81a81e627c.tar.gz
sharkey-b779ff08e0aeb95b879972b7dc26bc81a81e627c.tar.bz2
sharkey-b779ff08e0aeb95b879972b7dc26bc81a81e627c.zip
特定のインスタンスのファイルをすべて削除できるように
Diffstat (limited to 'src/server/api/endpoints/admin')
-rw-r--r--src/server/api/endpoints/admin/federation/delete-all-files.ts27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/server/api/endpoints/admin/federation/delete-all-files.ts b/src/server/api/endpoints/admin/federation/delete-all-files.ts
new file mode 100644
index 0000000000..befb362264
--- /dev/null
+++ b/src/server/api/endpoints/admin/federation/delete-all-files.ts
@@ -0,0 +1,27 @@
+import $ from 'cafy';
+import define from '../../../define';
+import del from '../../../../../services/drive/delete-file';
+import { DriveFiles } from '../../../../../models';
+
+export const meta = {
+ tags: ['admin'],
+
+ requireCredential: true,
+ requireModerator: true,
+
+ params: {
+ host: {
+ validator: $.str
+ }
+ }
+};
+
+export default define(meta, async (ps, me) => {
+ const files = await DriveFiles.find({
+ userHost: ps.host
+ });
+
+ for (const file of files) {
+ del(file);
+ }
+});