Merge branch 'preload-data' into 'develop'
[akkoma] / lib / pleroma / web / preload / user.ex
1 # Pleroma: A lightweight social networking server
2 # Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
3 # SPDX-License-Identifier: AGPL-3.0-only
4
5 defmodule Pleroma.Web.Preload.Providers.User do
6 alias Pleroma.Web.MastodonAPI.AccountView
7 alias Pleroma.Web.Preload.Providers.Provider
8
9 @behaviour Provider
10 @account_url :"/api/v1/accounts"
11
12 @impl Provider
13 def generate_terms(%{user: user}) do
14 build_accounts_tag(%{}, user)
15 end
16
17 def generate_terms(_params), do: %{}
18
19 def build_accounts_tag(acc, nil), do: acc
20
21 def build_accounts_tag(acc, user) do
22 account_data = AccountView.render("show.json", %{user: user, for: user})
23 Map.put(acc, @account_url, account_data)
24 end
25 end