5af439c9d6c0153ec74cf06b2745c531de8409d2
[akkoma] / lib / pleroma / web / ostatus / user_representer.ex
1 defmodule Pleroma.Web.OStatus.UserRepresenter do
2 alias Pleroma.User
3 def to_simple_form(user) do
4 ap_id = to_charlist(user.ap_id)
5 nickname = to_charlist(user.nickname)
6 name = to_charlist(user.name)
7 bio = to_charlist(user.bio)
8 avatar_url = to_charlist(User.avatar_url(user))
9 banner = if banner_url = User.banner_url(user) do
10 [{:link, [rel: 'header', href: banner_url], []}]
11 else
12 []
13 end
14
15 ap_enabled = if user.local do
16 [{:ap_enabled, ['true']}]
17 else
18 []
19 end
20
21 [
22 {:id, [ap_id]},
23 {:"activity:object", ['http://activitystrea.ms/schema/1.0/person']},
24 {:uri, [ap_id]},
25 {:"poco:preferredUsername", [nickname]},
26 {:"poco:displayName", [name]},
27 {:"poco:note", [bio]},
28 {:summary, [bio]},
29 {:name, [nickname]},
30 {:link, [rel: 'avatar', href: avatar_url], []}
31 ] ++ banner ++ ap_enabled
32 end
33 end