diff options
author | Alex Gleason <alex@alexgleason.me> | 2022-01-28 16:53:40 +0000 |
---|---|---|
committer | Alex Gleason <alex@alexgleason.me> | 2022-01-28 16:53:40 +0000 |
commit | 64944c164f8730c59c3a55e6c2e4b9e444254a9d (patch) | |
tree | f66f8c206eac34f0b5eeb79b4ca770fbce251684 /lib | |
parent | a146f6acab5127e9dd7a70ac9dea9bf35a57721e (diff) | |
parent | 3bf257171f546ef84993b08851c01cf064309017 (diff) | |
download | pleroma-64944c164f8730c59c3a55e6c2e4b9e444254a9d.tar.gz |
Merge branch 'mention-mrf-md' into 'develop'
ForceMentionsInContent: improve display of Markdown posts
See merge request pleroma/pleroma!3625
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/web/activity_pub/mrf/force_mentions_in_content.ex | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/lib/pleroma/web/activity_pub/mrf/force_mentions_in_content.ex b/lib/pleroma/web/activity_pub/mrf/force_mentions_in_content.ex index 715771d9d..255910b2f 100644 --- a/lib/pleroma/web/activity_pub/mrf/force_mentions_in_content.ex +++ b/lib/pleroma/web/activity_pub/mrf/force_mentions_in_content.ex @@ -103,10 +103,23 @@ defmodule Pleroma.Web.ActivityPub.MRF.ForceMentionsInContent do end end) - content = + recipients_inline = if added_mentions != "", - do: "<span class=\"recipients-inline\">#{added_mentions}</span>" <> content, - else: content + do: "<span class=\"recipients-inline\">#{added_mentions}</span>", + else: "" + + content = + cond do + # For Markdown posts, insert the mentions inside the first <p> tag + recipients_inline != "" && String.starts_with?(content, "<p>") -> + "<p>" <> recipients_inline <> String.trim_leading(content, "<p>") + + recipients_inline != "" -> + recipients_inline <> content + + true -> + content + end {:ok, put_in(object["object"]["content"], content)} end |