Shorten names in links.

This commit is contained in:
Roger Braun 2017-05-30 14:26:31 +02:00
parent fb78773112
commit c6aa60c829
2 changed files with 3 additions and 2 deletions

View File

@ -38,7 +38,8 @@ def add_user_links(text, mentions) do
end)
Enum.reduce(mentions, step_one, fn ({match, %User{ap_id: ap_id}, uuid}, text) ->
String.replace(text, uuid, "<a href='#{ap_id}'>#{match}</a>")
short_match = String.split(match, "@") |> tl() |> hd()
String.replace(text, uuid, "<a href='#{ap_id}'>@#{short_match}</a>")
end)
end

View File

@ -263,7 +263,7 @@ test "it adds user links to an existing text" do
archaeme_remote = insert(:user, %{nickname: "archaeme@archae.me"})
mentions = TwitterAPI.parse_mentions(text)
expected_text = "<a href='#{gsimg.ap_id}'>@gsimg</a> According to <a href='#{archaeme.ap_id}'>@archaeme</a>, that is @daggsy. Also hello <a href='#{archaeme_remote.ap_id}'>@archaeme@archae.me</a>"
expected_text = "<a href='#{gsimg.ap_id}'>@gsimg</a> According to <a href='#{archaeme.ap_id}'>@archaeme</a>, that is @daggsy. Also hello <a href='#{archaeme_remote.ap_id}'>@archaeme</a>"
assert Utils.add_user_links(text, mentions) == expected_text
end