Merge branch 'develop' of ssh.gitgud.io:lambadalambda/pleroma into feature/follow...
[akkoma] / lib / pleroma / web / twitter_api / representers / user_representer.ex
1 defmodule Pleroma.Web.TwitterAPI.Representers.UserRepresenter do
2 use Pleroma.Web.TwitterAPI.Representers.BaseRepresenter
3
4 alias Pleroma.User
5
6 def to_map(user, opts) do
7 image = case user.avatar do
8 %{"url" => [%{"href" => href} | _]} -> href
9 _ -> "https://placehold.it/48x48"
10 end
11
12 following = if opts[:for] do
13 User.following?(opts[:for], user)
14 else
15 false
16 end
17
18 user_info = User.user_info(user)
19
20 map = %{
21 "id" => user.id,
22 "name" => user.name,
23 "screen_name" => user.nickname,
24 "description" => user.bio,
25 "following" => following,
26 # Fake fields
27 "favourites_count" => 0,
28 "statuses_count" => user_info[:note_count],
29 "friends_count" => user_info[:following_count],
30 "followers_count" => user_info[:follower_count],
31 "profile_image_url" => image,
32 "profile_image_url_https" => image,
33 "profile_image_url_profile_size" => image,
34 "profile_image_url_original" => image,
35 "rights" => %{}
36 }
37
38 map
39 end
40 end