diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2021-08-21 12:48:50 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2021-08-21 12:48:50 +0900 |
| commit | a53e1e4ec33575de0ff79fb0ec85833e3d6e22cd (patch) | |
| tree | db1563b6b3e25aaafb1877fd11032940fb4e74ce /src/queue | |
| parent | enhance(server): Use job queue for account delete (#7668) (diff) | |
| download | sharkey-a53e1e4ec33575de0ff79fb0ec85833e3d6e22cd.tar.gz sharkey-a53e1e4ec33575de0ff79fb0ec85833e3d6e22cd.tar.bz2 sharkey-a53e1e4ec33575de0ff79fb0ec85833e3d6e22cd.zip | |
enhance: Improve account deletion experience
Diffstat (limited to 'src/queue')
| -rw-r--r-- | src/queue/processors/db/delete-account.ts | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/queue/processors/db/delete-account.ts b/src/queue/processors/db/delete-account.ts index 95614b61aa..65327754c2 100644 --- a/src/queue/processors/db/delete-account.ts +++ b/src/queue/processors/db/delete-account.ts @@ -1,11 +1,12 @@ import * as Bull from 'bull'; import { queueLogger } from '../../logger'; -import { DriveFiles, Notes, Users } from '@/models/index'; +import { DriveFiles, Notes, UserProfiles, Users } from '@/models/index'; import { DbUserJobData } from '@/queue/types'; import { Note } from '@/models/entities/note'; import { DriveFile } from '@/models/entities/drive-file'; import { MoreThan } from 'typeorm'; import { deleteFileSync } from '@/services/drive/delete-file'; +import { sendEmail } from '@/services/send-email'; const logger = queueLogger.createSubLogger('delete-account'); @@ -73,6 +74,15 @@ export async function deleteAccount(job: Bull.Job<DbUserJobData>): Promise<strin logger.succ(`All of files deleted`); } + { // Send email notification + const profile = await UserProfiles.findOneOrFail(user.id); + if (profile.email && profile.emailVerified) { + sendEmail(profile.email, 'Account deleted', + `Your account has been deleted.`, + `Your account has been deleted.`); + } + } + await Users.delete(job.data.user.id); return 'Account deleted'; |