From b0bd7196274f428afce7ba9278860378816aa33c Mon Sep 17 00:00:00 2001 From: Chaoscaot Date: Sun, 2 Mar 2025 09:08:49 +0100 Subject: [PATCH] Backend Fixes --- WebsiteBackend/src/de/steamwar/routes/Data.kt | 3 ++- WebsiteBackend/src/de/steamwar/routes/Events.kt | 2 +- WebsiteBackend/src/de/steamwar/routes/UserPerms.kt | 5 +++-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/WebsiteBackend/src/de/steamwar/routes/Data.kt b/WebsiteBackend/src/de/steamwar/routes/Data.kt index 103fb044..0a2dd3ae 100644 --- a/WebsiteBackend/src/de/steamwar/routes/Data.kt +++ b/WebsiteBackend/src/de/steamwar/routes/Data.kt @@ -45,7 +45,7 @@ data class ResponseSchematicType(val name: String, val db: String) @Serializable data class ResponseUser(val name: String, val uuid: String, val prefix: String, val perms: List) { - constructor(user: SteamwarUser) : this(user.userName, user.uuid.toString(), user.prefix().chatPrefix, user.perms().map { it.name }) { + constructor(user: SteamwarUser) : this(user.userName, user.uuid.toString(), user.prefix().chatPrefix, user.perms().filter { !it.name.startsWith("PREFIX_") }.map { it.name }) { synchronized(cache) { cache[user.id] = this } @@ -149,5 +149,6 @@ fun Route.configureDataRoutes() { inline fun catchException(yield: () -> T): T? = try { yield() } catch (e: Exception) { + e.printStackTrace() null } diff --git a/WebsiteBackend/src/de/steamwar/routes/Events.kt b/WebsiteBackend/src/de/steamwar/routes/Events.kt index d1edcf07..d40cdd3b 100644 --- a/WebsiteBackend/src/de/steamwar/routes/Events.kt +++ b/WebsiteBackend/src/de/steamwar/routes/Events.kt @@ -215,7 +215,7 @@ fun Route.configureEventsRoute() { } } event.update(eventName, deadline, start, end, schemType, maxTeamMembers, publicSchemsOnly) - call.respond(ResponseEvent(event)) + call.respond(ResponseEvent(Event.get(event.eventID))) } delete { val id = call.parameters["id"]?.toIntOrNull() diff --git a/WebsiteBackend/src/de/steamwar/routes/UserPerms.kt b/WebsiteBackend/src/de/steamwar/routes/UserPerms.kt index 2befc916..c1558787 100644 --- a/WebsiteBackend/src/de/steamwar/routes/UserPerms.kt +++ b/WebsiteBackend/src/de/steamwar/routes/UserPerms.kt @@ -79,7 +79,7 @@ fun Route.configureUserPerms() { call.respond(RespondUserPermsPrefix(RespondPrefix(prefix.name, prefixs.colorCode, prefixs.chatPrefix), perms)) } put("/prefix/{prefix}") { - val (user, prefix) = call.receivePermission("prefix") ?: return@put + val (user, prefix) = call.receivePermission("prefix", isPrefix = true) ?: return@put user.perms().filter { it.name.startsWith("PREFIX_") }.forEach { UserPerm.removePerm(user, it) @@ -121,7 +121,8 @@ suspend fun ApplicationCall.receivePermission(fieldName: String = "perm", isPref val perm = parameters[fieldName] val permission = UserPerm.entries.find { it.name == perm } - if (perm == null || perm.startsWith("PREFIX_") == isPrefix || permission == null) { + if (perm == null || perm.startsWith("PREFIX_") != isPrefix || permission == null) { + println(perm) respond(HttpStatusCode.BadRequest) return null }