1 defmodule Pleroma.User.Info do
6 field :banner, :map, default: %{}
7 field :source_data, :map, default: %{}
8 field :note_count, :integer, default: 0
9 field :follower_count, :integer, default: 0
10 field :locked, :boolean, default: false
11 field :default_scope, :string, default: "public"
12 field :blocks, {:array, :string}, default: []
13 field :domain_blocks, {:array, :string}, default: []
14 field :deactivated, :boolean, default: false
15 field :no_rich_text, :boolean, default: false
16 field :ap_enabled, :boolean, default: false
17 field :keys, :map, default: %{}
20 def set_activation_status(info, deactivated) do
21 params = %{deactivated: deactivated}
24 |> cast(params, [:deactivated])
25 |> validate_required([:deactivated])
28 def add_to_note_count(info, number) do
29 params = %{note_count: Enum.max([0, info.note_count + number])}
32 |> cast(params, [:note_count])
33 |> validate_required([:note_count])