Merge branch 'oauth2' into 'develop'
[akkoma] / lib / pleroma / web / mastodon_api / views / account_view.ex
1 defmodule Pleroma.Web.MastodonAPI.AccountView do
2 use Pleroma.Web, :view
3 alias Pleroma.User
4
5 defp image_url(%{"url" => [ %{ "href" => href } | t ]}), do: href
6 defp image_url(_), do: nil
7
8 def render("account.json", %{user: user}) do
9 image = User.avatar_url(user)
10 user_info = User.user_info(user)
11
12 header = image_url(user.info["banner"]) || "https://placehold.it/700x335"
13
14 %{
15 id: user.id,
16 username: user.nickname,
17 acct: user.nickname,
18 display_name: user.name,
19 locked: false,
20 created_at: user.inserted_at,
21 followers_count: user_info.follower_count,
22 following_count: user_info.following_count,
23 statuses_count: user_info.note_count,
24 note: user.bio,
25 url: user.ap_id,
26 avatar: image,
27 avatar_static: image,
28 header: header,
29 header_static: header
30 }
31 end
32
33 def render("mention.json", %{user: user}) do
34 %{
35 id: user.id,
36 acct: user.nickname,
37 username: user.nickname,
38 url: user.ap_id
39 }
40 end
41 end