start adding of posts view

This commit is contained in:
2022-03-18 15:43:10 +06:00
parent 709e7a8583
commit 787f8d7526
4 changed files with 40 additions and 5 deletions
features/content
binary
server
src
jvmMain
kotlin
dev
inmo
postssystem
features
server
src
jvmMain
kotlin
dev
inmo
postssystem
features
content
text
server
src
jvmMain
kotlin
dev
inmo
postssystem
features
services/posts/client/src/commonMain/kotlin/dev/inmo/postssystem/services/posts/client/ui/posts_list

@ -3,13 +3,13 @@ package dev.inmo.postssystem.features.content.text.server
import com.benasher44.uuid.uuid4
import dev.inmo.micro_utils.repos.exposed.AbstractExposedCRUDRepo
import dev.inmo.micro_utils.repos.exposed.initTable
import dev.inmo.postssystem.features.content.common.ContentId
import dev.inmo.postssystem.features.content.common.RegisteredContent
import dev.inmo.postssystem.features.content.common.*
import dev.inmo.postssystem.features.content.server.storage.ServerContentStorage
import dev.inmo.postssystem.features.content.text.common.TextContent
import org.jetbrains.exposed.sql.*
import org.jetbrains.exposed.sql.statements.InsertStatement
import org.jetbrains.exposed.sql.statements.UpdateStatement
import org.jetbrains.exposed.sql.transactions.transaction
class TextServerContentStorage(
override val database: Database
@ -50,4 +50,19 @@ class TextServerContentStorage(
TextContent(get(textColumn))
)
}
override suspend fun getContentPreview(id: ContentId): RegisteredContent? = transaction(database) {
select { selectById(id) }.limit(1).firstOrNull() ?.let {
val text = it[textColumn]
val postfix = if (text.length > 1024) {
"..."
} else {
""
}
RegisteredContent(
id,
TextContent(text.take(1024) + postfix)
)
}
}
}