projects
/
akkoma
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Increment replies_count on replies (MastoAPI)
[akkoma]
/
lib
/
pleroma
/
web
/
mastodon_api
/
views
/
account_view.ex
diff --git
a/lib/pleroma/web/mastodon_api/views/account_view.ex
b/lib/pleroma/web/mastodon_api/views/account_view.ex
index 555383503605bcbe2eb29308a46db6fe0870bd00..b5f3bbb9d0c4a291d67a306430232139faed9f13 100644
(file)
--- a/
lib/pleroma/web/mastodon_api/views/account_view.ex
+++ b/
lib/pleroma/web/mastodon_api/views/account_view.ex
@@
-1,14
+1,15
@@
# Pleroma: A lightweight social networking server
# Pleroma: A lightweight social networking server
-# Copyright © 2017-201
8
Pleroma Authors <https://pleroma.social/>
+# Copyright © 2017-201
9
Pleroma Authors <https://pleroma.social/>
# SPDX-License-Identifier: AGPL-3.0-only
defmodule Pleroma.Web.MastodonAPI.AccountView do
use Pleroma.Web, :view
# SPDX-License-Identifier: AGPL-3.0-only
defmodule Pleroma.Web.MastodonAPI.AccountView do
use Pleroma.Web, :view
+
+ alias Pleroma.HTML
alias Pleroma.User
alias Pleroma.User
- alias Pleroma.Web.MastodonAPI.AccountView
alias Pleroma.Web.CommonAPI.Utils
alias Pleroma.Web.CommonAPI.Utils
+ alias Pleroma.Web.MastodonAPI.AccountView
alias Pleroma.Web.MediaProxy
alias Pleroma.Web.MediaProxy
- alias Pleroma.HTML
def render("accounts.json", %{users: users} = opts) do
users
def render("accounts.json", %{users: users} = opts) do
users
@@
-31,7
+32,11
@@
defmodule Pleroma.Web.MastodonAPI.AccountView do
}
end
}
end
- def render("relationship.json", %{user: user, target: target}) do
+ def render("relationship.json", %{user: nil, target: _target}) do
+ %{}
+ end
+
+ def render("relationship.json", %{user: %User{} = user, target: %User{} = target}) do
follow_activity = Pleroma.Web.ActivityPub.Utils.fetch_latest_follow(user, target)
requested =
follow_activity = Pleroma.Web.ActivityPub.Utils.fetch_latest_follow(user, target)
requested =
@@
-46,11
+51,11
@@
defmodule Pleroma.Web.MastodonAPI.AccountView do
following: User.following?(user, target),
followed_by: User.following?(target, user),
blocking: User.blocks?(user, target),
following: User.following?(user, target),
followed_by: User.following?(target, user),
blocking: User.blocks?(user, target),
- muting:
false
,
+ muting:
User.mutes?(user, target)
,
muting_notifications: false,
requested: requested,
domain_blocking: false,
muting_notifications: false,
requested: requested,
domain_blocking: false,
- showing_reblogs:
false
,
+ showing_reblogs:
User.showing_reblogs?(user, target)
,
endorsed: false
}
end
endorsed: false
}
end
@@
-84,6
+89,8
@@
defmodule Pleroma.Web.MastodonAPI.AccountView do
bio = HTML.filter_tags(user.bio, User.html_filter_policy(opts[:for]))
bio = HTML.filter_tags(user.bio, User.html_filter_policy(opts[:for]))
+ relationship = render("relationship.json", %{user: opts[:for], target: user})
+
%{
id: to_string(user.id),
username: username_from_nickname(user.nickname),
%{
id: to_string(user.id),
username: username_from_nickname(user.nickname),
@@
-112,7
+119,10
@@
defmodule Pleroma.Web.MastodonAPI.AccountView do
# Pleroma extension
pleroma: %{
confirmation_pending: user_info.confirmation_pending,
# Pleroma extension
pleroma: %{
confirmation_pending: user_info.confirmation_pending,
- tags: user.tags
+ tags: user.tags,
+ is_moderator: user.info.is_moderator,
+ is_admin: user.info.is_admin,
+ relationship: relationship
}
}
end
}
}
end