From eaaae48d2c6e6067c98ea9807ba3aabf57ce3dde Mon Sep 17 00:00:00 2001 From: Lanius Trolling Date: Tue, 9 Apr 2024 11:50:48 -0400 Subject: [PATCH] Various fixes --- src/jvmMain/kotlin/info/mechyrdia/data/views_files.kt | 4 ++-- src/jvmMain/kotlin/info/mechyrdia/lore/views_error.kt | 4 +++- src/jvmMain/resources/static/admin.css | 1 + 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/jvmMain/kotlin/info/mechyrdia/data/views_files.kt b/src/jvmMain/kotlin/info/mechyrdia/data/views_files.kt index bca1901..a8801cb 100644 --- a/src/jvmMain/kotlin/info/mechyrdia/data/views_files.kt +++ b/src/jvmMain/kotlin/info/mechyrdia/data/views_files.kt @@ -200,7 +200,7 @@ private val textExtensions = listOf( "", "groovy", "html", - "js.map", + "map", "mtl", "obj", "old", @@ -212,7 +212,7 @@ suspend fun ApplicationCall.adminPreviewFile(path: StoragePath) { attributes.put(PageDoNotCacheAttributeKey, true) val stat = FileStorage.instance.statFile(path) ?: return respond(HttpStatusCode.NotFound) - val extension = path.elements.last().substringAfter('.', "") + val extension = path.elements.last().substringAfterLast('.', "") val type = if (extension in textExtensions) ContentType.Text.Plain else ContentType.defaultForFileExtension(extension) val result = FileStorage.instance.readFile(path) { producer -> respondBytesWriter(contentType = type, contentLength = stat.size, producer = producer) diff --git a/src/jvmMain/kotlin/info/mechyrdia/lore/views_error.kt b/src/jvmMain/kotlin/info/mechyrdia/lore/views_error.kt index cb7a837..3d4bded 100644 --- a/src/jvmMain/kotlin/info/mechyrdia/lore/views_error.kt +++ b/src/jvmMain/kotlin/info/mechyrdia/lore/views_error.kt @@ -1,5 +1,7 @@ package info.mechyrdia.lore +import info.mechyrdia.OwnerNationId +import info.mechyrdia.data.currentNation import info.mechyrdia.route.CsrfProtectedResourcePayload import info.mechyrdia.route.Root import info.mechyrdia.route.href @@ -14,7 +16,7 @@ suspend fun ApplicationCall.errorPage(title: String, body: FlowContent.() -> Uni h1 { +title } body() } - else if (request.uri.startsWith("/admin/vfs")) + else if (request.uri.startsWith("/admin/vfs") && currentNation()?.id == OwnerNationId) adminPage(title) { div(classes = "message") { h1 { +title } diff --git a/src/jvmMain/resources/static/admin.css b/src/jvmMain/resources/static/admin.css index 842cae4..e821bc8 100644 --- a/src/jvmMain/resources/static/admin.css +++ b/src/jvmMain/resources/static/admin.css @@ -37,6 +37,7 @@ html { padding: 0; font-family: 'JetBrains Mono', monospace; + font-size: 125%; } body { -- 2.25.1