summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/pleroma/user.ex6
-rw-r--r--lib/pleroma/user/info.ex7
2 files changed, 9 insertions, 4 deletions
diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex
index 565218b4c..03fe2f1d4 100644
--- a/lib/pleroma/user.ex
+++ b/lib/pleroma/user.ex
@@ -87,7 +87,7 @@ defmodule Pleroma.User do
info_cng = User.Info.remote_user_creation(%User.Info{}, params[:info])
changes =
- %User{info: %{}}
+ %User{}
|> cast(params, [:bio, :name, :ap_id, :nickname, :avatar])
|> validate_required([:name, :ap_id])
|> unique_constraint(:nickname)
@@ -718,7 +718,7 @@ defmodule Pleroma.User do
user
else
changes =
- %User{info: %{}}
+ %User{info: %User.Info{}}
|> cast(%{}, [:ap_id, :nickname, :local])
|> put_change(:ap_id, relay_uri)
|> put_change(:nickname, nil)
@@ -763,9 +763,9 @@ defmodule Pleroma.User do
data =
data
|> Map.put(:name, blank?(data[:name]) || data[:nickname])
- |> Map.put(:info, data[:info] || %{})
cs = User.remote_user_creation(data)
+
Repo.insert(cs, on_conflict: :replace_all, conflict_target: :nickname)
end
diff --git a/lib/pleroma/user/info.ex b/lib/pleroma/user/info.ex
index 48f3a4d4a..7d5df34ba 100644
--- a/lib/pleroma/user/info.ex
+++ b/lib/pleroma/user/info.ex
@@ -89,7 +89,12 @@ defmodule Pleroma.User.Info do
def remote_user_creation(info, params) do
info
- |> cast(params, [:source_data])
+ |> cast(params, [
+ :ap_enabled,
+ :source_data,
+ :banner,
+ :locked
+ ])
end
# Receives data from user_data_from_user_object