diff options
author | Alexander Strizhakov <alex.strizhakov@gmail.com> | 2020-06-29 15:25:57 +0300 |
---|---|---|
committer | Alexander Strizhakov <alex.strizhakov@gmail.com> | 2020-06-29 15:25:57 +0300 |
commit | 6512ef6879a5f857f02479da1bad7242e916d918 (patch) | |
tree | c187ddd7fa4622ec39af42da2bc31d0562e23617 | |
parent | 577da132da692a205bd8f3b454db8f9cf235a610 (diff) | |
download | pleroma-6512ef6879a5f857f02479da1bad7242e916d918.tar.gz |
excluding attachment links from RichMedia
-rw-r--r-- | lib/pleroma/html.ex | 2 | ||||
-rw-r--r-- | test/html_test.exs | 14 |
2 files changed, 15 insertions, 1 deletions
diff --git a/lib/pleroma/html.ex b/lib/pleroma/html.ex index d78c5f202..dc1b9b840 100644 --- a/lib/pleroma/html.ex +++ b/lib/pleroma/html.ex @@ -109,7 +109,7 @@ defmodule Pleroma.HTML do result = content |> Floki.parse_fragment!() - |> Floki.filter_out("a.mention,a.hashtag,a[rel~=\"tag\"]") + |> Floki.filter_out("a.mention,a.hashtag,a.attachment,a[rel~=\"tag\"]") |> Floki.attribute("a", "href") |> Enum.at(0) diff --git a/test/html_test.exs b/test/html_test.exs index 0a4b4ebbc..f8907c8b4 100644 --- a/test/html_test.exs +++ b/test/html_test.exs @@ -237,5 +237,19 @@ defmodule Pleroma.HTMLTest do assert {:ok, nil} = HTML.extract_first_external_url(object, object.data["content"]) end + + test "skips attachment links" do + user = insert(:user) + + {:ok, activity} = + CommonAPI.post(user, %{ + status: + "<a href=\"https://pleroma.gov/media/d24caa3a498e21e0298377a9ca0149a4f4f8b767178aacf837542282e2d94fb1.png?name=image.png\" class=\"attachment\">image.png</a>" + }) + + object = Object.normalize(activity) + + assert {:ok, nil} = HTML.extract_first_external_url(object, object.data["content"]) + end end end |