User: On registration, set `accepts_chat_messages` to true.
authorlain <lain@soykaf.club>
Fri, 3 Jul 2020 10:47:05 +0000 (12:47 +0200)
committerlain <lain@soykaf.club>
Fri, 3 Jul 2020 10:47:05 +0000 (12:47 +0200)
lib/pleroma/user.ex
test/user_test.exs

index 8a54546d6b0ad263cb7fc300ff61bbce94a57111..79e094a7951b3974499806b99260f9c2d044ed81 100644 (file)
@@ -138,6 +138,7 @@ defmodule Pleroma.User do
     field(:also_known_as, {:array, :string}, default: [])
     field(:inbox, :string)
     field(:shared_inbox, :string)
+    field(:accepts_chat_messages, :boolean, default: false)
 
     embeds_one(
       :notification_settings,
@@ -623,6 +624,7 @@ defmodule Pleroma.User do
   def register_changeset(struct, params \\ %{}, opts \\ []) do
     bio_limit = Pleroma.Config.get([:instance, :user_bio_length], 5000)
     name_limit = Pleroma.Config.get([:instance, :user_name_length], 100)
+    params = Map.put_new(params, :accepts_chat_messages, true)
 
     need_confirmation? =
       if is_nil(opts[:need_confirmation]) do
@@ -641,7 +643,8 @@ defmodule Pleroma.User do
       :nickname,
       :password,
       :password_confirmation,
-      :emoji
+      :emoji,
+      :accepts_chat_messages
     ])
     |> validate_required([:name, :nickname, :password, :password_confirmation])
     |> validate_confirmation(:password)
index 7126bb539adbbdd78abe84e3010e7ffcf6f83d3b..9788e09d9b24f5d74bace103993e53c6c6d5797a 100644 (file)
@@ -486,6 +486,15 @@ defmodule Pleroma.UserTest do
     }
     setup do: clear_config([:instance, :account_activation_required], true)
 
+    test "it sets the 'accepts_chat_messages' set to true" do
+      changeset = User.register_changeset(%User{}, @full_user_data)
+      assert changeset.valid?
+
+      {:ok, user} = Repo.insert(changeset)
+
+      assert user.accepts_chat_messages
+    end
+
     test "it creates unconfirmed user" do
       changeset = User.register_changeset(%User{}, @full_user_data)
       assert changeset.valid?