Replace Sone provider interface with Kotlin version
[Sone.git] / src / main / kotlin / net / pterodactylus / sone / web / ajax / CreatePostAjaxPage.kt
index ec65b55..868e990 100644 (file)
@@ -2,6 +2,7 @@ package net.pterodactylus.sone.web.ajax
 
 import net.pterodactylus.sone.data.Sone
 import net.pterodactylus.sone.text.TextFilter
+import net.pterodactylus.sone.utils.asOptional
 import net.pterodactylus.sone.utils.emptyToNull
 import net.pterodactylus.sone.utils.headers
 import net.pterodactylus.sone.utils.let
@@ -18,13 +19,13 @@ class CreatePostAjaxPage(webInterface: WebInterface) : LoggedInJsonPage("createP
                        request.parameters["text"].emptyToNull
                                        ?.let { TextFilter.filter(request.headers["Host"], it) }
                                        ?.let { text ->
-                                               val sender = request.parameters["sender"].emptyToNull?.let(core::getSone)?.orNull() ?: currentSone
-                                               val recipient = request.parameters["recipient"].let(core::getSone)
-                                               core.createPost(sender, recipient, text).let { post ->
+                                               val sender = request.parameters["sender"].emptyToNull?.let(core::getSone) ?: currentSone
+                                               val recipient = request.parameters["recipient"]?.let(core::getSone)
+                                               core.createPost(sender, recipient.asOptional(), text).let { post ->
                                                        createSuccessJsonObject().apply {
                                                                put("postId", post.id)
                                                                put("sone", sender.id)
-                                                               put("recipient", recipient.let(Sone::getId))
+                                                               put("recipient", recipient?.id)
                                                        }
                                                }
                                        } ?: createErrorJsonObject("text-required")