This is to model the ambiguous state of most users.
field(:also_known_as, {:array, :string}, default: [])
field(:inbox, :string)
field(:shared_inbox, :string)
- field(:accepts_chat_messages, :boolean, default: false)
+ field(:accepts_chat_messages, :boolean, default: nil)
embeds_one(
:notification_settings,
defmodule Pleroma.Repo.Migrations.AddChatAcceptanceToUsers do
use Ecto.Migration
- def change do
+ def up do
alter table(:users) do
- add(:accepts_chat_messages, :boolean, nullable: false, default: false)
+ add(:accepts_chat_messages, :boolean, nullable: true)
end
- # Looks stupid but makes the update much faster
- execute("update users set accepts_chat_messages = local where local = true")
+ execute("update users set accepts_chat_messages = true where local = true")
+ end
+
+ def down do
+ alter table(:users) do
+ remove(:accepts_chat_messages)
+ end
end
end