forked from SteamWar/SteamWar
Fixes...
This commit is contained in:
@@ -78,80 +78,6 @@ fun Route.configureAuthRoutes() {
|
||||
mustAuth = true
|
||||
}
|
||||
|
||||
get {
|
||||
val auth = call.principal<SWAuthPrincipal>()
|
||||
|
||||
if(auth == null) {
|
||||
call.respond(HttpStatusCode.InternalServerError)
|
||||
return@get
|
||||
}
|
||||
|
||||
call.respond(Token.listUser(auth.user).map { ResponseToken(it) })
|
||||
}
|
||||
|
||||
post {
|
||||
val auth = call.principal<SWAuthPrincipal>()
|
||||
|
||||
if(auth == null) {
|
||||
call.respond(HttpStatusCode.InternalServerError)
|
||||
return@post
|
||||
}
|
||||
|
||||
val request = call.receive<CreateTokenRequest>()
|
||||
|
||||
if(request.name.length > 32) {
|
||||
call.respond(HttpStatusCode.BadRequest, ResponseError("Name too long", "name_too_long"))
|
||||
return@post
|
||||
}
|
||||
|
||||
if(request.name.length < 3) {
|
||||
call.respond(HttpStatusCode.BadRequest, ResponseError("Name too short", "name_too_short"))
|
||||
return@post
|
||||
}
|
||||
|
||||
if(!auth.user.verifyPassword(request.password)) {
|
||||
call.respond(HttpStatusCode.BadRequest, ResponseError("Invalid password", "invalid_password"))
|
||||
return@post
|
||||
}
|
||||
|
||||
val token = Token.createToken(request.name, auth.user)
|
||||
|
||||
call.respond(AuthTokenResponse(token))
|
||||
}
|
||||
|
||||
route("/{id}") {
|
||||
delete {
|
||||
val auth = call.principal<SWAuthPrincipal>()
|
||||
|
||||
if(auth == null) {
|
||||
call.respond(HttpStatusCode.InternalServerError)
|
||||
return@delete
|
||||
}
|
||||
|
||||
val id = call.parameters["id"]?.toIntOrNull()
|
||||
|
||||
if(id == null) {
|
||||
call.respond(HttpStatusCode.BadRequest)
|
||||
return@delete
|
||||
}
|
||||
|
||||
val token = Token.get(id)
|
||||
|
||||
if(token == null) {
|
||||
call.respond(HttpStatusCode.NotFound)
|
||||
return@delete
|
||||
}
|
||||
|
||||
if(token.owner != auth.user) {
|
||||
call.respond(HttpStatusCode.Forbidden)
|
||||
return@delete
|
||||
}
|
||||
|
||||
token.delete()
|
||||
call.respond(HttpStatusCode.OK)
|
||||
}
|
||||
}
|
||||
|
||||
post("/logout") {
|
||||
val auth = call.principal<SWAuthPrincipal>()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user