diff options
| -rw-r--r-- | lib/pleroma/web/twitter_api/utils.ex | 11 | ||||
| -rw-r--r-- | test/web/twitter_api/twitter_api_utils_test.exs | 6 | 
2 files changed, 14 insertions, 3 deletions
| diff --git a/lib/pleroma/web/twitter_api/utils.ex b/lib/pleroma/web/twitter_api/utils.ex index cd7e04ca1..055588031 100644 --- a/lib/pleroma/web/twitter_api/utils.ex +++ b/lib/pleroma/web/twitter_api/utils.ex @@ -9,10 +9,19 @@ defmodule Pleroma.Web.TwitterAPI.Utils do      end)    end +  defp shortname(name) do +    if String.length(name) < 30 do +      name +    else +      String.slice(name, 0..30) <> "…" +    end +  end +    def add_attachments(text, attachments) do      attachment_text = Enum.map(attachments, fn        (%{"url" => [%{"href" => href} | _]}) -> -        "<a href=\"#{href}\" class='attachment'>#{Path.basename(href)}</a>" +        name = URI.decode(Path.basename(href)) +        "<a href=\"#{href}\" class='attachment'>#{shortname(name)}</a>"        _ -> ""      end)      Enum.join([text | attachment_text], "<br>\n") diff --git a/test/web/twitter_api/twitter_api_utils_test.exs b/test/web/twitter_api/twitter_api_utils_test.exs index 49818afed..ff03414d6 100644 --- a/test/web/twitter_api/twitter_api_utils_test.exs +++ b/test/web/twitter_api/twitter_api_utils_test.exs @@ -3,12 +3,14 @@ defmodule Pleroma.Web.TwitterAPI.UtilsTest do    use Pleroma.DataCase    test "it adds attachment links to a given text and attachment set" do +    name = "Sakura%20Mana%20%E2%80%93%20Turned%20on%20by%20a%20Senior%20OL%20with%20a%20Temptating%20Tight%20Skirt-s%20Full%20Hipline%20and%20Panty%20Shot-%20Beautiful%20Thick%20Thighs-%20and%20Erotic%20Ass-%20-2015-%20--%20Oppaitime%208-28-2017%206-50-33%20PM.png" +      attachment = %{ -      "url" => [%{"href" => "http://heise.de/i\"m a boy.png"}] +      "url" => [%{"href" => name}]      }      res = Utils.add_attachments("", [attachment]) -    assert res == "<br>\n<a href=\"http://heise.de/i\"m a boy.png\" class='attachment'>i\"m a boy.png</a>" +    assert res == "<br>\n<a href=\"#{name}\" class='attachment'>Sakura Mana – Turned on by a Se…</a>"    end  end | 
