This repository has been archived on 2024-11-10. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
enzos-events/app/Controllers/Http/AuthController.ts
2023-07-04 01:08:21 +02:00

33 lines
971 B
TypeScript

import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext'
import { schema } from '@ioc:Adonis/Core/Validator'
import Logger from '@ioc:Adonis/Core/Logger'
export default class AuthController {
public async login({ auth, request, response }: HttpContextContract){
Logger.info("entering login")
Logger.info(JSON.stringify(request.all()))
const loginSchema = schema.create({
username: schema.string({trim: true}),
password: schema.string()
})
const { username, password } = await request.validate({
schema: loginSchema,
messages: {
required: 'This field is required'
}
})
await auth.attempt(username, password)
response.redirect().toRoute('events.index')
}
public async logout({ auth, response }: HttpContextContract) {
await auth.logout()
response.redirect('/login')
}
}