MCPcopy Create free account
hub / github.com/Stormix/eghata / destroy

Method destroy

apps/api/app/Controllers/Http/UsersController.ts:6–36  ·  view source on GitHub ↗
({ params, response, auth, bouncer }: HttpContextContract)

Source from the content-addressed store, hash-verified

4
5export default class UsersController {
6 public async destroy({ params, response, auth, bouncer }: HttpContextContract) {
7 try {
8 await auth.use('api').authenticate()
9
10 const user = await User.find(params.id)
11
12 if (!user) {
13 return response.notFound({
14 error: { message: 'User not found' },
15 })
16 }
17
18 const authenticatedUser = auth.user!
19
20 if (await bouncer.denies('deleteUser' as never, authenticatedUser, user)) {
21 return response.unauthorized({
22 error: { message: 'You are not allowed to delete this user' },
23 })
24 }
25
26 await user.delete()
27
28 return response.noContent()
29 } catch (error) {
30 console.log(error)
31 Logger.error('Failed to delete user: ', { error: error.message })
32 return response.badRequest({
33 error: { message: 'Unable delete the user' },
34 })
35 }
36 }
37}

Callers

nothing calls this directly

Calls 1

authenticateMethod · 0.45

Tested by

no test coverage detected