0c9706166dcf9edb589992ff43836e97ebfea750
[anni] / lib / pleroma / web / mastodon_api / views / filter_view.ex
1 # Pleroma: A lightweight social networking server
2 # Copyright © 2017-2022 Pleroma Authors <https://pleroma.social/>
3 # SPDX-License-Identifier: AGPL-3.0-only
4
5 defmodule Pleroma.Web.MastodonAPI.FilterView do
6   use Pleroma.Web, :view
7   alias Pleroma.Web.CommonAPI.Utils
8   alias Pleroma.Web.MastodonAPI.FilterView
9
10   def render("index.json", %{filters: filters}) do
11     render_many(filters, FilterView, "show.json")
12   end
13
14   def render("show.json", %{filter: filter}) do
15     expires_at =
16       if filter.expires_at do
17         Utils.to_masto_date(filter.expires_at)
18       else
19         nil
20       end
21
22     %{
23       id: to_string(filter.filter_id),
24       phrase: filter.phrase,
25       context: filter.context,
26       expires_at: expires_at,
27       irreversible: filter.hide,
28       whole_word: filter.whole_word
29     }
30   end
31 end