diff options
author | kaniini <nenolod@gmail.com> | 2019-01-19 07:36:58 +0000 |
---|---|---|
committer | kaniini <nenolod@gmail.com> | 2019-01-19 07:36:58 +0000 |
commit | 651ce1c97bf0754f170032b47abcb19ac0794e74 (patch) | |
tree | b62cb31ac6f8c42230c99e522c0f7d2f042f26d6 /lib/pleroma/user.ex | |
parent | 98d9dcd509ab6823e38b3ddbce1f5fc4f3d5a82c (diff) | |
parent | 65bb9b2fba7560df7331645db9839305c47dad11 (diff) | |
download | pleroma-651ce1c97bf0754f170032b47abcb19ac0794e74.tar.gz |
Merge branch '491_full_mentions_in_user_bio' into 'develop'
[#491] Made user bio preserve full nicknames (nick@host)
Closes #491
See merge request pleroma/pleroma!676
Diffstat (limited to 'lib/pleroma/user.ex')
-rw-r--r-- | lib/pleroma/user.ex | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index c91f2d31a..1db1c53cb 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -447,8 +447,7 @@ defmodule Pleroma.User do def get_by_nickname(nickname) do Repo.get_by(User, nickname: nickname) || if Regex.match?(~r(@#{Pleroma.Web.Endpoint.host()})i, nickname) do - [local_nickname, _] = String.split(nickname, "@") - Repo.get_by(User, nickname: local_nickname) + Repo.get_by(User, nickname: local_nickname(nickname)) end end @@ -997,7 +996,7 @@ defmodule Pleroma.User do end) bio - |> CommonUtils.format_input(mentions, tags, "text/plain") + |> CommonUtils.format_input(mentions, tags, "text/plain", user_links: [format: :full]) |> Formatter.emojify(emoji) end @@ -1048,6 +1047,16 @@ defmodule Pleroma.User do end end + def local_nickname(nickname_or_mention) do + nickname_or_mention + |> full_nickname() + |> String.split("@") + |> hd() + end + + def full_nickname(nickname_or_mention), + do: String.trim_leading(nickname_or_mention, "@") + def error_user(ap_id) do %User{ name: ap_id, |