Merge branch 'feature/article-support' into 'develop'
[akkoma] / lib / pleroma / web / mastodon_api / views / status_view.ex
index 39abb4c6b4cfc6951bbca5205c4252e7aed30c6a..4c20581d6239440f3e52b2a12ca9ee23f44d7d48 100644 (file)
@@ -127,7 +127,7 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do
       in_reply_to_id: reply_to && to_string(reply_to.id),
       in_reply_to_account_id: reply_to_user && to_string(reply_to_user.id),
       reblog: nil,
-      content: HtmlSanitizeEx.basic_html(object["content"]),
+      content: render_content(object),
       created_at: created_at,
       reblogs_count: announcement_count,
       favourites_count: like_count,
@@ -206,4 +206,21 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do
         "direct"
     end
   end
+
+  def render_content(%{"type" => "Article"} = object) do
+    summary = object["name"]
+
+    content =
+      if !!summary and summary != "" do
+        "<p><a href=\"#{object["url"]}\">#{summary}</a></p>#{object["content"]}"
+      else
+        object["content"]
+      end
+
+    HtmlSanitizeEx.basic_html(content)
+  end
+
+  def render_content(object) do
+    HtmlSanitizeEx.basic_html(object["content"])
+  end
 end