22 lines
689 B
TypeScript
22 lines
689 B
TypeScript
import type { HttpContext } from '@adonisjs/core/http'
|
|
import { loginValidator } from '#validators/Auth/login'
|
|
import User from '#models/user'
|
|
|
|
export default class SessionController {
|
|
async create({ inertia }: HttpContext) {
|
|
return inertia.render('auth/login', {})
|
|
}
|
|
|
|
async store({ request, auth, response }: HttpContext) {
|
|
const payload = await request.validateUsing(loginValidator)
|
|
const user = await User.verifyCredentials(payload.email, payload.password)
|
|
await auth.use('web').login(user)
|
|
response.redirect('/computers')
|
|
}
|
|
|
|
async destroy({ auth, response }: HttpContext) {
|
|
await auth.use('web').logout()
|
|
response.redirect('/auth/login')
|
|
}
|
|
}
|